-1


我有一个很大的问题,对于 Web 服务非常非常非常新的我来说。
在项目 A 的一个包中,我有一个代理。在这个代理(它是一个 EJB)中,
我通过注解 @EJB(name = "xxxxx") “注入”了一个名为 referenceWebService 的 EJB。
referenceWebService 对应于位于项目 A 中的接口(注释为 @WebService),该接口
由另一个项目中的类(注释为 @WebService)实现。

<code>
@Stateless(name = "zzzzzzz")
public class MyProxy {
  @EJB(name = "xxxxx")
  myEJBType referenceWebService;
}
</code>


在另一个项目 B 的包中,我有我的 WebService(也是一个 EJB)——我的 Web 服务的实现——用 @WebService 注释:这个 Web 服务的 wsdl 是由 JBoss 服务器自动生成的。
对于这个 Web 服务,我只为 @WebService 的这两个属性赋值:targetNameSpace 和 name)。
两个不同项目之间的链接是因为在项目 A 中,我有一个名为 api 的包,我在其中放置了接口 referenceWebService,并且该接口的实现在项目 B
中。Web 服务的调用,在项目 A 中, 不起作用。
我正在寻找一个非常简单的解决方案。
当我看到 JSR 时,我明白我必须使用 javax.xml.ws.Service 类。这是一个好方法吗?
而且,如果是的话,我已经将代理中名为 referenceWebService 的属性替换为另一个扩展 javax.xml.ws.Service 的属性?

当我在代理中替换时,对于名为referenceWebService 的属性,@EJB 注释由@WebServiceRef 注释,它不起作用。
非常感谢您的帮助。

4

1 回答 1

0

就像我想要的那样,我创建了一个扩展类 javax.xml.ws.Service 的类。我写了这个问题是因为我不确定,但是现在,在阅读了有关 Web 服务的文档之后,我确定了。
我必须使用这个类的一个实例作为我的 Web 服务的引用。

于 2014-12-05T10:49:24.167 回答