Hi All,
I was hoping to do the following:
<jaxws:server id="soapServer" address="/soap">
<jaxws:serviceBean>
<jaxws:endpoint address="/Service1"
implementor="com.domain.Service1" />
<jaxws:endpoint address="/Service2"
implementor="com.domain.Service2" />
</jaxws:serviceBean>
<!-- or maybe this...
<jaxws:serviceBean>
<bean class="com.domain.Service1" />
<bean class="com.domain.Service2" />
</jaxws:serviceBean>
-->
<jaxws:inInterceptors>
<bean name="usernameTokenInterceptor"
class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor">
<constructor-arg>
<map>
<entry key="action" value="UsernameToken" />
<entry key="passwordType" value="PasswordDigest" />
<entry key="passwordCallbackRef">
<bean
class="com.domain.soap.handlers.SoapPasswordCallback" />
</entry>
</map>
</constructor-arg>
</bean>
</jaxws:inInterceptors>
</jaxws:server>
I know it is perfectly possible to do the following instead:
<jaxws:endpoint address="/Service1" implementor="com.domain.Service1" >
<jaxws:inInterceptors>
<ref bean="usernameTokenInterceptor"/>
</jaxws:inInterceptors>
</jaxws:endpoint>
<jaxws:endpoint address="/Service2" implementor="com.domain.Service2" >
<jaxws:inInterceptors>
<ref bean="usernameTokenInterceptor"/>
</jaxws:inInterceptors>
</jaxws:endpoint>
<bean name="usernameTokenInterceptor"
class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor">
<constructor-arg>
<map>
<entry key="action" value="UsernameToken" />
<entry key="passwordType" value="PasswordDigest" />
<entry key="passwordCallbackRef">
<bean
class="com.domain.soap.handlers.SoapPasswordCallback" />
</entry>
</map>
</constructor-arg>
</bean>
I was just hoping to reduce the number of times
<jaxws:inInterceptors>
<ref bean="usernameTokenInterceptor"/>
</jaxws:inInterceptors>
has to appear in the xml.
Thanks in advance.
Gabo