抛出NoEndPointException的Java Axis Webservice存根

Dan*_*Dan 5 java axis soap web-services

我正在使用带有轴的网络服务.我从我调用的任何webservice方法获取NoEndpointException.

它来自这个生成的代码.

if (super.cachedEndpoint == null) {
    throw new org.apache.axis.NoEndPointException();
}
Run Code Online (Sandbox Code Playgroud)

所以它似乎表明我没有正确设置端点.

这就是我实例化存根的方式:

MyService_ServiceLocator myService_ServiceLocator = new MyService_ServiceLocator();
MyService_PortType webservice = new MYServiceSOAPStub(myService_ServiceLocator);
Run Code Online (Sandbox Code Playgroud)

我认为这有问题.我是否需要传递网络服务地址?它似乎已经集成到存根中.

Gui*_*ume 7

它可能取决于Axis版本(我使用的是1.4版本),但我建议您使用定位器中的getYourPortType()方法.您不必提供您的Web服务URL(因为它存储在生成的文件中).

使用你的样本会是这样的:

MyService_ServiceLocator myService_ServiceLocator = new MyService_ServiceLocator();
MyService_PortType webservice = myService_ServiceLocator.getMyService_PortType();
Run Code Online (Sandbox Code Playgroud)