Bug 1027917

Summary: Descriptor validation errors due to config model version change
Product: [JBoss] JBoss Fuse Service Works 6 Reporter: David Ward <dward>
Component: SwitchYardAssignee: David Ward <dward>
Status: CLOSED CURRENTRELEASE QA Contact: Tomas Rohovsky <trohovsk>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.0.0 GACC: atangrin, kbabo, oskutka, soa-p-jira
Target Milestone: ER7   
Target Release: 6.0.0   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description David Ward 2013-11-07 13:23:35 UTC
Refer to JIRA issue: https://issues.jboss.org/browse/SWITCHYARD-1818

Comment 1 JBoss JIRA Server 2013-11-08 21:22:00 UTC
David Ward <dward> made a comment on jira SWITCHYARD-1818

https://github.com/jboss-switchyard/core/pull/585
https://github.com/jboss-switchyard/components/pull/620

All scanners that create models now respect the parent switchyard namespace, if there is one provided.  When it exists, a namespace whose version number matches the switchyard namespace's version is attempted to be found.  If found, it uses that. Otherwise, the default namespace is used.

For this to work, I had to change the Namespace implementations to be enums, so that I could iterate over them using values().

Comment 2 JBoss JIRA Server 2013-11-08 21:26:35 UTC
David Ward <dward> made a comment on jira SWITCHYARD-1818

https://github.com/jboss-switchyard/core/pull/585
https://github.com/jboss-switchyard/components/pull/620

All scanners that create models now respect the parent switchyard namespace, if there is one provided.  When it exists, a namespace whose version number matches the switchyard namespace's version is attempted to be found.  If found, it uses that. Otherwise, the default namespace is used.

For this to work, I had to change the Namespace implementations to be enums, so that I could iterate over them using values().

This fix is best understood by looking at the BeanSwitchYardScanner, which does exactly as described above, and is the most pertinent part of the fix for this bug: http://goo.gl/lo3Czt

Comment 3 JBoss JIRA Server 2013-11-12 00:50:18 UTC
Keith Babo <kbabo> made a comment on jira SWITCHYARD-1818

pushed

Comment 4 Tomas Rohovsky 2013-12-12 15:00:39 UTC
Cannot be verified before fixing of https://bugzilla.redhat.com/show_bug.cgi?id=1041319

Comment 5 Keith Babo 2013-12-12 15:15:50 UTC
I think the title of this BZ is a bit misleading, particularly in terms of validating the feature from a QE perspective, so let me provide a bit of additional background.  The purpose of this BZ was to allow our tooling and runtime to work with multiple versions of SY namespace+dependency sets.  Previously, some of the plugins hard-coded version information into the class, which meant the plugin would always use the version it had defined at compile-time.  This BZ allowed the plugins to inherit the application model version from switchyard.xml based on the namespace.  

As a general rule, the version of SY dependencies should match the application model in use.  For FSW 6.0, there is only one supported version of the application model (1.1), so there's effectively nothing to certify here from a product perspective.  I do believe we should document the process of bumping existing projects to 1.1 both from a namespace and Maven dependency standpoint.

Comment 6 Tomas Rohovsky 2013-12-12 16:24:52 UTC
I haven't updated the version of dependencies. But it should be handled automatically somehow. The behaviour described in https://issues.jboss.org/browse/SWITCHYARD-1818 does not appear anymore.

Comment 7 JBoss JIRA Server 2014-06-16 23:48:08 UTC
Keith Babo <kbabo> updated the status of jira SWITCHYARD-1818 to Closed