2012-01-02 22 views
0

我有一個CXF web服務,我將使用x509證書進行安全保護。我嘗試的一種方法是用mule 3.x將其包裝在servlet端點上。嵌入在JBoss中的Mule 3上的CXF WS-Security

<servlet:inbound-endpoint path="localhost:8080/myapp/mule/services/authrequest"> 
     <cxf:jaxws-service 
      serviceClass="myapp.webservices.v1_01_40.AuthPortType" 
      validationEnabled="false"> 
     </cxf:jaxws-service> 
     <custom-security-filter class="myapp.InitialSecurity"></custom-security-filter> 
    </servlet:inbound-endpoint> 

的web.xml

<servlet> 
    <servlet-name>muleServlet</servlet-name> 
    <servlet-class>org.mule.transport.servlet.MuleReceiverServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

<servlet-mapping> 
    <servlet-name>muleServlet</servlet-name> 
    <url-pattern>/mule/services/*</url-pattern> 
</servlet-mapping> 

<context-param> 
    <param-name>org.mule.config</param-name> 
    <param-value>xml config files</param-value> 
</context-param> 

<listener> 
    <listener-class>org.mule.config.builders.MuleXmlBuilderContextListener</listener-class> 
</listener> 

我試圖把它包在一個servlet嘗試使用我的自定義登錄模塊(JAAS)在JBoss。我不確定這是否是最好的方法。我真的需要在jBoss上擁有一個由x509證書保護的ws端點。我有這個場景使用Mule 1.x和jBoss 4.2.3以及一個自定義的JAAS登錄模塊。我需要遷移這個應用程序來騾3.x和jBoss 6.1。我在網上看到一些例子,告訴我必須更改郵件標題並添加其他內容,但我無法做到這一點。消息必須保持不變。

當我部署這個在JBoss 6.1我得到這個錯誤:

ERROR [org.mule.transport.servlet.MuleReceiverServlet] message: Endpoint "authrequest" not found: org.mule.api.transport.NoReceiverForEndpointException: Endpoint "authrequest" not found 

有人能幫忙嗎?

感謝

凱利

+0

從來沒有聽說過Mule3。爲什麼不使用[CXF + WS-Security](http://cxf.apache.org/docs/ws-security.html#WS-Security-UsingX.509Certificates)? – 2012-01-03 13:21:56

回答

0

servlet的入站終點的路徑不是一個完整的URI,但你的資源的相對路徑。

嘗試:

<servlet:inbound-endpoint path="authrequest">