2
2 개의 REST 컨테이너를 사용하여 만듭니다. JSON 공급자, 유효성 검사 요격기, cxf 버스를 사용한 예외 처리와 같은 일반적인 것들을 유지하고 싶습니다. 아래는 내 응용 프로그램 컨텍스트입니다."org.apache.cxf.jaxrs.bus.providers"가 작동하지 않습니다.
<cxf:bus>
<cxf:properties>
<entry key="org.apache.cxf.jaxrs.provider" key-ref="busProviders"/>
</cxf:properties>
</cxf:bus>
<util:list id="busProviders">
<ref bean="requestInterceptor"/>
<ref bean="jsonProvider"/>
<ref bean="exceptionHandler"/>
</util:list>
<bean id="requestInterceptor" class="com.sample.interceptor.ServiceValidationInterceptor"/>
<bean id="jsonProvider" class="org.codehaus.jackson.jaxrs.JacksonJsonProvider" />
<bean id="exceptionHandler" class="com.sample.exception.ExceptionHandler" />
<!-- ======================== REST Container for Service1 ======================================= -->
<jaxrs:server id="restContainer" address="/service1">
<jaxrs:serviceBeans>
<ref bean="endecaService"/>
</jaxrs:serviceBeans>
<jaxrs:inInterceptors>
<ref bean="logInbound"/>
<bean class="org.apache.cxf.jaxrs.provider.jsonp.JsonpInInterceptor">
<property name="callbackParam" value="callback"/>
</bean>
</jaxrs:inInterceptors>
<jaxrs:outInterceptors>
<ref bean="logOutbound"/>
<bean class="org.apache.cxf.jaxrs.provider.jsonp.JsonpPreStreamInterceptor">
<property name="mediaType" value="application/json"/>
</bean>
<bean class="org.apache.cxf.jaxrs.provider.jsonp.JsonpPostStreamInterceptor">
<property name="paddingEnd" value=")"/>
</bean>
</jaxrs:outInterceptors>
</jaxrs:server>
<!-- ======================== REST Container for Service2========================================== -->
<jaxrs:server id="restContainerForHelpcenter" address="/service2">
<jaxrs:serviceBeans>
<ref bean="helpCenter"/>
</jaxrs:serviceBeans>
<jaxrs:inInterceptors>
<ref bean="logInbound"/>
<bean class="org.apache.cxf.jaxrs.provider.jsonp.JsonpInInterceptor">
<property name="callbackParam" value="callback"/>
</bean>
</jaxrs:inInterceptors>
<jaxrs:outInterceptors>
<ref bean="logOutbound"/>
<bean class="org.apache.cxf.jaxrs.provider.jsonp.JsonpPreStreamInterceptor">
<property name="mediaType" value="application/json"/>
</bean>
<bean class="org.apache.cxf.jaxrs.provider.jsonp.JsonpPostStreamInterceptor">
<property name="paddingEnd" value=")"/>
</bean>
</jaxrs:outInterceptors>
</jaxrs:server>
위의 2를 2 개의 서비스 빈으로 단일으로 결합하면 잘 작동하지만이 경우에는 작동하지 않습니다. 아무도 2 개의 다른 REST 컨테이너에 대해 cxf : 버스 기능을 사용 했습니까? 제게 알려주십시오. 속성 이름의 끝에