[
https://issues.apache.org/jira/browse/TUSCANY-3561?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12868755#action_12868755
]
Simon Nash commented on TUSCANY-3561:
-------------------------------------
This problem is caused by code in the read() and resolve() methods of the
org.apache.tuscany.sca.workspace.processor.impl.ContributionContentProcessor
class. This code was originally copied from the processReadPhase() and
processResolvePhase() methods of the
org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl class.
The code in ContributionServiceImpl was updated in revisions r586271 and
r620307 to process .composite files after all other artifacts, which ensures
that definitions.xml files are processed before composites that use them.
These changes weren't applied to ContributionContentProcessor, and this is why
the problem occurs in the domain manager but not in other cases.
> Domain manager throws policy exception if definitions.xml file is read after
> .composite file
> --------------------------------------------------------------------------------------------
>
> Key: TUSCANY-3561
> URL: https://issues.apache.org/jira/browse/TUSCANY-3561
> Project: Tuscany
> Issue Type: Bug
> Components: Java SCA Domain Management
> Affects Versions: Java-SCA-1.6
> Reporter: Simon Nash
> Priority: Blocker
> Fix For: Java-SCA-Next
>
>
> When the domain manager is invoked by a node to load a contribution and
> resolve a composite within the contribution, the domain manager incorrectly
> throws a policy exception back to the node in some cases. Specifically, if a
> .composite file within the contribution uses policy intents that are
> fulfilled by policy sets provided by the contribution's definitions.xml file,
> this succeeds or fails randomly depending on the relative ordering of files
> within the contribution. If this ordering is such that the definitions.xml
> file is read and resolved after the .composite file is read and resolved, the
> intents appear to be unfulfilled and the exception shown below is thrown by
> the domain manager.
> This problem is blocking the 1.0 release of the travel sample. I am
> experimenting to see if I can find a reliable workaround.
> Node output:
> [java] 18-May-2010 16:01:19 org.apache.tuscany.sca.node.impl.NodeImpl
> <init
> >
> [java] INFO: Creating node: http://localhost:9990/node-config/creditcard
> [java] 18-May-2010 16:01:20 org.apache.tuscany.sca.node.impl.NodeImpl
> confi
> gureNode
> [java] INFO: Loading contribution:
> file:/E:/td/book/relx/travelsample/launc
> hers/fullapp-domain/../../contributions/creditcard-payment-jaxb-policy/target/sc
> atours-contribution-creditcard-payment-jaxb-policy.jar
> [java] 18-May-2010 16:01:21 org.apache.tuscany.sca.node.impl.NodeImpl
> confi
> gureNode
> [java] INFO: Loading composite:
> http://localhost:9990/composite-resolved/co
> mposite:fullapp-creditcard;http://tuscanyscatours.com/;creditcard
> [java] 18-May-2010 16:01:23
> org.apache.tuscany.sca.assembly.xml.CompositeDo
> cumentProcessor
> [java] SEVERE: HTTP Server Error :
> org.apache.tuscany.sca.assembly.builder.
> impl.PolicyConfigurationException: The following are unfulfilled intents for
> bin
> ding in service - CreditCardPayment Unfulfilled Intents =
> [{http://www.osoa.org/
> xmlns/sca/1.0}authentication]
> [java] 18-May-2010 16:01:23
> org.apache.tuscany.sca.assembly.xml.CompositeDo
> cumentProcessor
> [java] SEVERE: ContributionReadException occured due to :
> java.io.IOExcepti
> on: Server returned HTTP response code: 500 for URL:
> http://localhost:9990/compo
> site-resolved/composite:fullapp-creditcard;http://tuscanyscatours.com/;creditcar
> d
> [java] Exception in thread "main" org.osoa.sca.ServiceRuntimeException:
> org
> .apache.tuscany.sca.monitor.MonitorRuntimeException: HTTP Server Error :
> org.apa
> che.tuscany.sca.assembly.builder.impl.PolicyConfigurationException: The
> followin
> g are unfulfilled intents for binding in service - CreditCardPayment
> Unfulfilled
> Intents = [{http://www.osoa.org/xmlns/sca/1.0}authentication]
> [java] at
> org.apache.tuscany.sca.node.impl.NodeImpl.analyzeProblems(Nod
> eImpl.java:713)
> [java] at
> org.apache.tuscany.sca.node.impl.NodeImpl.configureNode(NodeI
> mpl.java:602)
> [java] at
> org.apache.tuscany.sca.node.impl.NodeImpl.<init>(NodeImpl.jav
> a:143)
> [java] at
> org.apache.tuscany.sca.node.impl.NodeFactoryImpl.createSCANod
> eFromURL(NodeFactoryImpl.java:42)
> [java] at
> scatours.FullAppNodesLauncher.main(FullAppNodesLauncher.java:
> 30)
> [java] Caused by:
> org.apache.tuscany.sca.monitor.MonitorRuntimeException: H
> TTP Server Error :
> org.apache.tuscany.sca.assembly.builder.impl.PolicyConfigurat
> ionException: The following are unfulfilled intents for binding in service -
> Cre
> ditCardPayment Unfulfilled Intents =
> [{http://www.osoa.org/xmlns/sca/1.0}authent
> ication]
> [java] ... 5 more
> Domain Manager output:
> [java] 18-May-2010 16:01:10
> org.apache.tuscany.sca.node.launcher.DomainMana
> gerLauncher main
> [java] INFO: Apache Tuscany SCA Domain Manager is starting...
> [java] 18-May-2010 16:01:10 org.apache.tuscany.sca.node.impl.NodeImpl
> <init
> >
> [java] INFO: Creating node: DomainManager.composite
> [java] 18-May-2010 16:01:11 org.apache.tuscany.sca.node.impl.NodeImpl
> confi
> gureNode
> [java] INFO: Loading contribution:
> file:/p:/tuscany-sca-1.6/modules//tuscan
> y-domain-manager-1.6.jar
> [java]
> [java] Using default configuration properties.
> [java] 18-May-2010 16:01:13
> org.apache.tuscany.sca.assembly.builder.impl.Co
> mponentReferenceWireBuilderImpl
> [java] WARNING: No targets for reference: Composite =
> {http://tuscany.apach
> e.org/xmlns/sca/1.0}DomainManager Reference = domainSearch
> [java] 18-May-2010 16:01:13
> org.apache.tuscany.sca.assembly.builder.impl.Co
> mponentReferenceWireBuilderImpl
> [java] WARNING: No targets for reference: Composite =
> {http://tuscany.apach
> e.org/xmlns/sca/1.0}DomainManager Reference = contributionReader
> [java] 18-May-2010 16:01:13 org.apache.tuscany.sca.node.impl.NodeImpl
> start
> [java] INFO: Starting node: DomainManager.composite
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/ui/home/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/ui/home/home.js
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/ui/search/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/search/search.
> js
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/home-gadget/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/home-gadget/ho
> me-gadget.js
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/ui/workspace/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/workspace/work
> space.js
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/workspace-gadg
> et/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/workspace-gadg
> et/workspace-gadget.js
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/ui/files/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/files/files.js
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/files-gadget/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/files-gadget/f
> iles-gadget.js
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/ui/composite/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/composite/comp
> osite.js
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/composite-gadg
> et/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/composite-gadg
> et/composite-gadget.js
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/ui/cloud/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/cloud/cloud.js
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/cloud-gadget/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/ui/cloud-gadget/c
> loud-gadget.js
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/workspace/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/workspace/
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/contribution/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/feed/files/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/feed/files/
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/files/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/composite/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/composite/
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/composite-source/
> *
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/deployable/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/deployable/
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/composite-generat
> ed/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/composite-resolve
> d/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/cloud/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/cloud/
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/cloud-source/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/composite-config/
> *
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/composite-config/
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/node-config/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/quickstart/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/search/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/search/
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/processes/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/processes/
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping:
> http://GrosMorne:9990/node/processes/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/node/processes/
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.http.jetty.JettyServer a
> ddServletMapping
> [java] INFO: Added Servlet mapping: http://GrosMorne:9990/ping/*
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.node.launcher.DomainMana
> gerLauncher main
> [java] INFO: SCA Domain Manager is now started.
> [java] 18-May-2010 16:01:14
> org.apache.tuscany.sca.node.launcher.DomainMana
> gerLauncher main
> [java] INFO: Press 'q' to quit, 'r' to restart.
> [java] 18-May-2010 16:01:23
> org.apache.tuscany.sca.assembly.builder.impl.Co
> mpositePolicyBuilderImpl
> [java] SEVERE: Policy Related Exception occured due to :
> org.apache.tuscany
> .sca.assembly.builder.impl.PolicyConfigurationException: The following are
> unful
> filled intents for binding in service - CreditCardPayment
> [java] Unfulfilled Intents =
> [{http://www.osoa.org/xmlns/sca/1.0}authentica
> tion]
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.