javaweb-servicesejbjava-ws

Call a Web Service SOAP with JAVA-WS



I have a big problem, for me who is very very very new in Web Service.
In a package of a project A, i have a proxy. In this proxy (which is an EJB),
i "injected" an EJB called referenceWebService via the annotation @EJB(name = "xxxxx").
referenceWebService corresponds to an interface (annotated @WebService) located in project A
which is implemented by a class (annotated @WebService) in an other project.

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


In a package of an other project B, i have my WebService (an EJB also) - the implementation of my Web Service - annotated with @WebService : the wsdl of this web service is automatically generated by the JBoss server.
For this Web Service, i put value only for these 2 attributes of @WebService : targetNameSpace and name).
The link between the 2 differents projects is made because in the project A, i have a package called api where i put the interface referenceWebService, and the implementation of this interface is in the project B.
The call of the Web Service, in project A, does not work.
I am looking for a very simple solution.
When i see the JSR, i understand that i have to use the class javax.xml.ws.Service. Is it a good way ?
And, if yes, i have replace the attribute called referenceWebService in the proxy, by an other which extends the javax.xml.ws.Service ?

When i replace in the proxy, for the attribute called referenceWebService, the @EJB annotation by the @WebServiceRef annotation, it does not work.
Thank you very much for your help.


Solution

  • Like i wanted, i have created a class which extends the class javax.xml.ws.Service I wrote this question because i was not certain, but, now, after reading documentation about Web Services, i am certain.
    I have to use an instance of this class as a reference of my Web Service.