Pessoal,
Possuo uma aplicação feita com Spring, a qual acesso através do endereço http://localhost:8888/webservices e na qual tenho alguns Web Services publicados (configurados pelo Spring). Para acessar o WSDL, acesso diretamente http://localhost:8888/webservices/wsdl. Até aqui tudo funciona perfeitamente.
No entanto, possuo uma aplicação mais antiga na qual não posso utilizar Spring, mas preciso consumir o Web Service criado pela outra aplicação. Para isso, tentei o seguinte código em um Servlet para testes: [code]JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
factory.setAddress( “http://localhost:8888/webservices/wsdl” );
factory.setServiceClass( LdapService.class );
factory.create();[/code]
Neste momento ocorre a seguinte exceção: 05/07/2010 15:55:18 org.apache.cxf.service.factory.ReflectionServiceFactoryBean buildServiceFromClass
INFO: Creating Service {http://service.model.webservices.com.br/}LdapService from class br.com.testapp.test.ws.LdapService
10/07/05 15:55:18 java.lang.NullPointerException
10/07/05 15:55:18 at org.apache.cxf.binding.soap.SoapBindingFactory.createSoapBinding(SoapBindingFactory.java:183)
10/07/05 15:55:18 at org.apache.cxf.binding.soap.SoapBindingFactory.createBindingInfo(SoapBindingFactory.java:172)
10/07/05 15:55:18 at org.apache.cxf.binding.AbstractBindingFactory.createBindingInfo(AbstractBindingFactory.java:82)
10/07/05 15:55:18 at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createBindingInfo(AbstractWSDLBasedEndpointFactory.java:322)
10/07/05 15:55:18 at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpointInfo(AbstractWSDLBasedEndpointFactory.java:197)
10/07/05 15:55:18 at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:121)
10/07/05 15:55:18 at org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:52)
10/07/05 15:55:18 at org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:92)
10/07/05 15:55:18 at br.com.testapp.test.TestWS.doGet(TestWS.java:51)
10/07/05 15:55:18 at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
10/07/05 15:55:18 at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
10/07/05 15:55:18 at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
10/07/05 15:55:18 at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
10/07/05 15:55:18 at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
10/07/05 15:55:18 at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
10/07/05 15:55:18 at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
10/07/05 15:55:18 at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
10/07/05 15:55:18 at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
10/07/05 15:55:18 at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
10/07/05 15:55:18 at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
10/07/05 15:55:18 at java.lang.Thread.run(Thread.java:619)
Todo o código do Web Service fica na primeira aplicação, enquanto a classe LdapService da segunda aplicação é apenas uma interface. Peguei essa ideia do próprio site do Apache CXF.
Alguém sabe me dizer o que estou fazendo de errado? Sou iniciante em Web Services Java e gostaria muito que alguém pudesse me ajudar. Grato desde já.