Bug 780943 (SOA-3410) - Smooks breaks backward compatibility between SOA-P 5.1 and 5.2 in some cases
Summary: Smooks breaks backward compatibility between SOA-P 5.1 and 5.2 in some cases
Keywords:
Status: CLOSED NEXTRELEASE
Alias: SOA-3410
Product: JBoss Enterprise SOA Platform 5
Classification: JBoss
Component: Documentation, 3rd Party, Compatibility
Version: 5.2.0.ER4
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
: 5.2.0.ER5
Assignee: David Le Sage
QA Contact:
URL: http://jira.jboss.org/jira/browse/SOA...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-09-22 15:31 UTC by Robert Balent
Modified: 2014-01-13 00:20 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-11-04 13:34:47 UTC
Type: Bug


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker SOA-3410 0 Major Closed Smooks breaks backward compatibility between SOA-P 5.1 and 5.2 in some cases 2012-09-12 14:49:44 UTC

Description Robert Balent 2011-09-22 15:31:26 UTC
Affects: Documentation (Ref Guide, User Guide, etc.)
project_key: SOA

Smooks doesn't support some configurations with SOA-P 5.2 that are possible with SOA-P 5.1.

For example we can define EDI mapping model in two ways. The first[1] works on both versions, but second[2] can be used only with SOA-P 5.1.

The second configuration was in quickstarts last time in SOA-P 4.3 so it's probably not very important issue. But if customer uses this configuration on SOA-P 5.1 and will migrate, it will crash on SOA-P 5.2.



[1]
<edi:reader mappingModel="parse/edi-to-xml-order-mapping.xml" />

[2]
<resource-config selector="org.xml.sax.driver">
    <resource>org.milyn.smooks.edi.SmooksEDIParser</resource>
    <param name="mapping-model">/smooks_configs/parse/edi-to-xml-order-mapping.xml</param>
</resource-config>

Comment 1 Tom Fennelly 2011-09-22 16:19:11 UTC
What error is coming out of the second config?

Comment 2 Tom Fennelly 2011-09-22 16:28:31 UTC
Obviously the paths to the mapping configs in [1] and [2] are different.  I assume that's not relevant wrt the tests your doing?

Comment 3 Robert Balent 2011-09-22 16:43:08 UTC
It works on 5.1, but it's ClassNotFoundException. Smooks in SOA 5.2 doesn't even contains class org.milyn.smooks.edi.SmooksEDIParser.

Comment 4 Tom Fennelly 2011-09-22 19:38:57 UTC
OK... that class was deprecated since v1.3 (http://www.milyn.org/javadoc/v1.3/smooks-cartridges/edi/) and was removed in v1.4 (http://www.milyn.org/javadoc/v1.4/smooks-cartridges/edi/).

If still using the old config, you need to change it to use EDIReader (http://www.milyn.org/javadoc/v1.4/smooks-cartridges/edi/org/milyn/smooks/edi/EDIReader.html)

Comment 5 Robert Balent 2011-09-22 19:45:25 UTC
So it is now documentation issue and it will be the best to mention in migration guide that if you use this old deprecated class you should change it to EDIReader. Am I right?

Comment 6 Tom Fennelly 2011-09-22 19:52:15 UTC
You could document it that way (change class to "org.milyn.smooks.edi.EDIReader"), or tell them to modify the config to use the newer config as per config [1] in your original post.

Comment 7 Robert Balent 2011-09-22 19:55:30 UTC
I've got one other question. Do you know some other classes that were removed in v1.4 and is possible that it can break some Smooks configurations so we can document it? Thank you very much.

Comment 8 Tom Fennelly 2011-09-22 20:03:50 UTC
Off the top of my head... I don't know.  Shouldn't be too hard to compile a list however, using the Javadoc for each version (http://www.smooks.org/mediawiki/index.php?title=User_Documentation).  You can see the deprecated classes in each version of the API and so should be able to easily see which classes were removed.



Comment 9 Tom Fennelly 2011-09-22 20:18:02 UTC
Just thought too... if you go to Milyn Jira you should be able to get a list of all issues that effect compatibility.

http://jira.codehaus.org/secure/IssueNavigator!executeAdvanced.jspa

and enter the following query...

project = MILYN AND fixVersion = "Smooks v1.4" AND status = Closed AND component = "Backward Compatibility Breaker"

Comment 10 Len DiMaggio 2011-10-04 13:37:56 UTC
Tom - for SOA-P 5.2 we need to either:

* Identify impact to our customers - what will fail in smooks - in documentation - but - the class was not deprecated in the Smooks we shipped in 5.1, correct?

-or-

* Fallback to Smooks 1.3

Do we think that this is an edge case?

Comment 11 Tom Fennelly 2011-10-04 13:44:15 UTC
The class was also deprecated in 1.2 (http://www.milyn.org/javadoc/v1.2/smooks-cartridges/edi/org/milyn/smooks/edi/SmooksEDIParser.html), which is the version in 5.1.

Comment 12 Len DiMaggio 2011-10-04 17:00:43 UTC
Affects: Added: Documentation (Ref Guide, User Guide, etc.)


Comment 14 David Le Sage 2011-10-05 04:25:11 UTC
Release Notes Docs Status: Added: Documented as Known Issue
Writer: Added: dlesage
Release Notes Text: Added: https://issues.jboss.org/browse/SOA-3410

There is a backwards compatibility issue as Smooks no longer contains org.milyn.smooks.edi.SmooksEDIParser class. If you are still using an old configuration, you must change it to use EDIReader (http://www.milyn.org/javadoc/v1.4/smooks-cartridges/edi/org/milyn/smooks/edi/EDIReader.html) or update the configuration to this:  &lt;edi:reader mappingModel="parse/edi-to-xml-order-mapping.xml" /&gt;



Comment 15 David Le Sage 2011-10-05 04:25:37 UTC
Documented in release notes as a known issue.

Comment 16 Martin Vecera 2011-10-21 08:57:45 UTC
I cannot find the text in http://documentation-stage.bne.redhat.com/docs/en-US/JBoss_Enterprise_SOA_Platform/5/html/5.2.0_Release_Notes/index.html

Is there any other location for the document?

Comment 17 David Le Sage 2011-10-25 01:11:30 UTC
Hello Martin. It is in the release notes field at the top of this JIRA form ^. When I rebuild the release notes doc itself, it will be pulled in automatically.


Note You need to log in before you can comment on or make changes to this bug.