Zdravim konferenciu, mame existujucu web aplikaciu (spring-mvc, hibernate) a pre zakaznika potrebujeme vytvorit web service. Mojou prvou otazkou je ci je to dobry pristup "rozsirit" existujucu web aplikaciu o web service alebo je to lepsie mat ako samostatny projekt ?
Ked som to vyskusal ako samostatny projekt, tak bez problemov z browsera aj z client programu viem zavolat servisy. Ked som to skusil dat uz do existujuceho projektu a ked sa snazim ziskat WSDL web servicu z browsera pomocou linky http://localhost:7001/ezu/hello?wsdl tak to bez problemov ide ale z client programu dostanem exception : Exception in thread "main" javax.xml.ws.WebServiceException: java.net.ProtocolException: Server redirected too many times (20) at com.sun.xml.ws.transport.http.client.HttpClientTransport.readResponseCodeAndMessage(HttpClientTransport.java:221) at com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:204) at com.sun.xml.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:124) at com.sun.xml.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:118) Moja trieda web servisu : @WebService @SOAPBinding(style = Style.RPC) public class HelloWorld { @Resource private WebServiceContext wsContext; /** * Initializes the web service. */ @PostConstruct @WebMethod(exclude = true) public void init() { System.out.println("Web service initialized, service context: " + wsContext); } @WebMethod(operationName="getHelloWorld") public String getHelloWorld(@WebParam(name = "name") String name) { return "Hello World JAX-WS " + name; } } Pri inicializacii web servisu (init metoda) v logoch vidim pre WebServiceContext null. Zmeny co som vykonal vo web.xml su - pridal som : <listener> <listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class> </listener> <servlet> <servlet-name>hello</servlet-name> <servlet-class> com.sun.xml.ws.transport.http.servlet.WSServlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>hello</servlet-name> <url-pattern>/hello</url-pattern> </servlet-mapping> do projektu som pridal subor sun-jaxws.xml <?xml version="1.0" encoding="UTF-8"?> <endpoints xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime" version="2.0"> <endpoint name="HelloWorldWs" implementation="x.y.HelloWorld" url-pattern="/hello"/> </endpoints> Este by som dodal ze to bezi na weblogicu. Dakujem, z.