As the error message says: yoou need a password to decrypt th
given user's private keey. The user's private key is required to
construct the signature.

Regards,
Werner

[EMAIL PROTECTED] wrote:
> Hi Werner,
> 
> yes but i have a keystore pkcs12 given by a CA, I specify a user
> 
> w.setOption(WSHandlerConstants.USER, "hermann");
> 
> and It's return WsHandler:application provided null or empty password
> 
> My cryptoSender.properties are:
> org.apache.ws.security.crypto.merlin.file=x509pri.p12
> org.apache.ws.security.crypto.merlin.keystore.type=pkcs12
> org.apache.ws.security.crypto.merlin.keystore.password=1234567890
> 
> now I have to specify user even in the cryptosender.properties??
> 
> Thanks a lot
> 
> -----Messaggio originale-----
> Da: Dittmann, Werner [mailto:[EMAIL PROTECTED]
> Inviato: ven 23/06/2006 16.02
> A: [EMAIL PROTECTED]; [email protected]
> Oggetto: AW: [WSS4J 1.5] WsDoAllReceiver No action defined for signature
> 
> Missing username here means: you need to spcifiy the username to get the
> private key of the user that signes the request. Otherwise how would
> WSS4J
> know which certificate to use?
> 
> Regards,
> Werner
> 
> 
> ________________________________
> 
>         Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
>         Gesendet: Freitag, 23. Juni 2006 15:19
>         An: [email protected]
>         Betreff: [WSS4J 1.5] WsDoAllReceiver No action defined for
> signature
>        
>        
> 
>         Hi all,
>        
>         I've a problem with WsDoAllSender class
>        
>         I defined a class that set option of the client because I can't
> use client.wsdd:
>        
>         package PerformWSSecurity;
>         import java.util.Hashtable;
>         import org.apache.axis.AxisEngine;
>         import org.apache.axis.ConfigurationException;
>         import org.apache.axis.SimpleTargetedChain;
>         import org.apache.axis.configuration.SimpleProvider;
>         import org.apache.ws.axis.security.WSDoAllSender;
>         import org.apache.ws.security.handler.WSHandlerConstants;
>        
>        
>         public class MyEngineConfiguration extends SimpleProvider {
>               
>             public MyEngineConfiguration() {
>                 super();
>                 this.deployTransport("http", new SimpleTargetedChain(new
> org.apache.axis.transport.http.HTTPSender()));
>                //parameters
>                 Hashtable<String, Object> opts = new Hashtable<String,
> Object>();
>                 opts.put(AxisEngine.PROP_DISABLE_PRETTY_XML,
> Boolean.TRUE);
>                 this.setGlobalOptions(opts);
>                //requestFlow
>                org.apache.ws.axis.security.WSDoAllSender w = new
> WSDoAllSender();
>                w.setOption(WSHandlerConstants.SIG_PROP_FILE,
> "cryptoSender.properties");
>                w.setOption(WSHandlerConstants.SIG_KEY_ID,
> "DirectReference");
>                w.setOption(WSHandlerConstants.ACTION,
> WSHandlerConstants.SIGNATURE);
>                this.setGlobalResponse(w);
>         }
>        
>             public void configureEngine(AxisEngine engine) throws
>         ConfigurationException {
>                 engine.refreshGlobalOptions();
>             }
>         }
>        
>         because the client have to crypt message with the
> cryptosender.properties and send the reference of certificate, the
> action that have to do is Signature but I don't find how do this action,
> if i use this
>        
>          w.setOption(WSHandlerConstants.ACTION,
> WSHandlerConstants.SIGNATURE);
>        
>         returns: WSDoAllSender: Empty username for specified action
>        
>         If i don't use: WSDoAllSender: No action defined, of couse.
>        
>         So I think that this action is specied for username token, but
> I'm not using username token
>        
>         How can I specify that the action to do is Signature??
>        
>         I put the deploy of my server side:
>        
>         <!-- Use this file to deploy some handlers/chains and services
> -->
>         <!-- Two ways to do this:
> -->
>         <!--   java org.apache.axis.client.AdminClient deploy.wsdd
> -->
>         <!--      after the axis server is running
> -->
>         <!-- or
> -->
>         <!--   java org.apache.axis.utils.Admin client|server
> deploy.wsdd   -->
>         <!--      from the same directory that the Axis engine runs
> -->
>        
>         <deployment
>             xmlns="http://xml.apache.org/axis/wsdd/";
>             xmlns:java="http://xml.apache.org/axis/wsdd/providers/java";>
>        
>           <!-- Services from PerformWSService WSDL service -->
>        
>           <service name="PerformWService" provider="java:RPC"
> style="rpc" use="encoded">
>         <requestFlow>
>            <handler
> type="java:org.apache.ws.axis.security.WSDoAllReceiver">
>              <parameter name="action" value="Signature"/>
>              <parameter name="signaturePropFile"
> value="cryptoReceiver.properties"/>
>            </handler>
>         </requestFlow>
>               <parameter name="wsdlTargetNamespace"
> value="urn:PerformWService"/>
>               <parameter name="wsdlServiceElement"
> value="PerformWSService"/>
>               <parameter name="wsdlServicePort"
> value="PerformWService"/>
>               <parameter name="className"
> value="PerformWS.PerformWServiceSoapBindingSkeleton"/>
>               <parameter name="wsdlPortType" value="PerformWS"/>
>               <parameter name="typeMappingVersion" value="1.2"/>
>               <parameter name="allowedMethods" value="*"/>
>               <parameter name="scope" value="Session"/>
>        
>           </service>
>         </deployment>
>        
>        
>         Thanks all for help
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to