0

我阅读了很多关于这个问题的帖子,我确实找到了一些可以解决这个问题的帖子——但不幸的是,我无法真正理解如何解决我的问题。

现在我正在创建 WebService(使用 Tomcat 7),并且我想共享接口。我有大约 8 个相互关联的接口。例如:

@WebService
@SOAPBinding(style = Style.RPC)
interface A {
  public String method1();
}

@WebService
@SOAPBinding(style = Style.RPC)
interface B {
  public String method1();
  public A getA();
}

@WebService
@SOAPBinding(style = Style.RPC)
interface C {
  public A getA();
  public B getB();
}

问题是,在我创建 WAR(用于接口 C)文件并尝试在 tomcat 中部署 web 服务后,我从 tomcat 收到一个错误,如下所示:

严重:WSSERVLET11:无法解析运行时描述符:com.sun.xml.ws.spi.db.DatabindingException:com.sun.xml.bind.v2.runtime.IllegalAnnotationsException:IllegalAnnotationExceptions com.mkyong.ws.ITest 计数为 1一个接口,而 JAXB 不能处理接口。此问题与以下位置有关:在 com.mkyong.ws.ITest

com.sun.xml.ws.spi.db.DatabindingException: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions com.mkyong.ws.ITest 是一个接口,JAXB 不能处理接口. 此问题与以下位置有关:在 com.mkyong.ws.ITest

有谁知道如何解决它?谢谢。

4

1 回答 1

0

不能使用 JAX-WS 返回接口类型。返回类型和参数必须是一个实际的类。RMI 将为此提供接口。JAX-WS 没有。

于 2013-01-02T07:37:53.230 回答