[jboss-user] [JBoss Web Services] New message: "Re: Problem with WS Security"

Scott Kubina do-not-reply at jboss.com
Thu Mar 11 13:12:38 EST 2010


User development,

A new message was posted in the thread "Problem with WS Security":

http://community.jboss.org/message/531463#531463

Author  : Scott Kubina
Profile : http://community.jboss.org/people/wkubina

Message:
--------------------------------------------------------------
I got this working, and here are a few suggestions on things to try that worked for me. This is the setup for an EJB web service on JBoss 6.0 M1 with WS-Security features of signing and encryption.
 
Server:
1. On the server side you need these files in your META-INF directory if you're doing and EJB web service.* Server truststore and keystore. Assuming you know how to set these up.
* jboss-wsse-server.xml (Lacking contents, let me know if you need them)

2. Then also on the server side you need to annotate your web service at the class level with http://community.jboss.org/mailto:with@EndpointConfig(configName"Standard WSSecurity Endpoint").
3. Setup JBoss so it logs the SOAP messages in the $JBOSS_HOME/server/<config>/log/server.log file. To do that go to $JBOSS_HOME/server/<config>/conf/jboss-log4j.xml and find this area and uncomment:
 
<code>
<!-- Enable JBossWS message tracing -->   <category name="org.jboss.ws.core.MessageTrace">     <priority value="TRACE"/>   </category></code>
 
Client:
1. On the client side you need these files in your META-INF directory.* Client truststore and keystore.
* jboss-wsse-client.xml (Lacking contents, let me know if you need them)
* standard-jaxws-client.config.xml (Lacking contents, let me know if you need them)

2. You can generate the classes needed for the WSDL using $JBOSS_HOME/bin/wscompile -k http://localhost:8080/servicejar/ServiceName?WSDL. Then take the classes in the generated output directory and add it to your client.
3. Then get the service by doing something like MyService service = new MyService_Service().getMyServiceSOAP();. That will contain the methods in your actual web service.
4. Then add this JVM argument to the client. This is in all likelihood what you're missing.* -Djava.endorsed.dirs=<Replace with $JBOSS_HOME>\lib\endorsed

5. If it doesn't work you should setup Log4j on the client, because the errors are likely being swallowed as some of the libraries are setup to spit the detailed error information into a log.
 
Hope that helps at least some.
         

--------------------------------------------------------------

To reply to this message visit the message page: http://community.jboss.org/message/531463#531463




More information about the jboss-user mailing list