You are viewing a plain text version of this content. The canonical link for it is here.
Posted to rampart-dev@ws.apache.org by Nadine Hauteville <nh...@gmail.com> on 2008/12/16 18:14:39 UTC

Rampart 1.4 to consume a WCF-Policy webservice

Hi all,

I've created a Java Client following example 04 of rampart 1.4.
I've retrieved policy file (see attachment) abd saved it in my project.
I've edited services.xml from Rampart adding the service name, the ref to
rampart and the policy.
I've executed the Test Code:
        ConfigurationContext confContext =

ConfigurationContextFactory.createConfigurationContextFromFileSystem("axis_repo",
"axis_repo/modules/client.axis2.xml");
    RateServiceStub stub = new RateServiceStub(confContext,"
http://xxxx/RateCardService/RateService.svc");
    ServiceClient sc = stub._getServiceClient();

    Options options = new Options();
    options.setAction("urn:echo");
    options.setTo(new EndpointReference("
http://xxxx/RateCardService/RateService.svc"));
    options.setProperty(RampartMessageData.KEY_RAMPART_POLICY,
loadPolicy("policy/policy.xml"));
    sc.setOptions(options);

    sc.engageModule("addressing");
    sc.engageModule("rampart");

        try {
            GetRegion region = new GetRegion();
            region.setDbConnection("Data Source=xxx;Initial
Catalog=yyy;Persist Security Info=True;User
ID=mediashark;Password=meD7Ashak+tz");
            GetRegionResponse resp=stub.GetRegion(region);
            System.out.println(resp.getGetRegionResult());
        } catch (RemoteException e) {
            e.printStackTrace();
        }

And I've got the error:

org.apache.axis2.AxisFault: Error in obtaining a token
    at
org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:70)
    at org.apache.axis2.engine.Phase.invoke(Phase.java:317)
    at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
    at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:429)
    at
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:401)
    at
org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:228)
    at
org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
    at
com.publigroupe.common.radio.ratecard.RateServiceStub.GetRegion(RateServiceStub.java:2626)
    at Client1.main(Client1.java:60)
Caused by: org.apache.rampart.RampartException: Error in obtaining a token
    at org.apache.rampart.util.RampartUtil.getToken(RampartUtil.java:657)
    at
org.apache.rampart.util.RampartUtil.getSecConvToken(RampartUtil.java:540)
    at
org.apache.rampart.builder.SymmetricBindingBuilder.initializeTokens(SymmetricBindingBuilder.java:872)
    at
org.apache.rampart.builder.SymmetricBindingBuilder.build(SymmetricBindingBuilder.java:83)
    at org.apache.rampart.MessageBuilder.build(MessageBuilder.java:144)
    at
org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:64)
    ... 8 more
Caused by: java.lang.NullPointerException
    at
org.apache.neethi.AbstractPolicyOperator.normalizeOperator(AbstractPolicyOperator.java:97)
    at
org.apache.neethi.AbstractPolicyOperator.normalize(AbstractPolicyOperator.java:73)
    at org.apache.neethi.Policy.normalize(Policy.java:64)
    at org.apache.neethi.Policy.normalize(Policy.java:49)
    at org.apache.neethi.Policy$PolicyIterator.<init>(Policy.java:200)
    at org.apache.neethi.Policy.getAlternatives(Policy.java:193)
    at org.apache.rahas.client.STSClient.processPolicy(STSClient.java:466)
    at
org.apache.rahas.client.STSClient.requestSecurityToken(STSClient.java:132)
    at org.apache.rampart.util.RampartUtil.getToken(RampartUtil.java:644)
    ... 13 more

Can you point me to some clue from here ?
Best Regards
Nadine

Re: Rampart 1.4 to consume a WCF-Policy webservice

Posted by Nandana Mihindukulasooriya <na...@gmail.com>.
Hi Nadine,
     Why do you have three policies at root level ? Can you put the
assertions from the input policy to the first (common) policy and try
with that.

thanks,
Nandana

On Tue, Dec 16, 2008 at 10:44 PM, Nadine Hauteville
<nh...@gmail.com> wrote:
> Hi all,
>
> I've created a Java Client following example 04 of rampart 1.4.
> I've retrieved policy file (see attachment) abd saved it in my project.
> I've edited services.xml from Rampart adding the service name, the ref to
> rampart and the policy.
> I've executed the Test Code:
>         ConfigurationContext confContext =
>
> ConfigurationContextFactory.createConfigurationContextFromFileSystem("axis_repo",
> "axis_repo/modules/client.axis2.xml");
>     RateServiceStub stub = new
> RateServiceStub(confContext,"http://xxxx/RateCardService/RateService.svc");
>     ServiceClient sc = stub._getServiceClient();
>
>     Options options = new Options();
>     options.setAction("urn:echo");
>     options.setTo(new
> EndpointReference("http://xxxx/RateCardService/RateService.svc"));
>     options.setProperty(RampartMessageData.KEY_RAMPART_POLICY,
> loadPolicy("policy/policy.xml"));
>     sc.setOptions(options);
>
>     sc.engageModule("addressing");
>     sc.engageModule("rampart");
>
>         try {
>             GetRegion region = new GetRegion();
>             region.setDbConnection("Data Source=xxx;Initial
> Catalog=yyy;Persist Security Info=True;User
> ID=mediashark;Password=meD7Ashak+tz");
>             GetRegionResponse resp=stub.GetRegion(region);
>             System.out.println(resp.getGetRegionResult());
>         } catch (RemoteException e) {
>             e.printStackTrace();
>         }
>
> And I've got the error:
>
> org.apache.axis2.AxisFault: Error in obtaining a token
>     at
> org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:70)
>     at org.apache.axis2.engine.Phase.invoke(Phase.java:317)
>     at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
>     at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:429)
>     at
> org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:401)
>     at
> org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:228)
>     at
> org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
>     at
> com.publigroupe.common.radio.ratecard.RateServiceStub.GetRegion(RateServiceStub.java:2626)
>     at Client1.main(Client1.java:60)
> Caused by: org.apache.rampart.RampartException: Error in obtaining a token
>     at org.apache.rampart.util.RampartUtil.getToken(RampartUtil.java:657)
>     at
> org.apache.rampart.util.RampartUtil.getSecConvToken(RampartUtil.java:540)
>     at
> org.apache.rampart.builder.SymmetricBindingBuilder.initializeTokens(SymmetricBindingBuilder.java:872)
>     at
> org.apache.rampart.builder.SymmetricBindingBuilder.build(SymmetricBindingBuilder.java:83)
>     at org.apache.rampart.MessageBuilder.build(MessageBuilder.java:144)
>     at
> org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:64)
>     ... 8 more
> Caused by: java.lang.NullPointerException
>     at
> org.apache.neethi.AbstractPolicyOperator.normalizeOperator(AbstractPolicyOperator.java:97)
>     at
> org.apache.neethi.AbstractPolicyOperator.normalize(AbstractPolicyOperator.java:73)
>     at org.apache.neethi.Policy.normalize(Policy.java:64)
>     at org.apache.neethi.Policy.normalize(Policy.java:49)
>     at org.apache.neethi.Policy$PolicyIterator.<init>(Policy.java:200)
>     at org.apache.neethi.Policy.getAlternatives(Policy.java:193)
>     at org.apache.rahas.client.STSClient.processPolicy(STSClient.java:466)
>     at
> org.apache.rahas.client.STSClient.requestSecurityToken(STSClient.java:132)
>     at org.apache.rampart.util.RampartUtil.getToken(RampartUtil.java:644)
>     ... 13 more
>
> Can you point me to some clue from here ?
> Best Regards
> Nadine
>
>
>



-- 
Nandana Mihindukulasooriya
WSO2 inc.

http://nandana83.blogspot.com/
http://www.wso2.org