<?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:cxf="http://cxf.apache.org/core" xmlns:jaxrs="http://cxf.apache.org/jaxrs" xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:wsp="http://www.w3.org/2006/07/ws-policy" xmlns:p="http://cxf.apache.org/policy" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd http://www.w3.org/2006/07/ws-policy http://www.w3.org/2006/11/ws-policy.xsd http://cxf.apache.org/policy http://cxf.apache.org/schemas/policy.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd"> <!-- Load CXF modules from cxf.jar --> <import resource="classpath:META-INF/cxf/cxf.xml" /> <import resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml" /> <import resource="classpath:META-INF/cxf/cxf-extension-http-binding.xml" /> <import resource="classpath:META-INF/cxf/cxf-extension-xml.xml" /> <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" /> <import resource="classpath:META-INF/cxf/cxf-servlet.xml" /> <import resource="classpath:META-INF/cxf/cxf-extension-ws-security.xml" /> <import resource="classpath:META-INF/cxf/cxf-extension-policy.xml" /> <bean id="userWebService" class="com.company.webservice.impl.UserServiceImpl"> <property name="userManagementService" ref="userManagementService" /> </bean> <!-- Security --> <bean id="wsAuthenticationInterceptor" class="com.company.auth.service.CompanyWSS4JInInterceptor"> <constructor-arg index="0"> <map> <entry key="action" value="UsernameToken" /> <entry key="passwordType" value="PasswordText" /> <entry key="passwordCallbackRef"> <ref bean="jaxwsPasswordCallback" /> </entry> </map> </constructor-arg> <property name="authenticationProvider" ref="customAuthenticationProvider" /> </bean> <bean id="jaxwsPasswordCallback" class="com.company.auth.service.ServerPasswordCallback"> </bean> <bean id="securityInterceptor" class="com.company.auth.service.BasicAuthAuthorizationInterceptor"> <property name="authenticationProvider" ref="customAuthenticationProvider" /> </bean> <!-- Enable message logging using the CXF logging feature --> <cxf:bus> <cxf:features> <cxf:logging /> </cxf:features> </cxf:bus> <!-- Aegis data binding --> <bean id="aegisBean" class="org.apache.cxf.aegis.databinding.AegisDatabinding" scope="prototype"> <property name="configuration"> <bean class="org.apache.cxf.aegis.type.TypeCreationOptions"> <property name="defaultMinOccurs" value="1" /> <property name="defaultNillable" value="false" /> </bean> </property> </bean> <bean id="jaxws-and-aegis-service-factory" class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean" scope="prototype"> <property name="dataBinding" ref="aegisBean" /> <property name="serviceConfigurations"> <list> <bean class="org.apache.cxf.jaxws.support.JaxWsServiceConfiguration" /> <bean class="org.apache.cxf.aegis.databinding.AegisServiceConfiguration" /> <bean class="org.apache.cxf.service.factory.DefaultServiceConfiguration" /> </list> </property> </bean> <bean id="aegisProvider" class="org.apache.cxf.jaxrs.provider.AegisElementProvider" /> <!-- JAX-WS SOAP --> <!-- Service endpoint --> <jaxws:endpoint id="UserService-v1" implementor="#userWebService" address="/v1/soap/user"> <jaxws:serviceFactory> <ref bean="jaxws-and-aegis-service-factory" /> </jaxws:serviceFactory> <jaxws:inInterceptors> <ref bean="wsAuthenticationInterceptor" /> </jaxws:inInterceptors> </jaxws:endpoint> <!-- REST --> <jaxrs:server id="rest" address="/v1/rest"> <jaxrs:serviceBeans> <ref bean="userWebService" /> </jaxrs:serviceBeans> <jaxrs:providers> <ref bean="aegisProvider" /> </jaxrs:providers> <jaxrs:inInterceptors> <ref bean="securityInterceptor" /> </jaxrs:inInterceptors> </jaxrs:server> </beans>
<beans xmlns=”http://www.springframework.org/schema/beans”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns:cxf=”http://cxf.apache.org/core”
xmlns:jaxrs=”http://cxf.apache.org/jaxrs” xmlns:jaxws=”http://cxf.apache.org/jaxws”
xmlns:wsp=”http://www.w3.org/2006/07/ws-policy” xmlns:p=”http://cxf.apache.org/policy”
xmlns:context=”http://www.springframework.org/schema/context”
xsi:schemaLocation=”
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://cxf.apache.org/jaxrs
http://cxf.apache.org/schemas/jaxrs.xsd
http://cxf.apache.org/jaxws
http://cxf.apache.org/schemas/jaxws.xsd
http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
http://www.w3.org/2006/07/ws-policy
http://www.w3.org/2006/11/ws-policy.xsd
http://cxf.apache.org/policy
http://cxf.apache.org/schemas/policy.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd”>
<!–
default-autowire=”byName”
–>
<!– Load CXF modules from cxf.jar –>
<import resource=”classpath:META-INF/cxf/cxf.xml” />
<import resource=”classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml” />
<import resource=”classpath:META-INF/cxf/cxf-extension-http-binding.xml” />
<import resource=”classpath:META-INF/cxf/cxf-extension-xml.xml” />
<import resource=”classpath:META-INF/cxf/cxf-extension-soap.xml” />
<import resource=”classpath:META-INF/cxf/cxf-servlet.xml” />
<import resource=”classpath:META-INF/cxf/cxf-extension-ws-security.xml” />
<import resource=”classpath:META-INF/cxf/cxf-extension-policy.xml” />
<bean id=”userWebService” class=”com.company.webservice.impl.UserServiceImpl”>
<property name=”userManagementService” ref=”userManagementService” />
</bean>
<!– Security –>
<bean id=”wsAuthenticationInterceptor” class=”com.company.auth.service.CompanyWSS4JInInterceptor”>
<constructor-arg index=”0″>
<map>
<entry key=”action” value=”UsernameToken” />
<entry key=”passwordType” value=”PasswordText” />
<entry key=”passwordCallbackRef”>
<ref bean=”jaxwsPasswordCallback” />
</entry>
</map>
</constructor-arg>
<property name=”authenticationProvider” ref=”customAuthenticationProvider” />
</bean>
<bean id=”jaxwsPasswordCallback” class=”com.company.auth.service.ServerPasswordCallback”>
</bean>
<bean id=”securityInterceptor”
class=”com.company.auth.service.BasicAuthAuthorizationInterceptor”>
<property name=”authenticationProvider” ref=”customAuthenticationProvider” />
</bean>
<!– Enable message logging using the CXF logging feature –>
<cxf:bus>
<cxf:features>
<cxf:logging />
</cxf:features>
</cxf:bus>
<!– Aegis data binding –>
<bean id=”aegisBean” class=”org.apache.cxf.aegis.databinding.AegisDatabinding”
scope=”prototype”>
<property name=”configuration”>
<bean class=”org.apache.cxf.aegis.type.TypeCreationOptions”>
<property name=”defaultMinOccurs” value=”1″ />
<property name=”defaultNillable” value=”false” />
</bean>
</property>
</bean>
<bean id=”jaxws-and-aegis-service-factory” class=”org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean”
scope=”prototype”>
<property name=”dataBinding” ref=”aegisBean” />
<property name=”serviceConfigurations”>
<list>
<bean class=”org.apache.cxf.jaxws.support.JaxWsServiceConfiguration” />
<bean class=”org.apache.cxf.aegis.databinding.AegisServiceConfiguration” />
<bean class=”org.apache.cxf.service.factory.DefaultServiceConfiguration” />
</list>
</property>
</bean>
<bean id=”aegisProvider” class=”org.apache.cxf.jaxrs.provider.AegisElementProvider” />
<!– JAX-WS SOAP –>
<!– Service endpoint –>
<jaxws:endpoint id=”UserService-v1″
implementor=”#userWebService”
address=”/v1/soap/user”>
<jaxws:serviceFactory>
<ref bean=”jaxws-and-aegis-service-factory” />
</jaxws:serviceFactory>
<jaxws:inInterceptors>
<ref bean=”wsAuthenticationInterceptor” />
</jaxws:inInterceptors>
</jaxws:endpoint>
<!– REST –>
<jaxrs:server id=”rest” address=”/v1/rest”>
<jaxrs:serviceBeans>
<ref bean=”userWebService” />
</jaxrs:serviceBeans>
<jaxrs:providers>
<ref bean=”aegisProvider” />
</jaxrs:providers>
<jaxrs:inInterceptors>
<ref bean=”securityInterceptor” />
</jaxrs:inInterceptors>
</jaxrs:server>
</beans>
0 Responses
Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.
You must be logged in to post a comment.