Java 如何在glassfish中从一个容器调用另一个容器中的Web服务

Java 如何在glassfish中从一个容器调用另一个容器中的Web服务,java,web-services,glassfish,jax-ws,Java,Web Services,Glassfish,Jax Ws,我在两个单独的服务器A和B中的两个容器上部署了Web服务。 “服务器A”中的webMethod需要调用“服务器B”中的webMethod 我已经为服务器B创建了一个客户端存根。我试图让“服务器a”使用这个客户端存根并与服务器B对话。我在尝试实例化端口对象时遇到异常 具体位于:service.getABCBeanPort() (使用JAX-WS库) 我的方法正确吗?有没有更好的方法在远程服务器上调用Web服务 这是我的示例代码 公共无效自动收费(){ 试一试{ BedHistoryManager

我在两个单独的服务器A和B中的两个容器上部署了Web服务。 “服务器A”中的webMethod需要调用“服务器B”中的webMethod

我已经为服务器B创建了一个客户端存根。我试图让“服务器a”使用这个客户端存根并与服务器B对话。我在尝试实例化端口对象时遇到异常 具体位于:service.getABCBeanPort()

(使用JAX-WS库)

我的方法正确吗?有没有更好的方法在远程服务器上调用Web服务

这是我的示例代码

公共无效自动收费(){

试一试{
BedHistoryManagerBeanService bs=新的BedHistoryManagerBeanService(); BedHistoryManagerBean bb=bs.getBedHistoryManagerBeanPort();//此处
}catch(异常e){ System.out.println(“异常:+e.getMessage()); }
}


下面是异常堆栈跟踪

com.sun.ejb.containers.BaseContainer.completeNewTx(BaseContainer.java:3794)com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3596)com.sun.ejb.containers.WebServiceInvocationHandler.invoke(WebServiceInvocationHandler.java:201)$Proxy170.autoostroomcharges(未知源)在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:39)在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)在java.lang.reflect.Method.invoke(Method.java:597)在com.sun.enterprise.webservice.invokeempl.invokecom.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:146)com.sun.xml.ws.server.sei.EndpointMethodHandler.invoke(EndpointMethodHandler.java:257)com.sun.xml.ws.ws.ws.server.sei.sei.sei.sei.EndpointMethodHandler.invoke(EndpointMethodHandler.java:257)com.sun.sun.xml.ws.ws.server.sei.sei.seinvokerTube.processRequest(seinvokerTube.java:93)上com.sun.xml.ws.api.pipe.Fiber.uu-doRun(Fiber.java:595)com.sun.xml.ws.api.pipe.Fiber.u-doRun(Fiber.java:554)com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:539)com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:436)com.sun.xml.ws.api.pipe.helper.AbstractTubeImpl.process(AbstractImpl.java:106)com.sun.xml.ws.api.pipe.helper.PipeAdapter.processRequest(PipeAdapter.java:115)com.sun.xml.ws.api.pipe.Fiber.\uu-doRun(Fiber.java:595)com.sun.xml.ws.api.pipe.Fiber.\u-doRun(Fiber.java:554)com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:539)com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:436)com.sun.xml.ws.api.pipe.helper.AbstractTubeImpl.process(AbstractTubeImpl.java:106)com.sun.xml.ws.tx.service.TxServerPipe.process(TxServerPipe.java:317)com.sun.enterprise.webservice.CommonServerSecurityType.processRequest(CommonServerSecurityType.java:222)上com.sun.xml.ws.api.pipe.helper.PipeAdapter.processRequest(PipeAdapter.java:115)com.sun.xml.ws.api.pipe.Fiber.\uu-doRun(Fiber.java:595)com.sun.xml.ws.api.pipe.Fiber.\u-doRun(Fiber.java:554)com.sun.xml.ws.api.pipe.Fiber.doRuncom.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:436)com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:243)com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:444)com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:244)位于com.sun.enterprise.webservice.Ejb3MessageDispatcher.handlePost(Ejb3MessageDispatcher.java:113)的com.sun.enterprise.webservice.Ejb3MessageDispatcher.invoke(Ejb3MessageDispatcher.java:87)的com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:135)在com.sun.enterprise.webservice.EjbWebServiceServlet.dispatchToEjbEndpoint(EjbWebServiceServlet.java:228)在com.sun.enterprise.webservice.EjbWebServiceServlet.service(EjbWebServiceServlet.java:157)在javax.servlet.http.HttpServlet.service(HttpServlet.java:847)在com.sun.enterprise.web.AdHocContextValve.invoke(AdHocContextValve.java:114)上org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:87)org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:222)org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:166)org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:288)com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeApter(DefaultProcessorTask.java:647)com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:579)com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:831)com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)com.sun.enterprise.web.conne