1 Reply Latest reply on May 9, 2006 4:27 AM by Thomas Diesler

    deploying soap service in Jboss

    lords_diakonos Newbie

      I have some web services currently running in Web Sphere that I am trying to port to Jboss. I think I am missing something in some deployment xml file.

      Here is the error I am getting
      10:09:00,640 INFO [STDOUT] asq: error from LoginAction: [SOAPException: faultCode=SOAP-ENV:Server; msg=service 'urn:AuthService' unknown]
      10:09:00,640 INFO [STDOUT] [SOAPException: faultCode=SOAP-ENV:Server; msg=service 'urn:AuthService' unknown]
      10:09:00,640 INFO [STDOUT] at edu.bju.authentication.proxy.AuthenticationProxy.authenticate(AuthenticationProxy.java:173)

      As you can see it doesn't know about urn:AuthService

      here is my dds.xml which I have tried putting in teh WEB-INF dir and the root of the project

      <root>
      <isd:service xmlns:isd="http://xml.apache.org/xml-soap/deployment" id="urn:AuthService" type="message">
       <isd:provider type="java" scope="Application" methods="authenticate getBjuId">
       <isd:java class="edu.bju.authentication.Authentication"/>
       </isd:provider>
      </isd:service>
      </root>


      here is the client code trying to access the server
      String targetObjectURI = "urn:AuthService";
       String soapActionURI = "";
      
       if (url == null) {
       throw new SOAPException(Constants.FAULT_CODE_CLIENT, "A URL must be specified via AuthenticationProxy.setEndPoint(URL).");
       }
       System.out.println(url.toString());
       call.setMethodName("authenticate");
       call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
       call.setTargetObjectURI(targetObjectURI);
       Vector params = new Vector();
       Parameter usernameParam = new Parameter("username", java.lang.String.class, username, Constants.NS_URI_SOAP_ENC);
       params.addElement(usernameParam);
       Parameter passwordParam = new Parameter("password", java.lang.String.class, password, Constants.NS_URI_SOAP_ENC);
       params.addElement(passwordParam);
       call.setParams(params);
       Response resp = call.invoke(url, soapActionURI);
      
       //Check the response.
       if (resp.generatedFault()) {
       Fault fault = resp.getFault();
       call.setFullTargetObjectURI(targetObjectURI);
       throw new SOAPException(fault.getFaultCode(), fault.getFaultString());
       } else {
       Parameter refValue = resp.getReturnValue();
       return ((java.lang.Integer) refValue.getValue()).intValue();
       }