我有一个自定义异常类,customException,调用它时需要三个参数(两个整数和字符串)。
目前在我的camel.xml 文件中,我有:
<onException>
<exception>org.apache.camel.http.common.HttpOperationFailedException</exception>
<throwException exceptionType="package.path.of.customException" message="custom message" />
</onException>
当抛出异常时,我想要的特定变量为空。如何在 Camel 中设置该变量?这可能吗?
最佳答案
您可以将异常定义为具有自定义构造函数参数和属性值的单独 bean,并从 throwException
引用它:
<bean id="myException" class="package.path.of.customException">
<constructor-arg index="0" value="Custom message"/>
<property name="someIntProperty" value="10"/>
<property name="anotherIntProperty" value="#{null}"/>
</bean>
<camelContext ...>
<onException>
<exception>org.apache.camel.http.common.HttpOperationFailedException.HttpOperationFailedException</exception>
<throwException ref="myException" />
</onException>
</camelContext>
关于java - Apache Camel : Adding parameters to throwException statement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46040649/