Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JavaEE6中部署具有相同serviceName的多个Web服务_Java_Web Services_Glassfish - Fatal编程技术网

在JavaEE6中部署具有相同serviceName的多个Web服务

在JavaEE6中部署具有相同serviceName的多个Web服务,java,web-services,glassfish,Java,Web Services,Glassfish,如果我想在一个JavaEE6EJB模块中部署两个具有相同serviceName(但不同targetNamespace)的WebService,我会遇到问题 这里是我的设置: my-webservice-ejb.jar src/main/java/ --de.xx.MyService1.java @无状态(name=“MyServiceEJB1”) @WebService(targetNamespace=“http://de.xx”,serviceName=“MyService”,portNam

如果我想在一个JavaEE6EJB模块中部署两个具有相同serviceName(但不同targetNamespace)的WebService,我会遇到问题

这里是我的设置:

my-webservice-ejb.jar

  • src/main/java/
    --de.xx.MyService1.java
    @无状态(name=“MyServiceEJB1”)
    @WebService(targetNamespace=“http://de.xx”,serviceName=“MyService”,portName=“myserviceceport”,wsdlLocation=“META-INF/wsdl/MyService1.wsdl”)
    --de.xx.MyService2.java
    @无状态(name=“MyServiceEJB2”)
    @WebService(targetNamespace=“http://de.xx.v2”,serviceName=“MyService”,portName=“myserviceceport”,wsdlLocation=“META-INF/wsdl/MyService2.wsdl”)

  • src/main/resources/META-INF/wsdl/
    --MyService1.wsdl(使用targetNamespace定义MyService)http://de.xx)
    --MyService2.wsdl(使用targetNamespace定义MyService)http://de.xx.v2)

Glassfish通过部署在此错误中运行:

无法初始化终结点:错误为:
javax.xml.ws.webservice异常:WSDL文件/my-webservice-ejb.jar/META-INF/WSDL/MyService1.WSDL 有以下服务[{http://de.xx}我的服务]但不是{http://de.xx.v2}我的服务
也许您忘记在@WebService/@WebServiceProvider中指定serviceName和/或targetNamespace了

如果我在不同的EJB.jar(my-webservice1-EJB.jar和my-webservice2-EJB.jar)中拆分了两个服务EJB(相同的代码和注释),部署运行时不会出现任何问题