WSS4J + usertoken encryption
----------------------------
Key: WSS-22
URL: http://issues.apache.org/jira/browse/WSS-22
Project: WSS4J
Type: Bug
Environment: Windows 2000,Weblogic sp4, jdk 1.5, axis 1.2.1
Reporter: Rangaswamy Balakrishnan
Assigned to: Davanum Srinivas
Hi,
I am trying to develop a webservice with WSS4J. I am trying to have a usertoken
and encrypt the message as such.
my client_deploy.wsdd looks like this
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<transport name="http" pivot="java:org.apache.axis.transport.http.HTTPSender"/>
<globalConfiguration>
<requestFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllSender" >
<parameter name="action" value="UsernameToken Encrypt"/>
<parameter name="user" value="trialserviceimpl"/>
<parameter name="passwordCallbackClass"
value="trial.client.PWCallback"/>
<parameter name="passwordType" value="PasswordText" />
<parameter name="addUTElement" value="Nonce Created" />
<parameter name="encryptionPropFile" value="crypto.properties" />
<parameter name="encryptionKeyIdentifier" value="X509KeyIdentifier"
/>
<parameter name="encryptionUser"
value="Trial" />
</handler>
</requestFlow>
</globalConfiguration >
</deployment>
Deploy.wsdd
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<service name="TrialServiceImpl" provider="java:RPC" >
<requestFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllReceiver">
<parameter name="action" value="UsernameToken Encrypt"/>
<parameter name="passwordCallbackClass"
value="trial.service.PWCallback"/>
<parameter name="passwordType" value="PasswordDigest"/>
<parameter name="decryptionPropFile" value="crypto.properties"
/>
</handler>
</requestFlow>
<parameter name="className" value="trial.service.TrialServiceImpl"/>
<parameter name="allowedMethods" value="*"/>
<parameter name="scope" value="application"/>
</service>
</deployment>
crypto.properties is
org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
org.apache.ws.security.crypto.merlin.keystore.type=jks
org.apache.ws.security.crypto.merlin.keystore.password=testing
org.apache.ws.security.crypto.merlin.keystore.alias=Trial
org.apache.ws.security.crypto.merlin.alias.password=testing
org.apache.ws.security.crypto.merlin.file=trials.keystore
when i run the application i get this error
AxisFault
faultCode: {http://xml.apache.org/axis/}HTTP
faultSubcode:
faultString: (500)Internal Server Error
faultActor:
faultNode:
faultDetail:
{}:return code: 500
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Draft//EN">
<HTML>
<HEAD>
<TITLE>Error 500--Internal Server Error</TITLE>
<META NAME="GENERATOR" CONTENT="WebLogic Server">
</HEAD>
<BODY bgcolor="white">
<FONT FACE=Helvetica><BR CLEAR=all>
<TABLE border=0 cellspacing=5><TR><TD><BR CLEAR=all>
<FONT FACE="Helvetica" COLOR="black"
SIZE="3"><H2>Error 500--Internal Server Error</H2>
</FONT></TD></TR>
</TABLE>
<TABLE border=0 width=100% cellpadding=10><TR><TD VALIGN=top
WIDTH=100% BGCOLOR=white><FONT FACE="Courier
New"><pre>java.lang.NoClassDefFoundError
at
org.apache.axis.configuration.FileProvider.configureEngine(FileProvider.java:179)
at org.apache.axis.AxisEngine.init(AxisEngine.java:172)
at org.apache.axis.AxisEngine.<init>(AxisEngine.java:156)
at org.apache.axis.server.AxisServer.<init>(AxisServer.java:88)
at
org.apache.axis.server.DefaultAxisServerFactory.createServer(DefaultAxisServerFactory.java:109)
at
org.apache.axis.server.DefaultAxisServerFactory.getServer(DefaultAxisServerFactory.java:73)
at org.apache.axis.server.AxisServer.getServer(AxisServer.java:73)
at
org.apache.axis.transport.http.AxisServletBase.getEngine(AxisServletBase.java:185)
at
org.apache.axis.transport.http.AxisServletBase.getOption(AxisServletBase.java:396)
at
org.apache.axis.transport.http.AxisServletBase.init(AxisServletBase.java:112)
at org.apache.axis.transport.http.AxisServlet.init(AxisServlet.java:156)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
at
weblogic.servlet.internal.ServletStubImpl$ServletInitAction.run(ServletStubImpl.java:1028)
at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at
weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubImpl.java:904)
at
weblogic.servlet.internal.ServletStubImpl.createInstances(ServletStubImpl.java:883)
at
weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:822)
at
weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.java:535)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:373)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:315)
at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6718)
at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3764)
at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2644)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
</pre></FONT></TD></TR>
</TABLE>
</BODY>
</HTML>
{http://xml.apache.org/axis/}HttpErrorCode:500
(500)Internal Server Error
at
org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java:693)
at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:141)
at
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
at org.apache.axis.client.Call.invokeEngine(Call.java:2754)
at org.apache.axis.client.Call.invoke(Call.java:2737)
at org.apache.axis.client.Call.invoke(Call.java:2413)
at org.apache.axis.client.Call.invoke(Call.java:2336)
at org.apache.axis.client.Call.invoke(Call.java:1793)
at
trial.client.TrialServiceImplSoapBindingStub.retrieveData(TrialServiceImplSoapBindingStub.java:102)
at trial.test.TrialTest.main(TrialTest.java:60)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:86)
i don't know wat the problem is.
Please do help me in solving this.
Thanks in advance.
Balakrishnan
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]