Cannot load the password callback class on server
-------------------------------------------------

                 Key: RAMPART-19
                 URL: https://issues.apache.org/jira/browse/RAMPART-19
             Project: Rampart
          Issue Type: Test
         Environment: JDK 1.4.2, Tomcat 5.0.28, axis2.1.0 , WinXP, Rampart 1.0
            Reporter: Ayondeep


I am using Rampart for implementing WS security in one of the web services 
project. I have set InflowSecurity config parameter in services.xml file on the 
server side and OutflowSecuirty config parameter in axis2.xml on the client 
side. When I am calling the web service I get this error from the server


org.apache.axis2.AxisFault: WSHandler: cannot load password callback class: 
com.ipacc.projects.trailblazer.webservices.util.AmsWSPWCBHandler


The Rampart module is engaged and client is sending the necessary security 
header in the SOAP packet.

This is the TCPMon view of the SOAP packet received by the server

-----------------------------------------------------------------------------------------------------------------------------------------------------------------
POST /axis2/services/ProfileManager HTTP/1.0

User-Agent: Axis/2.0

SOAPAction: readUserProfile

Host: 127.0.0.1:8081

Content-Length: 938

Content-Type: text/xml; charset=UTF-8

<?xml version='1.0' encoding='UTF-8'?>
   <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";>
      <soapenv:Header>
         <wsse:Security 
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd";
 soapenv:mustUnderstand="1">
            <wsse:UsernameToken 
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";
 wsu:Id="UsernameToken-18291494">
               <wsse:Username>bob1</wsse:Username>
               <wsse:Password 
Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest";>ltFavmEPnhb83osw0J5kloKPfWg=</wsse:Password>
               <wsse:Nonce>0pbGUmwMSJgI4UPF8HOxjg==</wsse:Nonce>
               <wsu:Created>2007-01-30T17:53:40.746Z</wsu:Created>
            </wsse:UsernameToken>
         </wsse:Security>
      </soapenv:Header>
      <soapenv:Body>
         <ns2:UserId 
xmlns:ns2="http://axis2.profilemanager.webservices.trailblazer.projects.ipacc.com/xsd";>admin_1524</ns2:UserId>
      </soapenv:Body>
   </soapenv:Envelope>


---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

This the TCPMon view of the SOAP packet send by the server to the client

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
HTTP/1.1 500 Internal Server Error

Set-Cookie: JSESSIONID=B69E39CB7F6F2CFF43ADBB87BB6FEAD0; Path=/axis2

Content-Type: text/xml;charset=UTF-8

Date: Tue, 30 Jan 2007 17:53:44 GMT

Server: Apache-Coyote/1.1

Connection: close



<?xml version='1.0' encoding='UTF-8'?>
   <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"; 
xmlns:wsa="http://www.w3.org/2005/08/addressing";>
      <soapenv:Header>
         <wsa:ReplyTo>
            
<wsa:Address>http://www.w3.org/2005/08/addressing/anonymous</wsa:Address>
         </wsa:ReplyTo>
         
<wsa:MessageID>urn:uuid:C27999EEF1F486E41811701796245611</wsa:MessageID>
         <wsa:Action>http://www.w3.org/2005/08/addressing/fault</wsa:Action>
      </soapenv:Header>
      <soapenv:Body>
         <soapenv:Fault>
            <faultcode>soapenv:Client</faultcode>
            <faultstring>WSHandler: cannot load password callback class: 
com.ipacc.projects.trailblazer.webservices.util.AmsWSPWCBHandler; nested 
exception is:         java.lang.ClassNotFoundException: 
com.ipacc.projects.trailblazer.webservices.util.AmsWSPWCBHandler</faultstring>
            <detail>
               <Exception>org.apache.axis2.AxisFault: WSHandler: cannot load 
password callback class: 
com.ipacc.projects.trailblazer.webservices.util.AmsWSPWCBHandler; nested 
exception is:    java.lang.ClassNotFoundException: 
com.ipacc.projects.trailblazer.webservices.util.AmsWSPWCBHandler; nested 
exception is:        org.apache.ws.security.WSSecurityException: WSHandler: 
cannot load password callback class: 
com1.ipacc.projects.trailblazer.webservices.util.AmsWSPWCBHandler; nested 
exception is:     java.lang.ClassNotFoundException: 
com.ipacc.projects.trailblazer.webservices.util.AmsWSPWCBHandler&#13; at 
org.apache.axis2.security.WSDoAllReceiver.processMessage(WSDoAllReceiver.java:336)&#13;
      at 
org.apache.axis2.security.handler.WSDoAllHandler.invoke(WSDoAllHandler.java:82)&#13;
 at org.apache.axis2.engine.Phase.invoke(Phase.java:381)&#13;    at 
org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:473)&#13;  at 
org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:445)&#13; at 
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:284)&#13;
  at 
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:136)&#13;   
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)&#13;    at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)&#13;    at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)&#13;
       at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)&#13;
       at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)&#13;
     at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)&#13;
 at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)&#13;
     at 
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)&#13;
     at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)&#13;
     at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)&#13;
 at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)&#13;
     at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)&#13;
   at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)&#13;
 at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)&#13;
   at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)&#13;
 at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)&#13;
     at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)&#13;
       at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)&#13;
 at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)&#13;
     at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)&#13;   at 
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)&#13; at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)&#13; 
     at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)&#13;
      at 
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)&#13; 
     at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)&#13;
      at java.lang.Thread.run(Thread.java:534)&#13;Caused by: 
org.apache.ws.security.WSSecurityException: WSHandler: cannot load password 
callback class: 
com1.ipacc.projects.trailblazer.webservices.util.AmsWSPWCBHandler; nested 
exception is:     java.lang.ClassNotFoundException: 
com.ipacc.projects.trailblazer.webservices.util.AmsWSPWCBHandler&#13; at 
org.apache.ws.security.handler.WSHandler.getPasswordCB(WSHandler.java:887)&#13; 
     at 
org.apache.axis2.security.WSDoAllReceiver.processMessage(WSDoAllReceiver.java:147)&#13;
      ... 32 more&#13;Caused by: java.lang.ClassNotFoundException: 
com.ipacc.projects.trailblazer.webservices.util.AmsWSPWCBHandler&#13;      at 
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1340)&#13;
        at 
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1189)&#13;
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)&#13;
        at java.lang.Class.forName0(Native Method)&#13;
        at java.lang.Class.forName(Class.java:141)&#13;
        at org.apache.ws.security.util.Loader.loadClass(Loader.java:162)&#13;
        at org.apache.ws.security.util.Loader.loadClass(Loader.java:135)&#13;
        at 
org.apache.ws.security.handler.WSHandler.getPasswordCB(WSHandler.java:884)&#13;
        ... 33 more&#13;
</Exception>
            </detail>
         </soapenv:Fault>
      </soapenv:Body>
   </soapenv:Envelope>

--------------------------------------------------------------------------------------------------------------------------------------------------------------

I have added following jar files in the axis2 lib

wss4j-src-1.5.1.jar
jar files from xerces-2_9_0
jar filed from xml-security-1_4_0
axis2-rahas-SNASHOT.jar

It seems the class loader is not able to load the password callback handler 
class.Can you please tell me what is going wrong?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to