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 <[EMAIL PROTECTED]> wrote:
Baba,
Could you please try this setting?
AxisProperties.setProperty("enableNamespacePrefixOptimization","false");
-- dims
On 4/2/07, Ruchith Fernando <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]> 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: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
--
Davanum Srinivas :: http://wso2.org/ :: Oxygen for Web Services Developers