如何覆盖使用@WebService和@Staless定义的JAX-WS Web服务端点?

时间:2016-06-08 06:39:37

标签: java-ee ejb jax-ws

我使用@WebService和@Stateless注释了类,如下面的代码段所示。

@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提供者的。

2 个答案:

答案 0 :(得分:0)

可以在此处下载用于XML Web服务的Java API(JAX-WS)规范:

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

JSR 181,Java平台的Web服务元数据也是相关的,可以从同一页面下载。它包含WebService注释的完整规范。

使用@WebService注释属性可以覆盖默认值,这里记录了它们:

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

示例:

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

答案 1 :(得分:0)

我不明白这个问题。端点是这样的URL:

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

  • 服务器和端口由您部署的应用服务器定义。

  • appContext和webservice servlet url模式在web.xml中定义。您还可以在部署时更改appContext。

  • Web服务名称是Class的名称或您使用serviceName注释选择的值。

您要覆盖的值是什么?