2016-06-08 25 views
1

我有@WebService和@Stateless註解的類,如下面的代碼片段所示。如何覆蓋使用@WebService和@Staless定義的JAX-WS Web服務端點?

@Stateless 
@WebService 
public class BookManagerService implements BookManager{ 
// Body 
} 

我想知道什麼是哪個端點,這個Web服務將被默認部署定義規範。是否有任何JAX-WS提供程序獨立機制來覆蓋此默認端點?

編輯:WebLogic上的默認模式爲例子如下:

http(s)://<server.hostname>:<server.port>/<className>/<className>Service 

我希望能夠壓倒一切後:如果此終結點格式

http(s)://<server.hostname>:<server.port>/ 

,我也想知道標準(並且因此定義在哪裏),或者它是JAX-WS提供程序特定的。

回答

0

Java的API,用於XML Web服務(JAX-WS)規範可以在這裏下載:

http://www.oracle.com/technetwork/java/javaee/tech/webservices-139501.html

相關的還有JSR 181,Web服務元數據的Java平臺,可以從以下網址下載相同的頁面。它包含WebService註釋的完整規範。

重寫默認值是可能的@WebService批註的屬性,它們被記錄在這裏:

http://docs.oracle.com/javaee/6/api/javax/jws/WebService.html

例子:

http://tomee.apache.org/examples-trunk/simple-webservice/README.html

+0

我不認爲這有助於我的具體情況:)。我知道我可以用註釋覆蓋東西,但問題是重寫端點!我不關心WSDL的位置部分:)。 – Abbadon

+0

@Abbadon你可以編輯你的問題,並顯示你的實際終點和期望的終點值的例子嗎? – mjn

+0

已完成:) – Abbadon

0

我dont't明白的問題。端點是一個URL這樣的:

http://server:port/appContext/ws-servlet-url/ws-name

  • 服務器和端口是由你在哪裏部署應用服務器定義。

  • appContext和webservice servlet url模式在web.xml中定義。您也可以在部署時更改appContext。

  • webservice名稱是Class的名稱或您使用serviceName註釋選擇的值。

什麼是你想重寫的值?

+0

這對於不是無狀態會話bean的Web服務可能是正確的,但對於使用@ WebService和@ Stateless註釋的Web服務,至少在WebLogic上,默認模式如下: http(s) :// <服務器。主機名>://服務 – Abbadon

相關問題