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

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

Reply via email to