XML 문서에서 값을 추출하려면 XPath 추출기를 사용하십시오.
<mulexml:xpath-extractor-transformer expression="/a:my/b:xpath/text()"/>
또한 useMule Expression Language 동적 XPath 식을 만들 수 있습니다
<expression-transformer mimeType="text/xml" evaluator="xpath" expression="//school/day[@date= #[function:datestamp:yyyy-MM-dd] ]/name
"/>
그러나이 복잡한 표현 다소 지저분한 얻을 수 있습니다, 그래서 dynamic XPath transformer 내 자신을 만들었습니다
<dx:dxpath expression="/b:team[name = $teamName]/b:player[b:name = $playerName]/b:goals/text()">
<dx:variable key="playerName" value="#[header:invocation:playerName]"/>
<dx:variable key="teamName" value="#[header:invocation:teamName]"/>
<!-- unlimited number of variables -->
</dx:dxpath>
눈에 다소 편합니다.
는 그런 다음 ericher와 흐름을 바꿈 :
<enricher target="#[variable:myData]">
<processor-chain>
<!-- your flow here -->
</processor-chain>
</enricher>
감사 토마스을이에 응답하는. 내가 XP에서 뮬 흐름을 사용하여 XML에서 값을 추출 할 수 있다는 것을 알고 있습니다. 그러나 내 XPATH 표현식은 값의 배열을 반환합니다. XPath 표현식의 끝에서 ".text"함수를 사용하여 값을 가져올 수 없습니다. 아래의 표현식을 사용하고 있습니다 :
user2324686