okay, so maybe I do some errors on my server configuration. It's realy
weird because I put before the UsernameToken before and it works
properly... I'll go on the axis mailing list for asking it :)
Thanks for the help !
Best regards
Tabin Cédric
> It really doesn't look like an error of WSS4J. I gues that there is an
> Axis error. It haven't met this error yet, while I was working with Axis
> + wss4j.
>
> Sorry I can't help you more.
>
> Emanuel
>
> On 2/15/06, Tabin Cédric -[ thecaptain ]- <[EMAIL PROTECTED]>
> wrote:
>> re,
>>
>> mmmh the error still stays (am I damned :D). I put here the stack
>> trace error. I am not very familiar with axis/wss4j but doesn't that
>> come from the server ? I mean... it looks like the client is okay
>> isn't it ?
>>
>> Best regards
>>
>> Tabin Cédric
>>
>> - Using Crypto Engine
>> [org.apache.ws.security.components.crypto.Merlin] Exception in thread
>> "main" AxisFault
>> faultCode: {http://xml.apache.org/axis/}Server
>> faultSubcode:
>> faultString: Server Error
>> faultActor:
>> faultNode:
>> faultDetail:
>> {http://xml.apache.org/axis/}stackTrace:Server Error
>> at
>> org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:473)
>> at
>> org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
>> at
>> org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
>> at
>> org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>> at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>> at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>> at
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>> at
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>> at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>> at
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>> at
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>> at
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>> at
>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>> at
>> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:667)
>> at
>> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>> at
>> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>> at
>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>> at java.lang.Thread.run(Unknown Source)
>>
>> {http://xml.apache.org/axis/}hostname:whl00213b
>>
>> Server Error
>> at
>> org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
>> at
>> org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
>> at
>> org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
>> at
>> org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown
>> Source) at
>> org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown
>> Source)
>> at
>> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
>> Source)
>> at
>> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
>> Source)
>> at org.apache.xerces.parsers.XML11Configuration.parse(Unknown
>> Source) at
>> org.apache.xerces.parsers.XML11Configuration.parse(Unknown
>> Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown
>> Source) at
>> org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown
>> Source) at
>> org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown
>> Source) at
>> javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
>> at
>> org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
>> at
>> org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
>> at org.apache.axis.Message.getSOAPEnvelope(Message.java:435) at
>> org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
>> at
>> org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
>> at org.apache.axis.client.Call.invokeEngine(Call.java:2784) at
>> org.apache.axis.client.Call.invoke(Call.java:2767)
>> at org.apache.axis.client.Call.invoke(Call.java:2443)
>> at org.apache.axis.client.Call.invoke(Call.java:2366)
>> at org.apache.axis.client.Call.invoke(Call.java:1812)
>> at
>> eteaching.webservice.remote.MoodleETeachingSoapBindingStub.authenticate(MoodleETeachingSoapBindingStub.java:411)
>> at eteaching.Main.main(Main.java:45)
>>
>> > Try DirectReference instead of X509KeyIdentifier for the
>> > encryptionKeyIdentifier parametes.
>> >
>> > And as I am aware of it, yes wss4j automatically selects the private
>> key to decrypt the message.
>> >
>> > Emanuel
>> >
>> > On 2/15/06, Tabin Cédric -[ thecaptain ]- <[EMAIL PROTECTED]>
>> wrote:
>> >> Hi Emmanuel and thanks for the so fast reply :)
>> >>
>> >> So I tried what you wrote me and I obtain those files :
>> >>
>> >> CLIENT
>> >> ------
>> >> <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="Signature Encrypt"/>
>> >> <parameter name="user" value="privatekey"/>
>> >> <parameter name="passwordCallbackClass"
>> >> value="eteaching.webservice.security.WSMainPasswordCallback"/>
>> >> <parameter name="signaturePropFile" value="crypto.properties"
>> />
>> >> <parameter name="encryptionUser" value="privatekey" />
>> >> <parameter name="encryptionPropFile" value="crypto.properties"
>> />
>> >> <parameter name="encryptionKeyIdentifier"
>> >> value="X509KeyIdentifier" />
>> >> </handler>
>> >> </requestFlow>
>> >> </globalConfiguration>
>> >> </deployment>
>> >>
>> >> SERVER
>> >> ------
>> >> <deployment xmlns="http://xml.apache.org/axis/wsdd/"
>> >> xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
>> >>
>> >> <service name="MoodleETeaching" provider="java:RPC">
>> >>
>> >> <requestFlow>
>> >> <handler
>> type="java:org.apache.ws.axis.security.WSDoAllReceiver">
>> >> <parameter name="passwordCallbackClass"
>> >> value="eteaching.webservice.security.WSMoodlePasswordCallback"/>
>> >> <parameter name="action" value="Signature Encrypt"/>
>> >> <parameter name="signaturePropFile" value="crypto.properties"
>> />
>> >> <parameter name="decryptionPropFile" value="crypto.properties" />
>> >> </handler>
>> >> </requestFlow>
>> >>
>> >> <parameter name="scope" value="Session" />
>> >> <parameter name="className"
>> >> value="eteaching.webservice.MoodleETeaching"/>
>> >> <parameter name="allowedMethods" value="*"/>
>> >>
>> >> </deployment>
>> >>
>> >> but the server error stays :( I wonder why it wasn't working when I
>> didn't specifiy the encryptionPropFile and the
>> decryptionPropFile... the soap requests won't be encrypted ? I'm
>> following the tutorials on this page :
>> http://ws.apache.org/wss4j/package.html on "Combine Signature and
>> Encryption" !
>> >>
>> >> "Yes, the encryption is done with the public key so only the owner
>> of the private key can decrypt it." Yes, but does wss3j
>> automatically select the private key for the decryption on the
>> server ? or must I specify something in my deployment wsdd ???
>> >>
>> >> Best regards
>> >>
>> >> Tabin Cédric
>> >>
>> >> > Hi Tabin!
>> >> >
>> >> > In the client wsdd configuration settings you have to set the
>> encryption properties also, meaning the parameters:
>> encryptionUser
>> >> (which should be the alias of the certificate used to encrypt),
>> encryptionKeyIdentifier and encryptionPropFile (crypto.properties).
>> >> >
>> >> > On the server side you have to set the decryptionPropFile
>> >> > (crypto.properties to locate the keystore with the private key
>> that
>> >> should be used to decrypt).
>> >> >
>> >> > Yes, the encryption is done with the public key so only the owner
>> of
>> >> the private key can decrypt it.
>> >> >
>> >> > Hope it helps!
>> >> >
>> >> > Emanuel
>> >> >
>> >> > On 2/15/06, Tabin Cédric -[ thecaptain ]-
>> <[EMAIL PROTECTED]>
>> >> wrote:
>> >> >> Hi all !
>> >> >>
>> >> >> I'm trying to set up the Signature Encrypt between my
>> >> >> client/webservice. As I can see, the signature & encryption are
>> >> okay for my client but the server doesn't work : he throws me an
>> Server Error (not very useful :D). Here are my configurations :
>> >> >>
>> >> >> CLIENT
>> >> >> ------
>> >> >>
>> >> >> <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="Signature Encrypt"/>
>> >> >> <parameter name="user" value="privatekey"/>
>> >> >> <parameter name="passwordCallbackClass"
>> >> >> value="eteaching.webservice.security.WSMainPasswordCallback"/>
>> >> >> <parameter name="signaturePropFile"
>> value="crypto.properties"
>> >> />
>> >> >> </handler>
>> >> >> </requestFlow>
>> >> >> </globalConfiguration>
>> >> >> </deployment>
>> >> >>
>> >> >> I use the xml like this into axis :
>> >> >> EngineConfiguration config = new
>> >> >> FileProvider("mainclientconfig.wsdd"); MoodleETeachingService
>> >> service = new MoodleETeachingServiceLocator(config, url);
>> >> >>
>> >> >> My crypto.properties :
>> >> >> 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=security
>> >> org.apache.ws.security.crypto.merlin.keystore.alias=privatekey
>> org.apache.ws.security.crypto.merlin.alias.password=security
>> >> >> org.apache.ws.security.crypto.merlin.file=privateKeyStore
>> >> >>
>> >> >> and also my keys into the privateKeyStore :
>> >> >> Type keystore : jks
>> >> >> Fournisseur keystore : SUN
>> >> >>
>> >> >> publickey, 14 fév. 2006, trustedCertEntry, Emprunte du
>> certificat
>> >> (MD5) : .....
>> >> >> privateky, 14 fév. 2004, keyEntry, Emprunte du certificat (MD5)
>> :
>> >> .....
>> >> >>
>> >> >> SERVER
>> >> >> ------
>> >> >>
>> >> >> I also put the same crypto.properties with this deployment file
>> :
>> >> <deployment xmlns="http://xml.apache.org/axis/wsdd/"
>> >> >> xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
>> >> >>
>> >> >> <service name="MoodleETeaching" provider="java:RPC">
>> >> >>
>> >> >> <requestFlow>
>> >> >> <handler
>> >> type="java:org.apache.ws.axis.security.WSDoAllReceiver">
>> >> >> <parameter name="passwordCallbackClass"
>> >> >> value="eteaching.webservice.security.WSMoodlePasswordCallback"/>
>> >> >> <parameter name="action" value="Signature Encrypt"/>
>> >> >> <parameter name="signaturePropFile"
>> value="crypto.properties"
>> >> />
>> >> >> </handler>
>> >> >> </requestFlow>
>> >> >>
>> >> >> <parameter name="scope" value="Session" />
>> >> >> <parameter name="className"
>> >> >> value="eteaching.webservice.MoodleETeaching"/>
>> >> >> <parameter name="allowedMethods" value="*"/>
>> >> >>
>> >> >> </service>
>> >> >> </deployment>
>> >> >>
>> >> >> I think I've got a problem understanding the using of the
>> >> certificates into wss4j (how to say : encrypt with his public key,
>> decrypt with my private key ?)...
>> >> >>
>> >> >> Thank you for the help :)
>> >> >>
>> >> >> Best regards
>> >> >>
>> >> >> Tabin Cédric
>> >> >>
>> >> >>
>> >> >>
>> >> >> ---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> >> >> For additional commands, e-mail: [EMAIL PROTECTED]
>> >>
>> >>
>> >>
>> >>
>> >> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> >> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]