title: Response from Web service using Apache CXF shows "No binding operation info.."
body: <p>The problem description might be long. Please be patient and provide any kind of help since I am new to the web services.</p>
  
  <p><strong>What I have done:</strong>
  I have created a web service in java using Apache CXF RI. I simply created a class and used bottom up development approach to generate SEI, WSDL and XML files.</p>
  
  <p><strong>What the problem is:</strong>
  Now, If I request "<code>http://localhost:8084/DeepThoughtWS/services/DeepThoughtPort/whatIsTheAnswer</code>", it produces output as <strong><em>No binding operation info while invoking unknown method with params unknown.</em></strong>
  The response is as follows:</p>
  
  <pre class="lang-xml prettyprint-override"><code>&lt;soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"&gt;
    &lt;soap:Body&gt;
      &lt;soap:Fault&gt;
        &lt;faultcode&gt;soap:Server&lt;/faultcode&gt;
        &lt;faultstring&gt;No binding operation info while invoking unknown
        method with params unknown.&lt;/faultstring&gt;
      &lt;/soap:Fault&gt;
    &lt;/soap:Body&gt;
  &lt;/soap:Envelope&gt;
  </code></pre>
  
  <p>The generated <code>WSDL</code> is:</p>
  
  <pre class="lang-xml prettyprint-override"><code>&lt;wsdl:definitions xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
  xmlns:tns="http://ws.service.com/"
  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
  name="DeepThoughtService" targetNamespace="http://ws.service.com/"&gt;
    &lt;wsdl:types&gt;
      &lt;schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
      xmlns:tns="http://ws.service.com/"
      xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
      xmlns="http://www.w3.org/2001/XMLSchema"&gt;
        &lt;import namespace="http://ws.service.com/"
        schemaLocation="http://localhost:8084/DeepThoughtWS/services/DeepThoughtPort?xsd=deepthought_schema1.xsd" /&gt;
      &lt;/schema&gt;
    &lt;/wsdl:types&gt;
    &lt;wsdl:message name="whatIsTheAnswerResponse"&gt;
      &lt;wsdl:part element="tns:whatIsTheAnswerResponse"
      name="parameters"&gt;&lt;/wsdl:part&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:message name="whatIsTheAnswer"&gt;
      &lt;wsdl:part element="tns:whatIsTheAnswer" name="parameters"&gt;
      &lt;/wsdl:part&gt;
    &lt;/wsdl:message&gt;
    &lt;wsdl:portType name="DeepThought"&gt;
      &lt;wsdl:operation name="whatIsTheAnswer"&gt;
        &lt;wsdl:input message="tns:whatIsTheAnswer"
        name="whatIsTheAnswer"&gt;&lt;/wsdl:input&gt;
        &lt;wsdl:output message="tns:whatIsTheAnswerResponse"
        name="whatIsTheAnswerResponse"&gt;&lt;/wsdl:output&gt;
      &lt;/wsdl:operation&gt;
    &lt;/wsdl:portType&gt;
    &lt;wsdl:binding name="DeepThoughtServiceSoapBinding"
    type="tns:DeepThought"&gt;
      &lt;soap:binding style="document"
      transport="http://schemas.xmlsoap.org/soap/http" /&gt;
      &lt;wsdl:operation name="whatIsTheAnswer"&gt;
        &lt;soap:operation soapAction="" style="document" /&gt;
        &lt;wsdl:input name="whatIsTheAnswer"&gt;
          &lt;soap:body use="literal" /&gt;
        &lt;/wsdl:input&gt;
        &lt;wsdl:output name="whatIsTheAnswerResponse"&gt;
          &lt;soap:body use="literal" /&gt;
        &lt;/wsdl:output&gt;
      &lt;/wsdl:operation&gt;
    &lt;/wsdl:binding&gt;
    &lt;wsdl:service name="DeepThoughtService"&gt;
      &lt;wsdl:port binding="tns:DeepThoughtServiceSoapBinding"
      name="DeepThoughtPort"&gt;
        &lt;soap:address location="http://localhost:8084/DeepThoughtWS/services/DeepThoughtPort" /&gt;
      &lt;/wsdl:port&gt;
    &lt;/wsdl:service&gt;
  &lt;/wsdl:definitions&gt;
  </code></pre>
  
  <p>The <code>DeepThought</code> class includes:</p>
  
  <pre><code>@WebService(targetNamespace = "http://ws.service.com/", portName = "DeepThoughtPort", serviceName = "DeepThoughtService")
  public class DeepThought {
      public String whatIsTheAnswer(@WebParam(name = "arg0") String interviewer) {
          return ("The answer " + interviewer);
      }
  }
  </code></pre>
  
  <p>The console output at the time of request shows some errors too:</p>
  
  <pre><code>Feb 05, 2013 3:59:14 PM org.apache.cxf.service.invoker.AbstractInvoker invoke
  SEVERE: Invocation without a binding operation.
  Feb 05, 2013 3:59:14 PM org.apache.cxf.phase.PhaseInterceptorChain doDefaultLogging
  WARNING: Interceptor for {http://ws.service.com/}DeepThoughtService has thrown exception, unwinding now
  org.apache.cxf.interceptor.Fault: No binding operation info while invoking unknown method with params unknown.
      at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:59)
      at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
      at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
      at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
      at java.util.concurrent.FutureTask.run(Unknown Source)
      at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
      at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:107)
      at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
      at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
      at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239)
      at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:218)
      at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:163)
      at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137)
      at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:158)
      at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:243)
      at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:168)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
      at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:219)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
      at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002)
      at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
      at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      at java.lang.Thread.run(Unknown Source)
  
  Feb 05, 2013 3:59:14 PM org.apache.cxf.services.DeepThoughtService.DeepThoughtPort.DeepThought
  INFO: Outbound Message
  ---------------------------
  ID: 5
  Response-Code: 500
  Encoding: UTF-8
  Content-Type: text/xml
  Headers: {}
  Payload: &lt;soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"&gt;&lt;soap:Body&gt;&lt;soap:Fault&gt;&lt;faultcode&gt;soap:Server&lt;/faultcode&gt;&lt;faultstring&gt;No binding operation info while invoking unknown method with params unknown.&lt;/faultstring&gt;&lt;/soap:Fault&gt;&lt;/soap:Body&gt;&lt;/soap:Envelope&gt;
  </code></pre>