Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ApacheCamel:向ThroweException语句添加参数_Java_Apache Camel_Custom Exceptions - Fatal编程技术网

Java ApacheCamel:向ThroweException语句添加参数

Java ApacheCamel:向ThroweException语句添加参数,java,apache-camel,custom-exceptions,Java,Apache Camel,Custom Exceptions,我有一个自定义异常类customException,调用它时需要三个参数(两个整数和字符串) 目前在camel.xml文件中,我有: <onException> <exception>org.apache.camel.http.common.HttpOperationFailedException</exception> <throwException exceptionType="package.path.of.customExce

我有一个自定义异常类customException,调用它时需要三个参数(两个整数和字符串)

目前在camel.xml文件中,我有:

<onException>
     <exception>org.apache.camel.http.common.HttpOperationFailedException</exception>
     <throwException exceptionType="package.path.of.customException" message="custom message" />
</onException>

org.apache.camel.http.common.HttpOperationFailedException

抛出异常时,我想要的特定变量为null。如何在Camel中设置该变量?有可能吗?

您可以使用自定义构造函数参数和属性值将异常定义为一个单独的bean,并从
通过异常引用它:

<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>

org.apache.camel.http.common.HttpOperationFailedException.HttpOperationFailedException

您可以将异常定义为一个具有自定义构造函数参数和属性值的单独bean,并从
throweexception
引用它:

<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>

org.apache.camel.http.common.HttpOperationFailedException.HttpOperationFailedException