Community
Participate
Working Groups
Build Identifier: I20100511-0800 For Java EE 6, WTP still has to go out to the web to access the xsd files to load the deployment descriptor. if the XSD files cannot be loaded from the web, WTP hangs Reproducible: Always
Created attachment 169152 [details] The package must be registered with the Java EE 5 and Java EE 6 xsds
Due to the fact that the same EMF models are used for both Java EE 5 and Java EE 6, the default EMF-generated code uses the original eNS_URI as the hashkey for looking up requests. We need to register the Packages with both the Java EE 5 and Java EE 6 URIs, so that when a deployment descriptor is created for Java EE 6 objects, the parser for the deployment descriptor is able to look up the model in EMF instead of having to go out to the web.
Also, as a note, this patch does not effect Connector 1.6 nor Web fragment 3.0, since neither of these had an equivalent in Java EE 5.
approve
This bug is stop-ship because it can cause Eclipse to hang in certain scenarios. There is no workaround. This fix has had the Java EE Tools JUnit bucket run against it, as well as having been tested by hand- I put a breakpoint in URIHandlerImpl.createInputStream() and looked at the URIs passed in to ensure that we were not going out to the web. Chuck Bridgham and Jason Sholl have reviewed this fix. See comment #2 for a technical overview of the fix. The risk is low- this is just additional keys that can be looked up in a HashMap to resolve the correct EPackage for the given URI.
Committed to HEAD for WTP 3.2 RC2.
*** Bug 298576 has been marked as a duplicate of this bug. ***