[jboss-user] [EJB 3.0] - Calling a web service via soap

aslocal do-not-reply at jboss.com
Tue Dec 19 20:21:40 EST 2006


Hello.  I'm trying to call a webservice via SOAP.  I keep getting this exception:

javax.xml.rpc.JAXRPCException: Cannot create SOAPFault message for: javax.xml.rpc.soap.SOAPFaultException: setProperty must be overridden by all subclasses of SOAPMessage

My class looks like this:

@Stateless
@WebService(serviceName = "ListingWebService")
@SOAPBinding(style = SOAPBinding.Style.RPC, use=SOAPBinding.Use.LITERAL)

public class ListingWebService {
    public ListingWebService() {
    }
    
    @WebMethod(operationName="HelloWorld")
    public String setHelloMessage(String test)  {
        return "Hello This is my first EJB3.0 webservice developed in JDeveloper and deployed on the glassfish platform";
       }    
}

My SOAP message looks like:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope
  SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
  xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
  xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
  xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:xsd="http://www.w3.org/1999/XMLSchema"
>
<SOAP-ENV:Body>
<ns1:HelloWorld xmlns:ns1="http://webservice.ejb.smile4u.com/jaws" SOAP-ENC:root="1">
<v1 xsi:type="xsd:string">boo</v1>
</ns1:HelloWorld>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

My WSDL is as follows:

  | <?xml version="1.0" encoding="UTF-8"?>
  | <definitions name="ListingWebService" targetNamespace="http://webservice.ejb.smile4u.com/jaws" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://webservice.ejb.smile4u.com/jaws" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
  |   <types>
  |     <schema elementFormDefault="qualified" targetNamespace="http://webservice.ejb.smile4u.com/jaws" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://webservice.ejb.smile4u.com/jaws" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  |    <complexType name="HelloWorld">
  |     <sequence/>
  |    </complexType>
  |    <complexType name="HelloWorldResponse">
  |     <sequence>
  |      <element name="result" nillable="true" type="string"/>
  |     </sequence>
  |    </complexType>
  |    <element name="HelloWorld" type="tns:HelloWorld"/>
  |    <element name="HelloWorldResponse" type="tns:HelloWorldResponse"/>
  |   </schema>
  |   </types>
  |   <message name="ListingWebService_HelloWorldResponse">
  |     <part name="result" element="tns:HelloWorldResponse"/>
  |   </message>
  |   <message name="ListingWebService_HelloWorld">
  |     <part name="parameters" element="tns:HelloWorld"/>
  |   </message>
  |   <portType name="ListingWebService">
  |     <operation name="HelloWorld">
  |       <input message="tns:ListingWebService_HelloWorld"/>
  |       <output message="tns:ListingWebService_HelloWorldResponse"/>
  |     </operation>
  |   </portType>
  |   <binding name="ListingWebServiceBinding" type="tns:ListingWebService">
  |     <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
  |     <operation name="HelloWorld">
  |       <soap:operation soapAction=""/>
  |       <input>
  |         <soap:body use="literal"/>
  |       </input>
  |       <output>
  |         <soap:body use="literal"/>
  |       </output>
  |     </operation>
  |   </binding>
  |   <service name="ListingWebService">
  |     <port name="ListingWebServicePort" binding="tns:ListingWebServiceBinding">
  |       <soap:address location="http://2fast:8080/smile4u/ListingWebService"/>
  |     </port>
  |   </service>
  | </definitions>
  | 
  | 
What am I doing wrong?  

Thanks, Graeme.

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995181#3995181

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995181



More information about the jboss-user mailing list