Web service newbie question
thomas_revesz Jun 13, 2006 7:12 PMHi!
I have deployed my first web service on JBoss 4.0.4. It is a simple HelloWorld type of service with one method that takes a string argument and that returns a string. I used WSTOOLS to generate the descriptor files and everything went smoothly. The deployment also went smoothly and JBoss loaded the service without problems. I then used the service http://www.soapclient.com/SoapClient to generate a test call to my service. However, the client returns with the message 'env:ClientEndpoint {http://test.my/}HelloPort does not contain operation meta data for: {http://test.my/}String_1', which is also shown as a SOAPFaultException on the JBoss console. Unfortunately, I'm too new at this to understand the message; how can such an error occur when I have used the provided tools to generate the descriptor files and what should I do to correct it? Any help would be appreciated. Here are the wstools config file and the WSDL if that is of any help:
<configuration xmlns="http://www.jboss.org/jbossws-tools"> <java-wsdl> <service name="HelloService" style="rpc" endpoint="my.test.Hello"/> <namespaces target-namespace="http://test.my/" type-namespace="http://test.my/types"/> <mapping file="jaxrpc-mapping.xml"/> <webservices servlet-link="HelloWS"/> </java-wsdl> </configuration> <?xml version="1.0" encoding="UTF-8"?> <definitions name='HelloService' targetNamespace='http://test.my/' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://test.my/' xmlns:xsd='http://www.w3.org/2001/XMLSchema'> <types/> <message name='Hello_getHello'> <part name='String_1' type='xsd:string'/> </message> <message name='Hello_getHelloResponse'> <part name='result' type='xsd:string'/> </message> <portType name='Hello'> <operation name='getHello' parameterOrder='String_1'> <input message='tns:Hello_getHello'/> <output message='tns:Hello_getHelloResponse'/> </operation> </portType> <binding name='HelloBinding' type='tns:Hello'> <soap:binding style='rpc' transport='http://schemas.xmlsoap.org/soap/http'/> <operation name='getHello'> <soap:operation soapAction=''/> <input> <soap:body namespace='http://test.my/' use='literal'/> </input> <output> <soap:body namespace='http://test.my/' use='literal'/> </output> </operation> </binding> <service name='HelloService'> <port binding='tns:HelloBinding' name='HelloPort'> <soap:address location='REPLACE_WITH_ACTUAL_URL'/> </port> </service> </definitions>
Thanks for helping out!
- Tom