[jboss-user] [JBoss Web Services] - JBoss Webservice: Endpoint does not contain operation meta data
Mark Raa
do-not-reply at jboss.com
Wed May 12 04:05:56 EDT 2010
Mark Raa [http://community.jboss.org/people/mark_raa] created the discussion
"JBoss Webservice: Endpoint does not contain operation meta data"
To view the discussion, visit: http://community.jboss.org/message/542499#542499
--------------------------------------------------------------
Hey Guys,
I have deployed a webservice from Eclipse in Java and once it has been successfully deployed, I can browse the WSDL and see the XML in my browser.
However, when I try invoke this service sending it a string parameter, i get the following error:
08:52:09,301 ERROR [SOAPFaultHelperJAXRPC] SOAP request exception
javax.xml.rpc.soap.SOAPFaultException: Endpoint {http://127.0.0.1:8080/Tws/TestW
s}TestWsPort does not contain operation meta data for: {http://dhanago.test.com/
}greet
at org.jboss.ws.core.jaxrpc.SOAPFaultHelperJAXRPC.exceptionToFaultMessag
e(SOAPFaultHelperJAXRPC.java:189)
at org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS.exceptionToFaultMessage(
SOAPFaultHelperJAXWS.java:183)
at org.jboss.ws.core.jaxws.binding.SOAP11BindingJAXWS.createFaultMessage
FromException(SOAP11BindingJAXWS.java:102)
at org.jboss.ws.core.CommonSOAPBinding.bindFaultMessage(CommonSOAPBindin
g.java:650)
at org.jboss.ws.core.server.ServiceEndpointInvoker.invoke(ServiceEndpoin
tInvoker.java:283)
at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHan
dlerImpl.java:468)
at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHand
lerImpl.java:293)
at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl
.java:203)
at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(Request
HandlerImpl.java:129)
at org.jboss.wsf.common.servlet.AbstractEndpointServlet.service(Abstract
EndpointServlet.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
lter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
yAssociationValve.java:190)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
e.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.proce
ss(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invok
e(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedC
onnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:330)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcesso
r.java:905)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.pr
ocess(Http11AprProtocol.java:592)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:20
36)
at java.lang.Thread.run(Thread.java:619)
the code im using to perform the invokation is:
import javax.xml.namespace.QName;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
public class webservice
{
public static void main(String[] args)
{
try
{
String endpoint = "http://localhost:8080/Tws/TestWs?wsdl";
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new java.net.URL(endpoint));
call.setOperationName(new QName("http://schemas.xmlsoap.org", "greet"));
Object ret[] = (Object[]) call.invoke(new Object[] { "Joe" } );
for (int i = 0; i < ret.length; i ++)
{
System.out.println("RESPONSE " + (i + 1) + ": " + ret[i]);
}
}
catch (Exception e)
{
e.printStackTrace();
System.err.println(e.toString());
}
}
}
and the WSDL when opened in my browser looks as follows:
<definitions name='TestWsService' targetNamespace='http://127.0.0.1:8080/Tws/TestWs' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://127.0.0.1:8080/Tws/TestWs' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
<types>
<xs:schema targetNamespace='http://127.0.0.1:8080/Tws/TestWs' version='1.0' xmlns:tns='http://127.0.0.1:8080/Tws/TestWs' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
<xs:element name='greet' type='tns:greet'/>
<xs:element name='greetResponse' type='tns:greetResponse'/>
<xs:complexType name='greet'>
<xs:sequence>
<xs:element minOccurs='0' name='name' type='xs:string'/>
</xs:sequence>
</xs:complexType>
<xs:complexType name='greetResponse'>
<xs:sequence>
<xs:element minOccurs='0' name='return' type='xs:string'/>
</xs:sequence>
</xs:complexType>
</xs:schema>
</types>
<message name='TestWs_greet'>
<part element='tns:greet' name='greet'></part>
</message>
<message name='TestWs_greetResponse'>
<part element='tns:greetResponse' name='greetResponse'></part>
</message>
<portType name='TestWs'>
<operation name='greet' parameterOrder='greet'>
<input message='tns:TestWs_greet'></input>
<output message='tns:TestWs_greetResponse'></output>
</operation>
</portType>
<binding name='TestWsBinding' type='tns:TestWs'>
<soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/>
<operation name='greet'>
<soap:operation soapAction=' '/>
<input>
<soap:body use='literal'/>
</input>
<output>
<soap:body use='literal'/>
</output>
</operation>
</binding>
<service name='TestWsService'>
<port binding='tns:TestWsBinding' name='TestWsPort'>
<soap:address location='http://127.0.0.1:8080/Tws/TestWs'/>
</port>
</service>
</definitions>
Has anyone experienced an issue like this before? and if so how did you resolve it?
>From my understanding, everything in my WSDL is fine, but for some reason, I cannot invoke it.
Many thanks
Mark
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/542499#542499]
Start a new discussion in JBoss Web Services at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2044]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20100512/3540cd0e/attachment-0001.html
More information about the jboss-user
mailing list