| Summary: | utility project -> classpath container scenario appears to be broken | ||
|---|---|---|---|
| Product: | [WebTools] WTP Java EE Tools | Reporter: | Konstantin Komissarchik <konstantin> |
| Component: | jst.j2ee | Assignee: | Rob Stryker <stryker> |
| Status: | CLOSED DUPLICATE | QA Contact: | Chuck Bridgham <cbridgha> |
| Severity: | major | ||
| Priority: | P3 | CC: | cbridgha, ccc, danny.ju, jasonpet, jsholl, manderse, nagrawal, ripsi_1, shane_clarke, thatnitind |
| Version: | 3.2 | ||
| Target Milestone: | 3.2.2 | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | |||
Assigning to Rob for initial investigation. I also came across Classpath container scenario which is covered in https://bugs.eclipse.org/bugs/show_bug.cgi?id=320940. That is reagrding "Referenced Projects Classpath Entries in EAR project" *** This bug has been marked as a duplicate of bug 318068 *** |
Using classpath tags: 1. Create a utility project. Don't associate it with an EAR. 2. Add a reference to user library to project's build path. 3. Find "Classpath entry * will not be exported or published" problem in problems view. Access quick fixes. Mark the entry for publish. The entry in the .classpath file looks like this: <classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/HelloWorld"> <attributes> <attribute name="org.eclipse.jst.component.dependency" value="../"/> </attributes> </classpathentry> The utility project can now be referenced at EAR-level or WEB-INF/lib level or both concurrently and the jars from the classpath container will get placed correctly alongside the utility project jar. Using the new Helios classpath container reference system: 1. Create a utility project. Don't associate it with an EAR. 2. Go to Deployment Assembly page. 3. Add -> Classpath Container -> User Library -> etc. The entry in .settings/org.eclipse.wst.common.component file looks like this: <dependent-module deploy-path="/lib" handle="module:/classpath/con/org.eclipse.jdt.USER_LIBRARY/HelloWorld"> <dependency-type>consumes</dependency-type> </dependent-module> The deploy-path setting of "/lib" is confusing. What is this in reference to? Presumably EAR packaging is assumed. In fact Java EE 5 ear, it seems. This seems to be the wrong place to include this information. What if I want the flexibility to package the same utility project in either WEB-INF/lib or EAR. The new approach seems to have lost ability to do that since the utility project must now include information of where in the consuming project, the utility project's dependencies will be packaged. Compare this to the classpath tagging approach. Further, after completing step 3, there library is not actually available on the utility project's build path. It is unclear where the user is supposed to go from here. The utility project referencing classpath container case appears to be broken in Helios.