[
https://issues.apache.org/jira/browse/TUSCANY-3579?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ant elder updated TUSCANY-3579:
-------------------------------
Fix Version/s: Java-SCA-1.x
> Intents in composite getting attributed to all services by default
> ------------------------------------------------------------------
>
> Key: TUSCANY-3579
> URL: https://issues.apache.org/jira/browse/TUSCANY-3579
> Project: Tuscany
> Issue Type: Bug
> Components: Java SCA Policy
> Affects Versions: Java-SCA-1.6
> Environment: Java 6
> Reporter: Anil GVN
> Priority: Critical
> Labels: Interceptors, Policy, Requires, Token
> Fix For: Java-SCA-1.x
>
>
> The issue is:
> There are 2 services in a composite. One for which no security is required
> but the other needs security. But when the "intent" attribute is specified
> for one service, its getting attributed to the other service aswell by
> default. Interestingly what is noticed is that the moment "constrains" is
> specified for a newly specified intent, in definitions.xml, the policy is
> getting engaged by default for the constrained binding types even thought
> "intent" attribute is not specified for any service in composite.
> Here's the definitions.xml:
> <?xml version="1.0" encoding="ASCII"?>
> <definitions xmlns="http://www.osoa.org/xmlns/sca/1.0"
> targetNamespace="http://example"
> xmlns:sca="http://www.osoa.org/xmlns/sca/1.0"
> xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0"
> xmlns:exam="http://example">
> <sca:intent name="authToken" constrains="sca:binding.jms sca:binding.ws">
> <description>Authentication and Authorization Intent on WS and
> JMS</description>
> </sca:intent>
> <sca:policySet name="JMSTokenAuthenticationPolicySet"
> provides="exam:authToken"
> appliesTo="sca:binding.jms">
> <exam:JMSAuthTokenPolicy tokenName="exam:AuthToken"/>
> </sca:policySet>
> <sca:policySet name="WSTokenAuthenticationPolicySet"
> provides="exam:authToken"
> appliesTo="sca:binding.ws">
> <exam:WSAuthTokenPolicy tokenName="exam:AuthToken"/>
> </sca:policySet>
> </definitions>
> And here's the composite file.
> <?xml version="1.0" encoding="UTF-8"?>
> <composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
> xmlns:exam="http://example"
> targetNamespace="http://example/ExampleService"
> name="ExampleService_Server_Composite">
> <component name="ExampleServiceComponent">
> <implementation.java
> class="org.exam.sample.sca.server.ExampleServiceImpl"/>
> <service name="ExampleService" requires="exam:authToken">
> <interface.java interface="org.exam.remote.sca.ExampleService"/>
>
> <binding.sca/>
> <binding.ws uri="http://localhost:8020/exam/ExampleService"/>
> </service>
> </component>
> <component name="UnsecuredServiceComponent">
> <implementation.java class="org.exam.remote.sca.UnsecuredServiceImpl"/>
>
> <service name="UnsecuredService">
> <interface.java interface="org.exam.remote.sca.UnsecuredService"/>
>
> <binding.sca/>
> <binding.ws uri="http://localhost:8020/exam/UnsecuredService"/>
> </service>
> </component>
> </composite>
> Even if the "requires" attribute for ExampleService is removed, policy gets
> engaged for both the services.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira