2014-06-09 1 views
0

들어오는 XML 메시지가 Mule에서 제대로 구성되어 있는지 확인하는 가장 좋은 방법은 무엇입니까? ,Mule (3.4)의 올바른 형식의 XML을 확인하는 가장 좋은 방법

[Fatal Error] :1:1: Content is not allowed in prolog. 
java.lang.RuntimeException: org.mule.api.MuleRuntimeException: Failed to evaluate XPath expression: "fn:count(//event/@publicID)" 
at org.mule.module.xml.el.XPathFunction.call(XPathFunction.java:50) 

그리고 : 나는 심하게 형성 보낼 경우 예를 들어

(또는 비)이 선택에 XML은 뮬에서 오류가 발생하고 흐름이 정지 :

<choice> 
     <when expression="#[xpath('fn:count(//event/@publicID)') != 0]"> 
.... 

오류가 같다 또는 흐름에서이 오류를 포착하고 무시하는 방법이 있습니까? 난 예외 전략을 문서별로 당겨 봤는데 어디 없어.

덕분에, 제프

답변

0

당신은하지만 도움이 될 수 노새 XML 모듈에 편리한 필터있어, 지금이 문제를 해결 한 수 있습니다

<mulexml:is-xml-filter /> 

이 비/나쁜 XML을 필터링합니다. 당신은 DLQ로 라우팅 메시지 필터로 이것을 사용하거나 예외 등을 다음과 같이

이 또한 내가 그 예외를 잡을 수 던질 수 :

<choice-exception-strategy> 
    <catch-exception-strategy when="#[exception.causedBy(org.mule.api.MuleRuntimeException)]"> 
     <logger level="ERROR" message="not xml" /> 
    </catch-exception-strategy> 
</choice-exception-strategy> 
+0

안녕 라이언, 나는 그것을 발견하지 않았다. 위대한 답변과 캐치 예제에 대해서도 감사드립니다. 좋은! – geoffc

관련 문제