[jboss-user] [JBossWS] - Problems accessing SSL webservice

Vitor Isaia do-not-reply at jboss.com
Thu Sep 4 10:37:35 EDT 2008


Greetings,

I have a working jax-ws webservice deployed, wich I access it through a java standalone client. Now I need to enable SSL on it. I've configured jboss-web.deployer/server.xml to create the SSL connection, and now I have my webservice successfully deployed in the following URL:

https://localhost:8443/abc/deteccaopcws?wsdl

with:

...
  | <service name="DeteccaoPCWSService">
  | <port binding="tns:DeteccaoPCWSBinding" name="DeteccaoPCWSPort">
  | <soap:address location="https://localhost:8443/abc/deteccaopcws"/>
  | </port>
  | </service>
  | ...

and in the webservice class:

...
  | @WebService(targetNamespace = "xyz.abc.deteccaoPC")
  | @WebContext(contextRoot = "/abc", urlPattern = "/deteccaopcws", transportGuarantee="CONFIDENTIAL")
  | @Stateless
  | @HandlerChain(file = "deteccaopc-handler.xml")
  | public class DeteccaoPCWS
  | ...

The problem is, since I've turned on SSL, my client doesn't work anymore...
I always get a "Target endpoint no set" exception:

Exception in thread "main" javax.xml.ws.WebServiceException: org.jboss.ws.WSException: Target endpoint address not set
  | 	at org.jboss.ws.core.jaxws.client.ClientImpl.handleRemoteException(ClientImpl.java:410)
  | 	at org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java:316)
  | 	at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:172)
  | 	at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:152)
  | 	at $Proxy16.processarDeteccao(Unknown Source)
  | 	at deteccaopc.abc.xyz.client.SingleClient.main(SingleClient.java:70)
  | Caused by: org.jboss.ws.WSException: Target endpoint address not set
  | 	at org.jboss.ws.core.CommonClient.invoke(CommonClient.java:334)
  | 	at org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java:304)
  | 	... 4 more

Here is my client service:

@WebServiceClient(name = "DeteccaoPCWSService", 
  | targetNamespace = "xyz.abc.deteccaoPC", wsdlLocation = "https://localhost:8443/abc/deteccaopcws?wsdl")
  | public class DeteccaoPCWSService
  |     extends Service
  | {
  | 
  |     private final static URL DETECCAOPCWSSERVICE_WSDL_LOCATION;
  |     private final static Logger logger = Logger.getLogger(deteccaopc.abc.xyz.DeteccaoPCWSService.class.getName());
  | 
  |     static {
  |         URL url = null;
  |         try {
  |             URL baseUrl;
  |             baseUrl = deteccaopc.abc.xyz.DeteccaoPCWSService.class.getResource(".");
  |             url = new URL(baseUrl, "https://localhost:8443/abc/deteccaopcws?wsdl");
  |         } catch (MalformedURLException e) {
  |             logger.warning("Failed to create URL for the wsdl Location: 'https://localhost:8443/abc/deteccaopcws?wsdl', retrying as a local file");
  |             logger.warning(e.getMessage());
  |         }
  |         DETECCAOPCWSSERVICE_WSDL_LOCATION = url;
  |     }
  |     public DeteccaoPCWSService(URL wsdlLocation, QName serviceName) {
  |         super(wsdlLocation, serviceName);
  |     }
  |     public DeteccaoPCWSService() {
  |         super(DETECCAOPCWSSERVICE_WSDL_LOCATION, new QName("xyz.abc.deteccaoPC", "DeteccaoPCWSService"));
  |     }
  |     @WebEndpoint(name = "DeteccaoPCWSPort")
  |     public DeteccaoPCWS getDeteccaoPCWSPort() {
  |         return super.getPort(new QName("xyz.abc.deteccaoPC", "DeteccaoPCWSPort"), DeteccaoPCWS.class);
  |     }
  | }

And in the client, I'm setting theseVM  properties :

-Djavax.net.ssl.trustStore=/home/vitor/Desktop/wsse.truststore
  | -Djavax.net.ssl.trustStorePassword=jbossws

So, the hole code I've show you was working without SSL, in the URL http://localhost:9090/abc/deteccaopcws?wsdl

Even having that exception (Target endpoint no set) I know the webservice is deployed because I can successfully access it in my browser...

One thing I suspect is: Since the certificate is a self-signed certficate, when I acess it in the browser it alerts me about it, asking for the confirmation. I guess that's what is causing the error.

I appreciate any help, thanks.

Vitor Isaia


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4174316#4174316

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4174316



More information about the jboss-user mailing list