3 Replies Latest reply on Dec 13, 2006 10:35 AM by thomas.diesler

    SOAP Error- DefaultNamespace doesnot contain operation metad

    pshankar

       

      Getting Metadata error with the default namespace. The WSDL is generated with Java2WSDL supplied by JBOSS IDE. The Webservice deploys but error when trying to access it

      <soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
      <soapenv:Header/>
      <soapenv:Body>
      <ns1:setName xmlns:ns1='http://localhost:8080/MySpringService/' soapenv:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'>
      <String_1 xsi:type='xsd:string' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>Shankar-Web Service!!!</String_1>
      </ns1:setName></soapenv:Body></soapenv:Envelope>
      2006-12-13 08:25:08,141 DEBUG [org.jboss.ws.soap.SOAPMessageDispatcher] getDispatchDestination: null
      2006-12-13 08:25:08,141 DEBUG [org.jboss.ws.soap.SOAPMessageDispatcher] getDispatchDestination: null
      2006-12-13 08:25:08,141 DEBUG [javax.xml.rpc.soap.SOAPFaultException] new SOAPFaultException [code={http://schemas.xmlsoap.org/soap/envelope/}Client,string=Endpoint {http://DefaultNamespace}MySpringService does not contain operation meta data for: {http://localhost:8080/MySpringService/}setName,actor=null,detail=null]
      2006-12-13 08:25:08,141 ERROR [org.jboss.ws.jaxrpc.SOAPFaultExceptionHelper] SOAP request exception
      javax.xml.rpc.soap.SOAPFaultException: Endpoint {http://DefaultNamespace}MySpringService does not contain operation meta data for: {http://localhost:8080/MySpringService/}setName
       at org.jboss.ws.server.ServiceEndpointInvoker.getDispatchDestination(ServiceEndpointInvoker.java:181)
       at org.jboss.ws.server.ServiceEndpointInvoker.invoke(ServiceEndpointInvoker.java:107)
       at org.jboss.ws.server.ServiceEndpoint.handleRequest(ServiceEndpoint.java:209)
       at org.jboss.ws.server.ServiceEndpointManager.processSOAPRequest(ServiceEndpointManager.java:355)
       at org.jboss.ws.server.StandardEndpointServlet.doPost(StandardEndpointServlet.java:115)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at org.jboss.ws.server.StandardEndpointServlet.service(StandardEndpointServlet.java:76)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
       at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
       at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
       at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
       at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
       at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
       at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
       at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
       at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
       at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
       at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
       at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)


        • 1. Re: SOAP Error- DefaultNamespace doesnot contain operation m
          thomas.diesler

          rpc/encoded is not supported

          Please check the log file for the list of available operation qnames

          • 2. Re: SOAP Error- DefaultNamespace doesnot contain operation m
            pshankar

            I have the log file showing the following information

            UnifiedMetaData:
             securityDomain: null
            
            
            ServiceMetaData:
             name={http://DefaultNamespace}MySpringServiceService
             wsdName=MySpringService
             wsdlFile=WEB-INF/wsdl/myspringservice.wsdl
             jaxrpcFile=WEB-INF/jaxrpc-mapping.xml
             publishLocation=null
             properties=null
            
            TypesMetaData:
            
            
            ServerEndpointMetaData:
             name={http://DefaultNamespace}MySpringService
             id=jboss.ws:context=MySpringService,endpoint=MySpringServiceServlet
             address=http://MSN17089C:8080/MySpringService/
             linkName=MySpringServiceServlet
             implName=MySpringServiceImplementation
             seiName=MySpringService
             annotated=false
             portComponentName=MySpringService
             contextRoot=/MySpringService
             urlPattern=/
             configFile=null
             configName=null
             authMethod=null
             transportGuarantee=null
             properties=null
            
            OperationMetaData:
             xmlName={http://DefaultNamespace}getName
             javaName=getName
             style=rpc/literal
             oneWay=false
             soapAction=
            ReturnMetaData:
             xmlName=getNameReturn
             xmlType={http://www.w3.org/2001/XMLSchema}string
             javaType=java.lang.String
             mode=OUT
             inHeader=false
            
            OperationMetaData:
             xmlName={http://DefaultNamespace}setName
             javaName=setName
             style=rpc/literal
             oneWay=false
             soapAction=
            ParameterMetaData:
             xmlName=in0
             xmlType={http://www.w3.org/2001/XMLSchema}string
             javaType=java.lang.String
             mode=IN
             inHeader=false


            My Client use the following
            private static String endpoint = "http://localhost:8080/MySpringService/";
            
             private static String qnameService = "MySpringService";
            
             private static String qnamePort = "MySpringService";
            
             private static String ENCODING_STYLE_PROPERTY = "javax.xml.rpc.encodingstyle.namespace.uri";
            
             private static String NS_XSD = "http://www.w3.org/2001/XMLSchema";
            
             private static String URI_ENCODING = "http://schemas.xmlsoap.org/soap/encoding/";
            
             public static void main(String[] args) {
            
             System.out.println("Endpoint address = " + endpoint);
            
             try {
             ServiceFactory factory = ServiceFactory.newInstance();
             Service service = factory.createService(new QName(qnameService));
            
             QName port = new QName(qnamePort);
            
             Call call = service.createCall(port);
             call.setTargetEndpointAddress(endpoint);
             call.setProperty(Call.SOAPACTION_USE_PROPERTY, new Boolean(true));
             call.setProperty(Call.SOAPACTION_URI_PROPERTY, "");
             call.setProperty(ENCODING_STYLE_PROPERTY, URI_ENCODING);
             QName QNAME_TYPE_STRING = new QName(NS_XSD, "string");
             call.setReturnType(QNAME_TYPE_STRING);


            Can you suggest what need to be changed?

            • 3. Re: SOAP Error- DefaultNamespace doesnot contain operation m
              thomas.diesler

              You should not use a DII client. Use a proxy that is aware od jaxrpc-mapping.xml

              Please read http://labs.jboss.com/portal/jbossws/user-guide/en/html/clients.html