我使用的是3.2版。当soap服务从服务返回时,我想记录错误并强制执行全局异常。我试过用左
<test:component throwException="true" />
。虽然它确实强制执行Exception,但它也会在我的日志中生成大量消息(见下文)。我需要清理它或找到更好的方法来强制执行异常。
>>>>>>>>>>>>>>>>>>>>>>>>>THESE ARE UNWANTED MESSAGES>>>>>>>>>>>>>
INFO 2013-09-08 17:38:05,443 [msr-httpConnector.receiver.02] org.mule.tck.functional.FunctionalTestComponent:
********************************************************************************
* Message Received in service: BillingAccountProductAssociationRequest. *
* Content is: <soap:Envelope *
* xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><soap:Faul *
* t><faultc...[100 of 567] *
********************************************************************************
ERROR 2013-09-08 17:38:05,449 [msr-httpConnector.receiver.02] org.mule.exception.CatchMessagingExceptionStrategy:
********************************************************************************
Message : Functional Test Service Exception
Code : MULE_ERROR--2
--------------------------------------------------------------------------------
Exception stack is:
1. Functional Test Service Exception (org.mule.tck.exceptions.FunctionalTestException)
org.mule.tck.functional.FunctionalTestComponent:210 (http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/tck/exceptions/FunctionalTestException.html)
--------------------------------------------------------------------------------
Root Exception stack trace:
org.mule.tck.exceptions.FunctionalTestException: Functional Test Service Exception
at org.mule.tck.functional.FunctionalTestComponent.throwException(FunctionalTestComponent.java:210)
at org.mule.tck.functional.FunctionalTestComponent.onCall(FunctionalTestComponent.java:134)
at org.mule.model.resolvers.CallableEntryPointResolver.invoke(CallableEntryPointResolver.java:50)
+ 3 more (set debug level logging or '-Dmule.verbose.exceptions=true' for everything)
********************************************************************************
答案 0 :(得分:20)
您可以从Groovy脚本组件中抛出任何异常:
<scripting:component doc:name="Script">
<scripting:script engine="Groovy"><![CDATA[
throw new IllegalArgumentException('bad arg')
]]></scripting:script>
</scripting:component>