Issue Details (XML | Word | Printable)

Key: SHALE-258
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Craig McClanahan
Reporter: Paul Spencer
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Shale

Shale core and test framework 1.0.3 includes MyFaces 1.1.1

Created: 21/Aug/06 01:21 PM   Updated: 23/Jan/07 04:40 PM
Component/s: Core, Test
Affects Version/s: 1.0.3, 1.0.3-SNAPSHOT
Fix Version/s: 1.0.4

Flags: Important


 Description  « Hide
Shale's core and test framwork includes MyFaces 1.1.1 in the classpath when testing via Maven. The testing framework should not impose the JSF implementation on
what is being tested.

A related issue was reported, and fixed, in MyFaces. See http://issues.apache.org/jira/browse/TOMAHAWK-612



 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Craig McClanahan added a comment - 21/Aug/06 05:33 PM
I presume we mean that the testing framework should *not* impose the JSF implementation on what is being tested, right? :-)

Paul Spencer added a comment - 21/Aug/06 06:40 PM
Correct "type-o" in description. The second sentence should have read "The testing framework should not impose the JSF implementation on
what is being tested." The word "not" was left out.

Thanks to Craig McClanahan for pointing out the error.

Paul Spencer added a comment - 23/Aug/06 06:11 PM
This affects maven users. Based on that I would suggest status be raised to blocker or critical

Wendy Smoak added a comment - 24/Aug/06 11:54 PM

To avoid enforcing the choice of JSF implementation on users, all of the JSF api and impl dependencies should be marked 'provided'.

Since these definitions are in the shale-parent pom, this issue affects all of the Shale jars.

This will be addressed as part of a larger effort that will also fix the dependencies for the webapps and work around some issues with Maven's dependency resolution.

Users can work around this issue in Shale 1.0.3 by using <exclusions> in their own project poms.

Craig McClanahan added a comment - 14/Sep/06 06:17 AM
As of the 20060914 nightly build (and corresponding updated 1.0.4-SNAPSHOT), I have completed a first pass at refactoring our build process to address these dependency issues. Now, building the Shale Framework libraries depends on the MyFaces API jar, but when you build an application you still get the choice of which implementation to use. As a side effect, the framework library POMs (including shale-core and shale-test) should no longer force you to use the JSF implementation that they were built against.

Leaving the issue open for the moment, because it is very likely I've missed some details along the way.

Craig McClanahan added a comment - 15/Sep/06 11:13 PM
The shale-core and shale-test modules (and others) now declare a "provided" dependency on the MyFaces API jar (because they need JSF APIs in order to compile), but this will not translate into a runtime dependency on this particular version.