Hi All,
I am trying a simple example to get Authentication working in webshere
application sever 7.0.
Below are the steps that I've taken.
1)Put this line in manifest file =DisableIBMJAXWSEngine: true
2)Using CXF 2.3.0 version.
3)Class loader to load the app jars first = Pick up jaxp-ri-1.4.2 and
saaj-impl-1.3.2
4)Here is the content of service context file
<bean id="myPasswordCallback"
class="com.svl.myexample.outbound.ServerPasswordCallback" />
<jaxws:endpoint id="library"
implementor="com.svl.myexample.outbound.LibraryImpl"
wsdlLocation="WEB-INF/wsdl/library.wsdl"
address="/cxf-library">
<jaxws:inInterceptors>
<bean
class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor">
<constructor-arg>
<map>
<entry key="action" value="UsernameToken"/>
<entry key="passwordType" value="PasswordText"/>
<entry key="passwordCallbackRef">
<ref bean="myPasswordCallback"/>
</entry>
</map>
</constructor-arg>
</bean>
</jaxws:inInterceptors>
</jaxws:endpoint>
5)Example Link = http://cxf.apache.org/docs/ws-security.html
6)WSDL reflects per =
http://www.ibm.com/developerworks/java/library/j-jws13.html?ca=drs-
Exception=
[11/2/10 16:47:24:867 EDT] 00000030 PhaseIntercep W
org.apache.cxf.phase.PhaseInterceptorChain doDefaultLogging Interceptor for
{http://ws.sosnoski.com/library/wsdl}CXFLibrary has thrown exception,
unwinding now
java.lang.NullPointerException
at
org.apache.cxf.staxutils.StaxUtils.readDocElements(StaxUtils.java:961)
at
org.apache.cxf.staxutils.StaxUtils.readDocElements(StaxUtils.java:949)
at
org.apache.cxf.binding.soap.saaj.SAAJInInterceptor.handleMessage(SAAJInInterceptor.java:185)
at
org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.getSOAPMessage(WSS4JInInterceptor.java:127)
at
org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessage(WSS4JInInterceptor.java:161)
at
org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessage(WSS4JInInterceptor.java:78)
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:247)
at
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:113)
at
org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:97)
at
org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:458)
at
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:146)
at
org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:148)
at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:179)
at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:108)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:718)
at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:159)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1449)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:790)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443)
at
com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:175)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3610)
at
com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:274)
at
com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:926)
at
com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1557)
at
com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:173)
at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:455)
at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:384)
at
com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:83)
at
com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at
com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at
com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:202)
at
com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:766)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:896)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1527)
Thanks in advance,
Vivek.
--
View this message in context:
http://cxf.547215.n5.nabble.com/WS-Security-UsernameToken-in-IBM-WAS-7-0-IBM-jdk-1-6-tp3248527p3248527.html
Sent from the cxf-user mailing list archive at Nabble.com.