Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.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
Playframework 接口在类装入器中不可见_Playframework_Classloader_Wsdl2java - Fatal编程技术网

Playframework 接口在类装入器中不可见

Playframework 接口在类装入器中不可见,playframework,classloader,wsdl2java,Playframework,Classloader,Wsdl2java,我是新手!框架,并使用wsdl2java工具。我在写剧本!需要与SOAP Web服务交互的应用程序。我拥有WSDL,并使用jaxws从中创建了对象。它创建了一组java类和一个接口。当我尝试进行webservice调用时,我得到一个错误,类加载器找不到接口。这是我的代码: MyWebserviceBeanService service = new MyWebserviceBeanService(); MyWebserviceRemote mwr = service.getMyWebservice

我是新手!框架,并使用wsdl2java工具。我在写剧本!需要与SOAP Web服务交互的应用程序。我拥有WSDL,并使用jaxws从中创建了对象。它创建了一组java类和一个接口。当我尝试进行webservice调用时,我得到一个错误,类加载器找不到接口。这是我的代码:

MyWebserviceBeanService service = new MyWebserviceBeanService();
MyWebserviceRemote mwr = service.getMyWebserviceBeanPort();
LoginResponse response = mwr.loginUser("xxx", "xxx");
请注意,“MyWebserviceRemote”是接口。
getMyWebserviceBeanPort
的代码是非常常见的,因为它是自动生成的,但这里是:

@WebEndpoint(name = "MyWebserviceBeanPort")
public MyWebserviceRemote getMyWebserviceBeanPort() {
    return super.getPort(new QName("http://xxxxxxxxxx/", "MyWebserviceBeanPort"), MyWebserviceRemote.class);
}
当我尝试调用一个方法时,例如上面提到的
logiuser
方法,我会得到以下stacktrace:

play.exceptions.JavaExecutionException: interface xxxx.xxxx.xxxx.MyWebserviceRemote is not visible from class loader
    at play.mvc.ActionInvoker.invoke(ActionInvoker.java:237)
    at Invocation.HTTP Request(Play!)
Caused by: java.lang.IllegalArgumentException: interface xxxx.xxxxx.xxxx.MyWebserviceRemote is not visible from class loader
    at com.sun.xml.ws.client.WSServiceDelegate.createEndpointIFBaseProxy(WSServiceDelegate.java:736)
    at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:408)
    at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:384)
    at com.sun.xml.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:366)
    at javax.xml.ws.Service.getPort(Service.java:119)
    at xxxx.xxxx.xxxx.MyWebserviceBeanService.getMyWebserviceBeanPort(MyWebserviceBeanService.java:72)
    at controllers.MyController.index(MyController.java:26)
    at play.mvc.ActionInvoker.invokeWithContinuation(ActionInvoker.java:557)
    at play.mvc.ActionInvoker.invoke(ActionInvoker.java:508)
    at play.mvc.ActionInvoker.invokeControllerMethod(ActionInvoker.java:484)
    at play.mvc.ActionInvoker.invokeControllerMethod(ActionInvoker.java:479)
    at play.mvc.ActionInvoker.invoke(ActionInvoker.java:161)
    ... 1 more
我真的不知道如何修复它,甚至不知道如何调试它。我在哪里看?我从哪里开始?我使用SoapUI测试了Web服务,它运行良好


谢谢

这是由于play框架中的jar文件冲突造成的(总共3个jar,名称中有“jax”)。我把它们拿走了,现在一切都好了。描述错误消息万岁:-)

我也有同样的问题,所以我必须从一个依赖项中排除此依赖项:

<exclusions>
    <exclusion>
        <groupId>com.sun.xml.ws</groupId>
        <artifactId>rt</artifactId>
    </exclusion>
</exclusions>

com.sun.xml.ws
rt