2013-08-02 1 views
0

나는 변수는

내가 내 XPath 식에 변수 productIdvar의 값을 사용하려면,

의 잘 들어오는 로그인에
<set-variable variableName="productIdvar" value="#[xpath://productId]" doc:name="Variable" /> 

로 설정 한

<when expression="//*[local-name()='itemid']=?" evaluator="xpath"> 

또는

<when expression="#[xpath://*[local-name()='itemid']=?]"> 

대신 무엇을 사용해야합니까? 변수 값을 얻으려면?

감사합니다. 라훌. 표현

답변

0
<when expression="#[xpath('//*[local-name()=itemid]') == productIdvar ]"> 

참고.

<when expression="#[xpath('//*[local-name()=\'itemid\']').text == productIdvar ]"> 

이렇게하면 xpath의 결과를 "productIdVar"변수와 비교할 수 있습니다.

희망이 도움이됩니다.

2

에 당신을 위해 일해야하는 다음 식을 itemid 주변에는 인용 부호가 없음을

+1

'productIdvar'는 DOM 텍스트 노드도 왜되지 않습니다 :'productIdvar.text'? –

+1

@David Dossot OP에서 제공하는 구성 코드에 따라 productIdVar는 String [xpath : // productId]입니다. 만약 xpath ('// productId')라면 productIdVar.text를 사용해야합니다. – user1760178

+0

당신이 맞습니다 : OP가 deprecated 표현식 구문을 사용하여'productIdvar'를 설정하고 있다는 것을 깨닫지 못했습니다. $ –

0

MEL이 조금 복잡해지면 XPath 변수를 동적으로 해결하는 XPath 변환기 인 mule-module-dxpath을 사용해보십시오.