| Summary: | SingleRootExportParticipant ignoring situation where reference is not ignored, also not a child | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [WebTools] WTP Java EE Tools | Reporter: | Fred Bricon <fbricon> | ||||||||
| Component: | jst.j2ee | Assignee: | Rob Stryker <stryker> | ||||||||
| Status: | RESOLVED FIXED | QA Contact: | Chuck Bridgham <cbridgha> | ||||||||
| Severity: | normal | ||||||||||
| Priority: | P3 | CC: | ccc, shr31223, stryker | ||||||||
| Version: | 3.3 | Flags: | cbridgha:
review+
|
||||||||
| Target Milestone: | 3.3.2 | ||||||||||
| Hardware: | PC | ||||||||||
| OS: | Linux | ||||||||||
| Whiteboard: | |||||||||||
| Attachments: |
|
||||||||||
|
Description
Fred Bricon
Created attachment 201220 [details]
Sample projects to reproduce the issue
Quoting Rob Stryker from https://issues.jboss.org/browse/JBIDE-9496 : "The utility project is being identified as a "single root" project. There seems to be a bug in the single root handler (an efficient handler for specific cases) where it ignores references that are not child modules. Workaround is to make your project NOT single root. Steps to do that include: 1) Adding a new folder to your project called "garbage" or some other irrelevant name 2) Adding a folder mapping from "garbage" to "/" via the module assembly page. At this point your project is no longer single root and this bug is worked around." *** Bug 354469 has been marked as a duplicate of this bug. *** Created attachment 201370 [details]
Patch to ensure such jars are included
Bringing patch over from 354469
Rob, you removed yourself as the owner here, but attached a patch. That confuses me. I am assigning this to Roberto, and targeting it to WTP 3.4.0... if that is incorrect, please modify this as appropriate. Hey Chuck: Seeking a review for 3.3.2. I assume I do not need a review for 3.4.0 yet? Rob - will get to this soon... but because this is targeted to 3.3.2, it may be next week Hey Chuck: Gotta ping on this pal I have tested this change, and it looks reasonable.. Can you add a new junit with your sample? Need to fill in these holes. - Let me know if you need some help setting up Just for curiosity, was the array of delegates in this class (SingleRootExportParticipant) reviewed to see if one of them should consider this reference as a child module, or maybe add a new delegate? I think that this patch is bypassing completely the verification made by the delegates, so I wonder if that is what we want (but it is just a comment, I'm fine with the patch) > was the array of delegates in this class (SingleRootExportParticipant) reviewed to see if one of them should consider this reference as a child module
Yes, they are still checked ;) addChildModules still calls isChildModule, which iterates through the delegates to find out.
Created attachment 209605 [details]
Test case for attached project
Um... the changes to AllTests were just to speed up my testing. Those obviously don't need to be in the patch. Committed and released to 3.3.2 and head with test |