当使用Camel-CXF rest端点时,如何指定JAXB注释类?
我有一个工作Camel CXF端点,在spring文件中定义如下:当使用Camel-CXF rest端点时,如何指定JAXB注释类?,jaxb,apache-camel,jax-rs,cxf,Jaxb,Apache Camel,Jax Rs,Cxf,我有一个工作Camel CXF端点,在spring文件中定义如下: <cxf:cxfEndpoint id="myEndpoint" address="myAddress" serviceClass="myServiceClass" loggingFeatureEnabled="true" skipFaultLogging="true" > 它工作正常,可以自动拾取我用@XmlRootElement和@xmlSeeAll注释的JAXB类。两个项目使用相同的端点定义,我想
<cxf:cxfEndpoint id="myEndpoint" address="myAddress"
serviceClass="myServiceClass"
loggingFeatureEnabled="true" skipFaultLogging="true" >
它工作正常,可以自动拾取我用@XmlRootElement和@xmlSeeAll注释的JAXB类。两个项目使用相同的端点定义,我想将一些类移动到它们相应的子项目中,因为我确实需要它们访问该子项目中的其他类。问题是,要做到这一点,我必须将它们从顶级类的@xmlseealas注释中删除。我已经试过了,在子项目中实例化端点时创建的JAXB上下文不知道这些类。解决这个问题最简单的方法是什么?起初,我认为很容易找到一个属性,该属性允许我指定一个或多个由CXF提供给JAXB上下文的附加类,但我不知道如何将CXF文档中提供的配置应用到Camel上下文。例如,在此处配置:
讨论如何使用“extraClass”属性:
<bean id="jaxb" class="org.apache.cxf.jaxrs.provider.JAXBElementProvider">
<property name="extraClass">
<list>
<value>org.apache.cxf.jaxrs.resources.SuperBook</value>
</list>
</property>
</bean>
org.apache.cxf.jaxrs.resources.SuperBook
但是,我看不到在Camel中创建路由时如何应用此选项?
<cxf:dataBinding>
<bean id="extraJaxBClasses" class="org.apache.cxf.jaxb.JAXBDataBinding">
<property name="extraClass">
<list>
<value>your class here</value>
<value>your class here</value>
</list>
</property>
</bean>
</cxf:dataBinding>
你们班在这里吗
你们班在这里吗
我遇到了类似的情况,我用这段代码工作——它就像一个符咒。