我尝试在GlassFish JAX-WS Web服务中部署 以下是Web服务定义的类的片段。请注意,我在EJB端点上实现了Provider接口。无法在GlassFish中同时使用@WebserviceProvider和@Stateless部署Web服务
@Stateless(name = "HelloWorldEJBWS")
@WebServiceProvider(
portName = "HelloWorldWSPort",
serviceName = "HelloWorldWSService",
targetNamespace = "http://ivan.com/",
wsdlLocation ="HelloWorldEJBProvider.wsdl")
@ServiceMode(value = Service.Mode.PAYLOAD)
public class HelloWorldEJBWS implements Provider<Source> {
public Source invoke(final Source inRequestMessage) {
...
}
}
问题是关于在GlassFish(3.1.2.2)中部署服务的问题。 F.
[#| 2012-09-08T16:39:15.682-0400 | INFO | glassfish3.1.2 | javax.enterprise.system。使用EJB的可移植JNDI名称HelloWorldEJBWS:[java:global/JAX-WS_GreetingEJBMutualAuthProvider/HelloWorldEJBWS,java:global/JAX -WS_GreetingEJBMutualAuthProvider/HelloWorldEJBWS javax.xml.ws.Provider] |#]
[#| 2012-09-08T16:39:15.792-0400 |信息| glassfish3.1.2 | javax.enterprise.webservices.org.glassfish .webservices | _ThreadID = 20; _ThreadName =螺纹-2; | WS00019:EJB端点部署 JAX-WS_GreetingEJBMutualAuthProvider在地址监听在HTTP:// ABRAMOV1:8088/HelloWorldWSService/com.ivan.wsejb.provider.HelloWorldEJBWS |# ]
E它显示端点被部署 - 不是。我无法访问此端点,并且它未在GlassFish控制台中显示。 41:2012-09-08T16 |
为了比较我使用@WebService但不@WebServiceProvider
[#提供当我部署的服务日志50.514-0400 |信息| glassfish3.1.2 | javax.enterprise .webservices.org.glassfish.webservices | _ThreadID = 22; _ThreadName =螺纹-2; | WS00019:EJB端点部署 JAX-WS_GreetingEJBMutualAuth在地址监听在HTTP:// ABRAMOV1:8088/HelloWorldEJBWSService/HelloWorldEJBWS |#]
在这种情况下端点正确部署,一切工作正常。
这里被剪断的代码,当我申请@WebService
@Stateless(name = "HelloWorldEJBWS")
@WebService()
public class HelloWorldEJBWS {
public String hello(final String inMessage) {
...
}
}
难道我做错了什么?