Куда добавить cxf: шину внутри XML-файла конечных точек Apache CXF

#cxf

#cxf

Вопрос:

Ниже приведен мой cxf endpoints.xml файл

 <?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:beans="http://cxf.apache.org/configuration/beans"
    xmlns:jaxws="http://cxf.apache.org/jaxws"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
    http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
        http://cxf.apache.org/configuration/beans http://cxf.apache.org/schemas/configuration/cxf-beans.xsd
        http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">



<import resource="classpath:META-INF/cxf/cxf.xml" />
    <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
    <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />


<bean id="bayer" class="com.tata.bayer.service.BayerWeb" />

  <bean id="logInbound" 
class="org.apache.cxf.interceptor.LoggingInInterceptor"/> 
    <bean id="logOutbound" 
class="org.apache.cxf.interceptor.LoggingOutInterceptor"/> 

    <bean id="cxf" class="org.apache.cxf.bus.CXFBusImpl"> 
        <property name="inInterceptors"> 
            <list> 
                <ref bean="logInbound"/> 
            </list> 
        </property> 
        <property name="outInterceptors"> 
            <list> 
                <ref bean="logOutbound"/> 
            </list> 
        </property> 
        <property name="outFaultInterceptors"> 
            <list> 
                <ref bean="logOutbound"/> 
            </list> 
        </property> 
    </bean> 



<jaxws:endpoint id="bayerImpl" implementor="#bayer" address="/bayerWeb"/>


</beans>
  

Мне нужно добавить для использования log4j

Пожалуйста, скажите мне, куда добавить эти нижеприведенные строки в приведенный выше XML-файл??

Спасибо.

Ответ №1:

JAX-WS элемент endpoint имеет атрибут bus . Вам нужно указать свою шину в этом атрибуте. Если вы используете конфигурацию spring для своей шины, вы должны указать ее следующим образом:

 <jaxws:endpoint id="bayerImpl" implementor="#bayer" address="/bayerWeb" bus="#yourCXFBus"/>
  

Если шина настроена как cxf:bus , то она должна быть такой:

 <jaxws:endpoint id="bayerImpl" implementor="#bayer" address="/bayerWeb" bus="yourCXFBus"/>