2014-12-30 72 views
0

在我的應用程序中,我試圖公開一個soap web服務並執行基本操作。這是我所做的:Apache Camel CXF SOAP WS WSDL

  1. 按照JAX-WS標準創建與soap操作的接口。加入所有需要的註解
  2. 在web.xml加入
<servlet> 
     <servlet-name>CXFServlet</servlet-name> 
     <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> 
     <load-on-startup>1</load-on-startup>    
    </servlet> 
    <servlet-mapping> 
     <servlet-name>CXFServlet</servlet-name> 
     <url-pattern>/webservices/*</url-pattern> 
    </servlet-mapping> 
  • 創建一個路由

    from uri="cxf:/myservice?serviceClass="x.x.x.myInterface&amp;dataFormat=PAYLOAD" 
    
  • 我能夠看到瀏覽器中的WSDL詳細信息(localhost:8080/pro/webservices/myservice?wsdl),但如果我使用SOAP UI項目訪問服務,則我的請求不會通過。我提示以下錯誤:在SOAP UI項目:

    <soap:Body> 
        <soap:Fault> 
         <faultcode>soap:Server</faultcode> 
         <faultstring>org/apache/cxf/frontend/MethodDispatcher</faultstring> 
        </soap:Fault> 
    

    如果我用我的dataFormat=MESSAGE服務由SOAPUI並得到響應調用。但是我的WSDL沒有進入瀏覽器。請告訴我必須在cxf組件中使用哪個dataFormat。

    回答

    0

    它是jar問題。使用最新的罐子後,它工作正常