You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wss4j-dev@ws.apache.org by baba Anand <ba...@gmail.com> on 2007/04/02 13:15:16 UTC

URGENT HELP: WS Security Error : 182002

Hi Ruchit,

At last fine tuning something at Tibco Server end I was able to solve that
exception, as there were some problems with certificate signing.Now i am
getting a different error.

I tried my best to include namespace in body variables but failed. I am
listing my problem, if somebody can help us because I doubt whether this is
possible or not. I am using Axis 1.4 and wss4j 1.5.

When I am calling service without security I get following SOAP Body:

<soapenv:Body>

<ns1:Request xmlns:ns1="http://exampleuri.org/SimplePayload.xsd">

<ns1:FirstName>Mark</ns1:FirstName>

<ns1:LastName>Joe</ns1:LastName>

</ns1:Request>

</soapenv:Body>

 Notice that both FirstName and LastName are prefixed by ns1.

 When I enable security I get following SOAP Body:

<soapenv:Body>

<ns1:Request xmlns:ns1=http://exampleuri.org/SimplePayload.xsd<http://tempuri.org/SimplePayload.xsd>

 xmlns:wsu="
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
wsu:Id="id-19658898">

<FirstName>Mark</FirstName>

<LastName>Joe</LastName>

</ns1:Request>

</soapenv:Body>

 Notice there's no prefix before FirstName and LastName .

 For security, I am just signing the message payload. Following is the Wss4j
Settings:

 WSDoAllSender sender = *new* WSDoAllSender();

 sender.setOption(WSHandlerConstants.*SIG_PROP_FILE*,"crypto.properties" );

 sender.setOption(WSHandlerConstants.*SIG_KEY_ID*, "DirectReference");

 sender.setOption(WSHandlerConstants.*ACTION*,WSHandlerConstants.*SIGNATURE*
);

 sender.setOption(WSHandlerConstants.*SIG_ALGO*,WSConstants.*RSA*);

 sender.setOption(WSHandlerConstants.*USER*, "clientkey");

 sender.setOption(WSHandlerConstants.*PW_CALLBACK_CLASS*,

 PWCallBackImpl.*class*);

 sender.setOption(WSHandlerConstants.*SIGNATURE_PARTS*,"{Element}{http://*
exampleuri.org*/SimplePayload.xsd}Request");

 WSDoAllReceiver recv = *new* WSDoAllReceiver();

 recv.setOption(WSHandlerConstants.*SIG_PROP_FILE*, "crypto.properties");

 recv.setOption(WSHandlerConstants.*ACTION*, WSHandlerConstants.*SIGNATURE*
);

 recv.setOption(WSHandlerConstants.*SIG_KEY_ID*, "DirectReference");

 recv.setOption(WSHandlerConstants.*USER*, "serverkey");

 recv.setOption(WSHandlerConstants.*PW_CALLBACK_CLASS*,PWCallBackImpl.*class
*);

 recv.setOption(WSHandlerConstants.*SIGNATURE_PARTS*,"{Element}{http://*
exampleuri.org*/SimplePayload.xsd}Response");

 Following is my Call settings:

 org.apache.axis.description.OperationDesc oper;

 org.apache.axis.description.ParameterDesc param;

 oper = *new* org.apache.axis.description.OperationDesc();
 oper.setName("SimpleRequest");

 param = *new* org.apache.axis.description.ParameterDesc(*new*
javax.xml.namespace.QName("http://tempuri.org/SimplePayload.xsd", "Request"),
org.apache.axis.description.ParameterDesc.*IN*, *new*
javax.xml.namespace.QName("http://*exampleuri.org*/SimplePayload.xsd",
"RequestType"),

servicetest.withsecurity.org.tempuri.SimplePayload_xsd.RequestType.*class*,
*false*, *true*);

oper.addParameter(param);

oper.setReturnType(*new* javax.xml.namespace.QName("http://*exampleuri.org*
/SimplePayload.xsd", "ReturnType"));

oper.setReturnClass(
servicetest.withsecurity.org.tempuri.SimplePayload_xsd.ReturnType.*class*);

oper.setReturnQName(*new* javax.xml.namespace.QName("http://*exampleuri.org*
/SimplePayload.xsd", "Return"));

oper.setStyle(org.apache.axis.constants.Style.*DOCUMENT*);

oper.setUse(org.apache.axis.constants.Use.*LITERAL*);

*_operations*[0] = oper;

org.apache.axis.client.Call _call = createCall();

_call.setPassword("123456");

_call.setOperation(*_operations*[0]);

_call.setUseSOAPAction(*true*);

_call.setSOAPActionURI(
"/WS_Security/SimpleService.serviceagent/SimpleServiceInterfaceEndpoint1/SimpleRequest"
);

_call.setEncodingStyle(http://schemas.xmlsoap.org/soap/envelope/);

_call.setProperty(org.apache.axis.client.Call.*SEND_TYPE_ATTR*, Boolean.*
FALSE*);

_call.setProperty(org.apache.axis.AxisEngine.*PROP_DOMULTIREFS*, Boolean.*
FALSE*);

_call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.*SOAP11_CONSTANTS*);

_call.setOperationName(*new* javax.xml.namespace.QName("http://*
exampleuri.org*/SimplePayload.xsd", "SimpleRequest"));

_call.setClientHandlers(sender, recv);

setRequestHeaders(_call);

setAttachments(_call);

*try* {

java.lang.Object _resp = _call.invoke(*new* java.lang.Object[]
{messagePart});

*I want namespaces specified explicitly for both FirstName and LastName.*
**
*Please help.*
**
**

Re: URGENT HELP: WS Security Error : 182002

Posted by baba Anand <ba...@gmail.com>.
Hi Dims,

Thanks for response, I have already used this property setting, yet my SOAP
gets modified.
Please see and help, its a urgent requirement.

Thanks And Regards
Baba

On 4/2/07, Davanum Srinivas <da...@gmail.com> wrote:
>
> Baba,
>
> Could you please try this setting?
>
> AxisProperties.setProperty("enableNamespacePrefixOptimization","false");
>
> -- dims
>
> On 4/2/07, Ruchith Fernando <ru...@gmail.com> wrote:
> > I'm not an Axis 1.x expert to help you with this ... May be Dims can
> help you?
> >
> > - Ruchith
> >
> > On 4/2/07, baba Anand <ba...@gmail.com> wrote:
> > > Hi Ruchit,
> > >
> > > At last fine tuning something at Tibco Server end I was able to solve
> that
> > > exception, as there were some problems with certificate signing.Now i
> am
> > > getting a different error.
> > >
> > > I tried my best to include namespace in body variables but failed. I
> am
> > > listing my problem, if somebody can help us because I doubt whether
> this is
> > > possible or not.  I am using Axis 1.4 and wss4j 1.5.
> > >
> > > When I am calling service without security I get following SOAP Body:
> > >
> > > <soapenv:Body>
> > >
> > > <ns1:Request xmlns:ns1="
> > > http://exampleuri.org/SimplePayload.xsd">
> > >
> > > <ns1:FirstName>Mark</ns1: FirstName>
> > >
> > > <ns1:LastName>Joe</ns1: LastName>
> > >
> > > </ns1:Request>
> > >
> > > </soapenv:Body>
> > >
> > >  Notice that both FirstName and LastName are prefixed by ns1.
> > >
> > >   When I enable security I get following SOAP Body:
> > >
> > > <soapenv:Body>
> > >
> > > <ns1:Request xmlns:ns1= http://exampleuri.org/SimplePayload.xsd
> > >
> > >  xmlns:wsu="
> > >
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd
> "
> > > wsu:Id="id-19658898">
> > >
> > > <FirstName>Mark</FirstName>
> > >
> > > <LastName>Joe</LastName>
> > >
> > > </ns1:Request>
> > >
> > > </soapenv:Body>
> > >
> > >  Notice there's no prefix before FirstName and LastName .
> > >
> > >   For security, I am just signing the message payload. Following is
> the
> > > Wss4j Settings:
> > >
> > >   WSDoAllSender sender = new WSDoAllSender();
> > >
> > >  sender.setOption(WSHandlerConstants. SIG_PROP_FILE ,"
> crypto.properties" );
> > >
> > >  sender.setOption(WSHandlerConstants. SIG_KEY_ID , "DirectReference"
> );
> > >
> > >  sender.setOption(WSHandlerConstants. ACTION ,
> WSHandlerConstants.SIGNATURE
> > > );
> > >
> > >  sender.setOption(WSHandlerConstants. SIG_ALGO ,WSConstants.RSA );
> > >
> > >  sender.setOption(WSHandlerConstants. USER , "clientkey" );
> > >
> > >  sender.setOption(WSHandlerConstants. PW_CALLBACK_CLASS ,
> > >
> > >  PWCallBackImpl. class );
> > >
> > >  sender.setOption(WSHandlerConstants. SIGNATURE_PARTS
> ,"{Element}{http://
> > > exampleuri.org/SimplePayload.xsd}Request" );
> > >
> > >   WSDoAllReceiver recv = new WSDoAllReceiver();
> > >
> > >  recv.setOption(WSHandlerConstants. SIG_PROP_FILE , "crypto.properties"
> );
> > >
> > >  recv.setOption(WSHandlerConstants. ACTION ,
> WSHandlerConstants.SIGNATURE );
> > >
> > >  recv.setOption(WSHandlerConstants. SIG_KEY_ID , "DirectReference" );
> > >
> > >  recv.setOption(WSHandlerConstants. USER , "serverkey" );
> > >
> > >  recv.setOption(WSHandlerConstants. PW_CALLBACK_CLASS ,
> PWCallBackImpl.class
> > > );
> > >
> > >  recv.setOption(WSHandlerConstants. SIGNATURE_PARTS
> ,"{Element}{http://
> > > exampleuri.org/SimplePayload.xsd}Response" );
> > >
> > >  Following is my Call settings:
> > >
> > >   org.apache.axis.description.OperationDesc oper;
> > >
> > >  org.apache.axis.description.ParameterDesc param;
> > >
> > >  oper = new org.apache.axis.description.OperationDesc();
> > >  oper.setName( "SimpleRequest" );
> > >
> > >  param = new org.apache.axis.description.ParameterDesc(new
> > > javax.xml.namespace.QName(
> > > "http://tempuri.org/SimplePayload.xsd" , "Request"),
> > > org.apache.axis.description.ParameterDesc. IN , new
> > > javax.xml.namespace.QName( "http://exampleuri.org/SimplePayload.xsd" ,
> > > "RequestType" ),
> > >
> > > servicetest.withsecurity.org.tempuri.SimplePayload_xsd.RequestType.
> > > class , false, true);
> > >
> > > oper.addParameter(param);
> > >
> > > oper.setReturnType( new javax.xml.namespace.QName("http://
> > > exampleuri.org/SimplePayload.xsd" , "ReturnType" ));
> > >
> > > oper.setReturnClass(
> servicetest.withsecurity.org.tempuri.SimplePayload_xsd.ReturnType
> > > .class );
> > >
> > > oper.setReturnQName( new javax.xml.namespace.QName("http://
> > > exampleuri.org/SimplePayload.xsd" , "Return" ));
> > >
> > > oper.setStyle(org.apache.axis.constants.Style. DOCUMENT );
> > >
> > > oper.setUse(org.apache.axis.constants.Use. LITERAL );
> > >
> > > _operations [0] = oper;
> > >
> > > org.apache.axis.client.Call _call = createCall();
> > >
> > > _call.setPassword( "123456" );
> > >
> > > _call.setOperation( _operations [0]);
> > >
> > > _call.setUseSOAPAction( true );
> > >
> > > _call.setSOAPActionURI(
> > >
> "/WS_Security/SimpleService.serviceagent/SimpleServiceInterfaceEndpoint1/SimpleRequest"
> > > );
> > >
> > > _call.setEncodingStyle(
> > > http://schemas.xmlsoap.org/soap/envelope/ );
> > >
> > > _call.setProperty(org.apache.axis.client.Call. SEND_TYPE_ATTR ,
> > > Boolean.FALSE );
> > >
> > > _call.setProperty(org.apache.axis.AxisEngine. PROP_DOMULTIREFS ,
> > > Boolean.FALSE );
> > >
> > > _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.
> > > SOAP11_CONSTANTS );
> > >
> > > _call.setOperationName( new javax.xml.namespace.QName("http://
> > > exampleuri.org/SimplePayload.xsd" , "SimpleRequest" ));
> > >
> > > _call.setClientHandlers(sender, recv);
> > >
> > > setRequestHeaders(_call);
> > >
> > > setAttachments(_call);
> > >
> > > try {
> > >
> > > java.lang.Object _resp = _call.invoke( new java.lang.Object[]
> > > {messagePart});
> > >
> > >
> > > I want namespaces specified explicitly for both FirstName and
> LastName.
> > >
> > > Please help.
> > >
> > >
> >
> >
> > --
> > www.ruchith.org
> > www.wso2.org
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: wss4j-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: wss4j-dev-help@ws.apache.org
> >
> >
>
>
> --
> Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
>

Re: URGENT HELP: WS Security Error : 182002

Posted by baba Anand <ba...@gmail.com>.
Hi Dims,

Thanks for response, I have already used this property setting, yet my SOAP
gets modified.
Please see and help, its a urgent requirement.

Thanks And Regards
Baba

On 4/2/07, Davanum Srinivas <da...@gmail.com> wrote:
>
> Baba,
>
> Could you please try this setting?
>
> AxisProperties.setProperty("enableNamespacePrefixOptimization","false");
>
> -- dims
>
> On 4/2/07, Ruchith Fernando <ru...@gmail.com> wrote:
> > I'm not an Axis 1.x expert to help you with this ... May be Dims can
> help you?
> >
> > - Ruchith
> >
> > On 4/2/07, baba Anand <ba...@gmail.com> wrote:
> > > Hi Ruchit,
> > >
> > > At last fine tuning something at Tibco Server end I was able to solve
> that
> > > exception, as there were some problems with certificate signing.Now i
> am
> > > getting a different error.
> > >
> > > I tried my best to include namespace in body variables but failed. I
> am
> > > listing my problem, if somebody can help us because I doubt whether
> this is
> > > possible or not.  I am using Axis 1.4 and wss4j 1.5.
> > >
> > > When I am calling service without security I get following SOAP Body:
> > >
> > > <soapenv:Body>
> > >
> > > <ns1:Request xmlns:ns1="
> > > http://exampleuri.org/SimplePayload.xsd">
> > >
> > > <ns1:FirstName>Mark</ns1: FirstName>
> > >
> > > <ns1:LastName>Joe</ns1: LastName>
> > >
> > > </ns1:Request>
> > >
> > > </soapenv:Body>
> > >
> > >  Notice that both FirstName and LastName are prefixed by ns1.
> > >
> > >   When I enable security I get following SOAP Body:
> > >
> > > <soapenv:Body>
> > >
> > > <ns1:Request xmlns:ns1= http://exampleuri.org/SimplePayload.xsd
> > >
> > >  xmlns:wsu="
> > >
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd
> "
> > > wsu:Id="id-19658898">
> > >
> > > <FirstName>Mark</FirstName>
> > >
> > > <LastName>Joe</LastName>
> > >
> > > </ns1:Request>
> > >
> > > </soapenv:Body>
> > >
> > >  Notice there's no prefix before FirstName and LastName .
> > >
> > >   For security, I am just signing the message payload. Following is
> the
> > > Wss4j Settings:
> > >
> > >   WSDoAllSender sender = new WSDoAllSender();
> > >
> > >  sender.setOption(WSHandlerConstants. SIG_PROP_FILE ,"
> crypto.properties" );
> > >
> > >  sender.setOption(WSHandlerConstants. SIG_KEY_ID , "DirectReference"
> );
> > >
> > >  sender.setOption(WSHandlerConstants. ACTION ,
> WSHandlerConstants.SIGNATURE
> > > );
> > >
> > >  sender.setOption(WSHandlerConstants. SIG_ALGO ,WSConstants.RSA );
> > >
> > >  sender.setOption(WSHandlerConstants. USER , "clientkey" );
> > >
> > >  sender.setOption(WSHandlerConstants. PW_CALLBACK_CLASS ,
> > >
> > >  PWCallBackImpl. class );
> > >
> > >  sender.setOption(WSHandlerConstants. SIGNATURE_PARTS
> ,"{Element}{http://
> > > exampleuri.org/SimplePayload.xsd}Request" );
> > >
> > >   WSDoAllReceiver recv = new WSDoAllReceiver();
> > >
> > >  recv.setOption(WSHandlerConstants. SIG_PROP_FILE , "crypto.properties"
> );
> > >
> > >  recv.setOption(WSHandlerConstants. ACTION ,
> WSHandlerConstants.SIGNATURE );
> > >
> > >  recv.setOption(WSHandlerConstants. SIG_KEY_ID , "DirectReference" );
> > >
> > >  recv.setOption(WSHandlerConstants. USER , "serverkey" );
> > >
> > >  recv.setOption(WSHandlerConstants. PW_CALLBACK_CLASS ,
> PWCallBackImpl.class
> > > );
> > >
> > >  recv.setOption(WSHandlerConstants. SIGNATURE_PARTS
> ,"{Element}{http://
> > > exampleuri.org/SimplePayload.xsd}Response" );
> > >
> > >  Following is my Call settings:
> > >
> > >   org.apache.axis.description.OperationDesc oper;
> > >
> > >  org.apache.axis.description.ParameterDesc param;
> > >
> > >  oper = new org.apache.axis.description.OperationDesc();
> > >  oper.setName( "SimpleRequest" );
> > >
> > >  param = new org.apache.axis.description.ParameterDesc(new
> > > javax.xml.namespace.QName(
> > > "http://tempuri.org/SimplePayload.xsd" , "Request"),
> > > org.apache.axis.description.ParameterDesc. IN , new
> > > javax.xml.namespace.QName( "http://exampleuri.org/SimplePayload.xsd" ,
> > > "RequestType" ),
> > >
> > > servicetest.withsecurity.org.tempuri.SimplePayload_xsd.RequestType.
> > > class , false, true);
> > >
> > > oper.addParameter(param);
> > >
> > > oper.setReturnType( new javax.xml.namespace.QName("http://
> > > exampleuri.org/SimplePayload.xsd" , "ReturnType" ));
> > >
> > > oper.setReturnClass(
> servicetest.withsecurity.org.tempuri.SimplePayload_xsd.ReturnType
> > > .class );
> > >
> > > oper.setReturnQName( new javax.xml.namespace.QName("http://
> > > exampleuri.org/SimplePayload.xsd" , "Return" ));
> > >
> > > oper.setStyle(org.apache.axis.constants.Style. DOCUMENT );
> > >
> > > oper.setUse(org.apache.axis.constants.Use. LITERAL );
> > >
> > > _operations [0] = oper;
> > >
> > > org.apache.axis.client.Call _call = createCall();
> > >
> > > _call.setPassword( "123456" );
> > >
> > > _call.setOperation( _operations [0]);
> > >
> > > _call.setUseSOAPAction( true );
> > >
> > > _call.setSOAPActionURI(
> > >
> "/WS_Security/SimpleService.serviceagent/SimpleServiceInterfaceEndpoint1/SimpleRequest"
> > > );
> > >
> > > _call.setEncodingStyle(
> > > http://schemas.xmlsoap.org/soap/envelope/ );
> > >
> > > _call.setProperty(org.apache.axis.client.Call. SEND_TYPE_ATTR ,
> > > Boolean.FALSE );
> > >
> > > _call.setProperty(org.apache.axis.AxisEngine. PROP_DOMULTIREFS ,
> > > Boolean.FALSE );
> > >
> > > _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.
> > > SOAP11_CONSTANTS );
> > >
> > > _call.setOperationName( new javax.xml.namespace.QName("http://
> > > exampleuri.org/SimplePayload.xsd" , "SimpleRequest" ));
> > >
> > > _call.setClientHandlers(sender, recv);
> > >
> > > setRequestHeaders(_call);
> > >
> > > setAttachments(_call);
> > >
> > > try {
> > >
> > > java.lang.Object _resp = _call.invoke( new java.lang.Object[]
> > > {messagePart});
> > >
> > >
> > > I want namespaces specified explicitly for both FirstName and
> LastName.
> > >
> > > Please help.
> > >
> > >
> >
> >
> > --
> > www.ruchith.org
> > www.wso2.org
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: wss4j-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: wss4j-dev-help@ws.apache.org
> >
> >
>
>
> --
> Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers
>

Re: URGENT HELP: WS Security Error : 182002

Posted by Davanum Srinivas <da...@gmail.com>.
Baba,

Could you please try this setting?

AxisProperties.setProperty("enableNamespacePrefixOptimization","false");

-- dims

On 4/2/07, Ruchith Fernando <ru...@gmail.com> wrote:
> I'm not an Axis 1.x expert to help you with this ... May be Dims can help you?
>
> - Ruchith
>
> On 4/2/07, baba Anand <ba...@gmail.com> wrote:
> > Hi Ruchit,
> >
> > At last fine tuning something at Tibco Server end I was able to solve that
> > exception, as there were some problems with certificate signing.Now i am
> > getting a different error.
> >
> > I tried my best to include namespace in body variables but failed. I am
> > listing my problem, if somebody can help us because I doubt whether this is
> > possible or not.  I am using Axis 1.4 and wss4j 1.5.
> >
> > When I am calling service without security I get following SOAP Body:
> >
> > <soapenv:Body>
> >
> > <ns1:Request xmlns:ns1="
> > http://exampleuri.org/SimplePayload.xsd">
> >
> > <ns1:FirstName>Mark</ns1: FirstName>
> >
> > <ns1:LastName>Joe</ns1: LastName>
> >
> > </ns1:Request>
> >
> > </soapenv:Body>
> >
> >  Notice that both FirstName and LastName are prefixed by ns1.
> >
> >   When I enable security I get following SOAP Body:
> >
> > <soapenv:Body>
> >
> > <ns1:Request xmlns:ns1= http://exampleuri.org/SimplePayload.xsd
> >
> >  xmlns:wsu="
> > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
> > wsu:Id="id-19658898">
> >
> > <FirstName>Mark</FirstName>
> >
> > <LastName>Joe</LastName>
> >
> > </ns1:Request>
> >
> > </soapenv:Body>
> >
> >  Notice there's no prefix before FirstName and LastName .
> >
> >   For security, I am just signing the message payload. Following is the
> > Wss4j Settings:
> >
> >   WSDoAllSender sender = new WSDoAllSender();
> >
> >  sender.setOption(WSHandlerConstants. SIG_PROP_FILE ,"crypto.properties" );
> >
> >  sender.setOption(WSHandlerConstants. SIG_KEY_ID , "DirectReference" );
> >
> >  sender.setOption(WSHandlerConstants. ACTION ,WSHandlerConstants.SIGNATURE
> > );
> >
> >  sender.setOption(WSHandlerConstants. SIG_ALGO ,WSConstants.RSA );
> >
> >  sender.setOption(WSHandlerConstants. USER , "clientkey" );
> >
> >  sender.setOption(WSHandlerConstants. PW_CALLBACK_CLASS ,
> >
> >  PWCallBackImpl. class );
> >
> >  sender.setOption(WSHandlerConstants. SIGNATURE_PARTS ,"{Element}{http://
> > exampleuri.org/SimplePayload.xsd}Request" );
> >
> >   WSDoAllReceiver recv = new WSDoAllReceiver();
> >
> >  recv.setOption(WSHandlerConstants. SIG_PROP_FILE , "crypto.properties" );
> >
> >  recv.setOption(WSHandlerConstants. ACTION , WSHandlerConstants.SIGNATURE );
> >
> >  recv.setOption(WSHandlerConstants. SIG_KEY_ID , "DirectReference" );
> >
> >  recv.setOption(WSHandlerConstants. USER , "serverkey" );
> >
> >  recv.setOption(WSHandlerConstants. PW_CALLBACK_CLASS ,PWCallBackImpl.class
> > );
> >
> >  recv.setOption(WSHandlerConstants. SIGNATURE_PARTS ,"{Element}{http://
> > exampleuri.org/SimplePayload.xsd}Response" );
> >
> >  Following is my Call settings:
> >
> >   org.apache.axis.description.OperationDesc oper;
> >
> >  org.apache.axis.description.ParameterDesc param;
> >
> >  oper = new org.apache.axis.description.OperationDesc();
> >  oper.setName( "SimpleRequest" );
> >
> >  param = new org.apache.axis.description.ParameterDesc(new
> > javax.xml.namespace.QName(
> > "http://tempuri.org/SimplePayload.xsd" , "Request"),
> > org.apache.axis.description.ParameterDesc. IN , new
> > javax.xml.namespace.QName( "http://exampleuri.org/SimplePayload.xsd" ,
> > "RequestType" ),
> >
> > servicetest.withsecurity.org.tempuri.SimplePayload_xsd.RequestType.
> > class , false, true);
> >
> > oper.addParameter(param);
> >
> > oper.setReturnType( new javax.xml.namespace.QName("http://
> > exampleuri.org/SimplePayload.xsd" , "ReturnType" ));
> >
> > oper.setReturnClass(servicetest.withsecurity.org.tempuri.SimplePayload_xsd.ReturnType
> > .class );
> >
> > oper.setReturnQName( new javax.xml.namespace.QName("http://
> > exampleuri.org/SimplePayload.xsd" , "Return" ));
> >
> > oper.setStyle(org.apache.axis.constants.Style. DOCUMENT );
> >
> > oper.setUse(org.apache.axis.constants.Use. LITERAL );
> >
> > _operations [0] = oper;
> >
> > org.apache.axis.client.Call _call = createCall();
> >
> > _call.setPassword( "123456" );
> >
> > _call.setOperation( _operations [0]);
> >
> > _call.setUseSOAPAction( true );
> >
> > _call.setSOAPActionURI(
> > "/WS_Security/SimpleService.serviceagent/SimpleServiceInterfaceEndpoint1/SimpleRequest"
> > );
> >
> > _call.setEncodingStyle(
> > http://schemas.xmlsoap.org/soap/envelope/ );
> >
> > _call.setProperty(org.apache.axis.client.Call. SEND_TYPE_ATTR ,
> > Boolean.FALSE );
> >
> > _call.setProperty(org.apache.axis.AxisEngine. PROP_DOMULTIREFS ,
> > Boolean.FALSE );
> >
> > _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.
> > SOAP11_CONSTANTS );
> >
> > _call.setOperationName( new javax.xml.namespace.QName("http://
> > exampleuri.org/SimplePayload.xsd" , "SimpleRequest" ));
> >
> > _call.setClientHandlers(sender, recv);
> >
> > setRequestHeaders(_call);
> >
> > setAttachments(_call);
> >
> > try {
> >
> > java.lang.Object _resp = _call.invoke( new java.lang.Object[]
> > {messagePart});
> >
> >
> > I want namespaces specified explicitly for both FirstName and LastName.
> >
> > Please help.
> >
> >
>
>
> --
> www.ruchith.org
> www.wso2.org
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: wss4j-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: wss4j-dev-help@ws.apache.org
>
>


-- 
Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers

---------------------------------------------------------------------
To unsubscribe, e-mail: wss4j-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: wss4j-dev-help@ws.apache.org


Re: URGENT HELP: WS Security Error : 182002

Posted by Davanum Srinivas <da...@gmail.com>.
Baba,

Could you please try this setting?

AxisProperties.setProperty("enableNamespacePrefixOptimization","false");

-- dims

On 4/2/07, Ruchith Fernando <ru...@gmail.com> wrote:
> I'm not an Axis 1.x expert to help you with this ... May be Dims can help you?
>
> - Ruchith
>
> On 4/2/07, baba Anand <ba...@gmail.com> wrote:
> > Hi Ruchit,
> >
> > At last fine tuning something at Tibco Server end I was able to solve that
> > exception, as there were some problems with certificate signing.Now i am
> > getting a different error.
> >
> > I tried my best to include namespace in body variables but failed. I am
> > listing my problem, if somebody can help us because I doubt whether this is
> > possible or not.  I am using Axis 1.4 and wss4j 1.5.
> >
> > When I am calling service without security I get following SOAP Body:
> >
> > <soapenv:Body>
> >
> > <ns1:Request xmlns:ns1="
> > http://exampleuri.org/SimplePayload.xsd">
> >
> > <ns1:FirstName>Mark</ns1: FirstName>
> >
> > <ns1:LastName>Joe</ns1: LastName>
> >
> > </ns1:Request>
> >
> > </soapenv:Body>
> >
> >  Notice that both FirstName and LastName are prefixed by ns1.
> >
> >   When I enable security I get following SOAP Body:
> >
> > <soapenv:Body>
> >
> > <ns1:Request xmlns:ns1= http://exampleuri.org/SimplePayload.xsd
> >
> >  xmlns:wsu="
> > http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
> > wsu:Id="id-19658898">
> >
> > <FirstName>Mark</FirstName>
> >
> > <LastName>Joe</LastName>
> >
> > </ns1:Request>
> >
> > </soapenv:Body>
> >
> >  Notice there's no prefix before FirstName and LastName .
> >
> >   For security, I am just signing the message payload. Following is the
> > Wss4j Settings:
> >
> >   WSDoAllSender sender = new WSDoAllSender();
> >
> >  sender.setOption(WSHandlerConstants. SIG_PROP_FILE ,"crypto.properties" );
> >
> >  sender.setOption(WSHandlerConstants. SIG_KEY_ID , "DirectReference" );
> >
> >  sender.setOption(WSHandlerConstants. ACTION ,WSHandlerConstants.SIGNATURE
> > );
> >
> >  sender.setOption(WSHandlerConstants. SIG_ALGO ,WSConstants.RSA );
> >
> >  sender.setOption(WSHandlerConstants. USER , "clientkey" );
> >
> >  sender.setOption(WSHandlerConstants. PW_CALLBACK_CLASS ,
> >
> >  PWCallBackImpl. class );
> >
> >  sender.setOption(WSHandlerConstants. SIGNATURE_PARTS ,"{Element}{http://
> > exampleuri.org/SimplePayload.xsd}Request" );
> >
> >   WSDoAllReceiver recv = new WSDoAllReceiver();
> >
> >  recv.setOption(WSHandlerConstants. SIG_PROP_FILE , "crypto.properties" );
> >
> >  recv.setOption(WSHandlerConstants. ACTION , WSHandlerConstants.SIGNATURE );
> >
> >  recv.setOption(WSHandlerConstants. SIG_KEY_ID , "DirectReference" );
> >
> >  recv.setOption(WSHandlerConstants. USER , "serverkey" );
> >
> >  recv.setOption(WSHandlerConstants. PW_CALLBACK_CLASS ,PWCallBackImpl.class
> > );
> >
> >  recv.setOption(WSHandlerConstants. SIGNATURE_PARTS ,"{Element}{http://
> > exampleuri.org/SimplePayload.xsd}Response" );
> >
> >  Following is my Call settings:
> >
> >   org.apache.axis.description.OperationDesc oper;
> >
> >  org.apache.axis.description.ParameterDesc param;
> >
> >  oper = new org.apache.axis.description.OperationDesc();
> >  oper.setName( "SimpleRequest" );
> >
> >  param = new org.apache.axis.description.ParameterDesc(new
> > javax.xml.namespace.QName(
> > "http://tempuri.org/SimplePayload.xsd" , "Request"),
> > org.apache.axis.description.ParameterDesc. IN , new
> > javax.xml.namespace.QName( "http://exampleuri.org/SimplePayload.xsd" ,
> > "RequestType" ),
> >
> > servicetest.withsecurity.org.tempuri.SimplePayload_xsd.RequestType.
> > class , false, true);
> >
> > oper.addParameter(param);
> >
> > oper.setReturnType( new javax.xml.namespace.QName("http://
> > exampleuri.org/SimplePayload.xsd" , "ReturnType" ));
> >
> > oper.setReturnClass(servicetest.withsecurity.org.tempuri.SimplePayload_xsd.ReturnType
> > .class );
> >
> > oper.setReturnQName( new javax.xml.namespace.QName("http://
> > exampleuri.org/SimplePayload.xsd" , "Return" ));
> >
> > oper.setStyle(org.apache.axis.constants.Style. DOCUMENT );
> >
> > oper.setUse(org.apache.axis.constants.Use. LITERAL );
> >
> > _operations [0] = oper;
> >
> > org.apache.axis.client.Call _call = createCall();
> >
> > _call.setPassword( "123456" );
> >
> > _call.setOperation( _operations [0]);
> >
> > _call.setUseSOAPAction( true );
> >
> > _call.setSOAPActionURI(
> > "/WS_Security/SimpleService.serviceagent/SimpleServiceInterfaceEndpoint1/SimpleRequest"
> > );
> >
> > _call.setEncodingStyle(
> > http://schemas.xmlsoap.org/soap/envelope/ );
> >
> > _call.setProperty(org.apache.axis.client.Call. SEND_TYPE_ATTR ,
> > Boolean.FALSE );
> >
> > _call.setProperty(org.apache.axis.AxisEngine. PROP_DOMULTIREFS ,
> > Boolean.FALSE );
> >
> > _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.
> > SOAP11_CONSTANTS );
> >
> > _call.setOperationName( new javax.xml.namespace.QName("http://
> > exampleuri.org/SimplePayload.xsd" , "SimpleRequest" ));
> >
> > _call.setClientHandlers(sender, recv);
> >
> > setRequestHeaders(_call);
> >
> > setAttachments(_call);
> >
> > try {
> >
> > java.lang.Object _resp = _call.invoke( new java.lang.Object[]
> > {messagePart});
> >
> >
> > I want namespaces specified explicitly for both FirstName and LastName.
> >
> > Please help.
> >
> >
>
>
> --
> www.ruchith.org
> www.wso2.org
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: wss4j-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: wss4j-dev-help@ws.apache.org
>
>


-- 
Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers

---------------------------------------------------------------------
To unsubscribe, e-mail: wss4j-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: wss4j-dev-help@ws.apache.org


Re: URGENT HELP: WS Security Error : 182002

Posted by Ruchith Fernando <ru...@gmail.com>.
I'm not an Axis 1.x expert to help you with this ... May be Dims can help you?

- Ruchith

On 4/2/07, baba Anand <ba...@gmail.com> wrote:
> Hi Ruchit,
>
> At last fine tuning something at Tibco Server end I was able to solve that
> exception, as there were some problems with certificate signing.Now i am
> getting a different error.
>
> I tried my best to include namespace in body variables but failed. I am
> listing my problem, if somebody can help us because I doubt whether this is
> possible or not.  I am using Axis 1.4 and wss4j 1.5.
>
> When I am calling service without security I get following SOAP Body:
>
> <soapenv:Body>
>
> <ns1:Request xmlns:ns1="
> http://exampleuri.org/SimplePayload.xsd">
>
> <ns1:FirstName>Mark</ns1: FirstName>
>
> <ns1:LastName>Joe</ns1: LastName>
>
> </ns1:Request>
>
> </soapenv:Body>
>
>  Notice that both FirstName and LastName are prefixed by ns1.
>
>   When I enable security I get following SOAP Body:
>
> <soapenv:Body>
>
> <ns1:Request xmlns:ns1= http://exampleuri.org/SimplePayload.xsd
>
>  xmlns:wsu="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
> wsu:Id="id-19658898">
>
> <FirstName>Mark</FirstName>
>
> <LastName>Joe</LastName>
>
> </ns1:Request>
>
> </soapenv:Body>
>
>  Notice there's no prefix before FirstName and LastName .
>
>   For security, I am just signing the message payload. Following is the
> Wss4j Settings:
>
>   WSDoAllSender sender = new WSDoAllSender();
>
>  sender.setOption(WSHandlerConstants. SIG_PROP_FILE ,"crypto.properties" );
>
>  sender.setOption(WSHandlerConstants. SIG_KEY_ID , "DirectReference" );
>
>  sender.setOption(WSHandlerConstants. ACTION ,WSHandlerConstants.SIGNATURE
> );
>
>  sender.setOption(WSHandlerConstants. SIG_ALGO ,WSConstants.RSA );
>
>  sender.setOption(WSHandlerConstants. USER , "clientkey" );
>
>  sender.setOption(WSHandlerConstants. PW_CALLBACK_CLASS ,
>
>  PWCallBackImpl. class );
>
>  sender.setOption(WSHandlerConstants. SIGNATURE_PARTS ,"{Element}{http://
> exampleuri.org/SimplePayload.xsd}Request" );
>
>   WSDoAllReceiver recv = new WSDoAllReceiver();
>
>  recv.setOption(WSHandlerConstants. SIG_PROP_FILE , "crypto.properties" );
>
>  recv.setOption(WSHandlerConstants. ACTION , WSHandlerConstants.SIGNATURE );
>
>  recv.setOption(WSHandlerConstants. SIG_KEY_ID , "DirectReference" );
>
>  recv.setOption(WSHandlerConstants. USER , "serverkey" );
>
>  recv.setOption(WSHandlerConstants. PW_CALLBACK_CLASS ,PWCallBackImpl.class
> );
>
>  recv.setOption(WSHandlerConstants. SIGNATURE_PARTS ,"{Element}{http://
> exampleuri.org/SimplePayload.xsd}Response" );
>
>  Following is my Call settings:
>
>   org.apache.axis.description.OperationDesc oper;
>
>  org.apache.axis.description.ParameterDesc param;
>
>  oper = new org.apache.axis.description.OperationDesc();
>  oper.setName( "SimpleRequest" );
>
>  param = new org.apache.axis.description.ParameterDesc(new
> javax.xml.namespace.QName(
> "http://tempuri.org/SimplePayload.xsd" , "Request"),
> org.apache.axis.description.ParameterDesc. IN , new
> javax.xml.namespace.QName( "http://exampleuri.org/SimplePayload.xsd" ,
> "RequestType" ),
>
> servicetest.withsecurity.org.tempuri.SimplePayload_xsd.RequestType.
> class , false, true);
>
> oper.addParameter(param);
>
> oper.setReturnType( new javax.xml.namespace.QName("http://
> exampleuri.org/SimplePayload.xsd" , "ReturnType" ));
>
> oper.setReturnClass(servicetest.withsecurity.org.tempuri.SimplePayload_xsd.ReturnType
> .class );
>
> oper.setReturnQName( new javax.xml.namespace.QName("http://
> exampleuri.org/SimplePayload.xsd" , "Return" ));
>
> oper.setStyle(org.apache.axis.constants.Style. DOCUMENT );
>
> oper.setUse(org.apache.axis.constants.Use. LITERAL );
>
> _operations [0] = oper;
>
> org.apache.axis.client.Call _call = createCall();
>
> _call.setPassword( "123456" );
>
> _call.setOperation( _operations [0]);
>
> _call.setUseSOAPAction( true );
>
> _call.setSOAPActionURI(
> "/WS_Security/SimpleService.serviceagent/SimpleServiceInterfaceEndpoint1/SimpleRequest"
> );
>
> _call.setEncodingStyle(
> http://schemas.xmlsoap.org/soap/envelope/ );
>
> _call.setProperty(org.apache.axis.client.Call. SEND_TYPE_ATTR ,
> Boolean.FALSE );
>
> _call.setProperty(org.apache.axis.AxisEngine. PROP_DOMULTIREFS ,
> Boolean.FALSE );
>
> _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.
> SOAP11_CONSTANTS );
>
> _call.setOperationName( new javax.xml.namespace.QName("http://
> exampleuri.org/SimplePayload.xsd" , "SimpleRequest" ));
>
> _call.setClientHandlers(sender, recv);
>
> setRequestHeaders(_call);
>
> setAttachments(_call);
>
> try {
>
> java.lang.Object _resp = _call.invoke( new java.lang.Object[]
> {messagePart});
>
>
> I want namespaces specified explicitly for both FirstName and LastName.
>
> Please help.
>
>


-- 
www.ruchith.org
www.wso2.org

---------------------------------------------------------------------
To unsubscribe, e-mail: wss4j-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: wss4j-dev-help@ws.apache.org


Re: URGENT HELP: WS Security Error : 182002

Posted by Ruchith Fernando <ru...@gmail.com>.
I'm not an Axis 1.x expert to help you with this ... May be Dims can help you?

- Ruchith

On 4/2/07, baba Anand <ba...@gmail.com> wrote:
> Hi Ruchit,
>
> At last fine tuning something at Tibco Server end I was able to solve that
> exception, as there were some problems with certificate signing.Now i am
> getting a different error.
>
> I tried my best to include namespace in body variables but failed. I am
> listing my problem, if somebody can help us because I doubt whether this is
> possible or not.  I am using Axis 1.4 and wss4j 1.5.
>
> When I am calling service without security I get following SOAP Body:
>
> <soapenv:Body>
>
> <ns1:Request xmlns:ns1="
> http://exampleuri.org/SimplePayload.xsd">
>
> <ns1:FirstName>Mark</ns1: FirstName>
>
> <ns1:LastName>Joe</ns1: LastName>
>
> </ns1:Request>
>
> </soapenv:Body>
>
>  Notice that both FirstName and LastName are prefixed by ns1.
>
>   When I enable security I get following SOAP Body:
>
> <soapenv:Body>
>
> <ns1:Request xmlns:ns1= http://exampleuri.org/SimplePayload.xsd
>
>  xmlns:wsu="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
> wsu:Id="id-19658898">
>
> <FirstName>Mark</FirstName>
>
> <LastName>Joe</LastName>
>
> </ns1:Request>
>
> </soapenv:Body>
>
>  Notice there's no prefix before FirstName and LastName .
>
>   For security, I am just signing the message payload. Following is the
> Wss4j Settings:
>
>   WSDoAllSender sender = new WSDoAllSender();
>
>  sender.setOption(WSHandlerConstants. SIG_PROP_FILE ,"crypto.properties" );
>
>  sender.setOption(WSHandlerConstants. SIG_KEY_ID , "DirectReference" );
>
>  sender.setOption(WSHandlerConstants. ACTION ,WSHandlerConstants.SIGNATURE
> );
>
>  sender.setOption(WSHandlerConstants. SIG_ALGO ,WSConstants.RSA );
>
>  sender.setOption(WSHandlerConstants. USER , "clientkey" );
>
>  sender.setOption(WSHandlerConstants. PW_CALLBACK_CLASS ,
>
>  PWCallBackImpl. class );
>
>  sender.setOption(WSHandlerConstants. SIGNATURE_PARTS ,"{Element}{http://
> exampleuri.org/SimplePayload.xsd}Request" );
>
>   WSDoAllReceiver recv = new WSDoAllReceiver();
>
>  recv.setOption(WSHandlerConstants. SIG_PROP_FILE , "crypto.properties" );
>
>  recv.setOption(WSHandlerConstants. ACTION , WSHandlerConstants.SIGNATURE );
>
>  recv.setOption(WSHandlerConstants. SIG_KEY_ID , "DirectReference" );
>
>  recv.setOption(WSHandlerConstants. USER , "serverkey" );
>
>  recv.setOption(WSHandlerConstants. PW_CALLBACK_CLASS ,PWCallBackImpl.class
> );
>
>  recv.setOption(WSHandlerConstants. SIGNATURE_PARTS ,"{Element}{http://
> exampleuri.org/SimplePayload.xsd}Response" );
>
>  Following is my Call settings:
>
>   org.apache.axis.description.OperationDesc oper;
>
>  org.apache.axis.description.ParameterDesc param;
>
>  oper = new org.apache.axis.description.OperationDesc();
>  oper.setName( "SimpleRequest" );
>
>  param = new org.apache.axis.description.ParameterDesc(new
> javax.xml.namespace.QName(
> "http://tempuri.org/SimplePayload.xsd" , "Request"),
> org.apache.axis.description.ParameterDesc. IN , new
> javax.xml.namespace.QName( "http://exampleuri.org/SimplePayload.xsd" ,
> "RequestType" ),
>
> servicetest.withsecurity.org.tempuri.SimplePayload_xsd.RequestType.
> class , false, true);
>
> oper.addParameter(param);
>
> oper.setReturnType( new javax.xml.namespace.QName("http://
> exampleuri.org/SimplePayload.xsd" , "ReturnType" ));
>
> oper.setReturnClass(servicetest.withsecurity.org.tempuri.SimplePayload_xsd.ReturnType
> .class );
>
> oper.setReturnQName( new javax.xml.namespace.QName("http://
> exampleuri.org/SimplePayload.xsd" , "Return" ));
>
> oper.setStyle(org.apache.axis.constants.Style. DOCUMENT );
>
> oper.setUse(org.apache.axis.constants.Use. LITERAL );
>
> _operations [0] = oper;
>
> org.apache.axis.client.Call _call = createCall();
>
> _call.setPassword( "123456" );
>
> _call.setOperation( _operations [0]);
>
> _call.setUseSOAPAction( true );
>
> _call.setSOAPActionURI(
> "/WS_Security/SimpleService.serviceagent/SimpleServiceInterfaceEndpoint1/SimpleRequest"
> );
>
> _call.setEncodingStyle(
> http://schemas.xmlsoap.org/soap/envelope/ );
>
> _call.setProperty(org.apache.axis.client.Call. SEND_TYPE_ATTR ,
> Boolean.FALSE );
>
> _call.setProperty(org.apache.axis.AxisEngine. PROP_DOMULTIREFS ,
> Boolean.FALSE );
>
> _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.
> SOAP11_CONSTANTS );
>
> _call.setOperationName( new javax.xml.namespace.QName("http://
> exampleuri.org/SimplePayload.xsd" , "SimpleRequest" ));
>
> _call.setClientHandlers(sender, recv);
>
> setRequestHeaders(_call);
>
> setAttachments(_call);
>
> try {
>
> java.lang.Object _resp = _call.invoke( new java.lang.Object[]
> {messagePart});
>
>
> I want namespaces specified explicitly for both FirstName and LastName.
>
> Please help.
>
>


-- 
www.ruchith.org
www.wso2.org

---------------------------------------------------------------------
To unsubscribe, e-mail: wss4j-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: wss4j-dev-help@ws.apache.org