| Summary: | [hotbug] Add service definition extension point to locate workspace artifacts | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [WebTools] WTP Webservices | Reporter: | Keith Chong <keith.chong.ca> | ||||||
| Component: | jst.ws | Assignee: | Yen Lu <yenlu> | ||||||
| Status: | RESOLVED FIXED | QA Contact: | Keith Chong <keith.chong.ca> | ||||||
| Severity: | enhancement | ||||||||
| Priority: | P3 | CC: | arawlins, david_williams, edwinc, keith.chong.ca, yenlu | ||||||
| Version: | 3.0.4 | Keywords: | plan | ||||||
| Target Milestone: | 3.0.5 | Flags: | david_williams:
pmc_approved+
keith.chong.ca: pmc_approved? (raghunathan.srinivasan) keith.chong.ca: pmc_approved? (naci.dai) deboer: pmc_approved+ keith.chong.ca: pmc_approved? (neil.hauge) keith.chong.ca: pmc_approved? (kaloyan) |
||||||
| Hardware: | PC | ||||||||
| OS: | Windows XP | ||||||||
| Whiteboard: | PMC_approved | ||||||||
| Attachments: |
|
||||||||
|
Description
Keith Chong
The patch created in the original bug, 242440, was done early enough in WTP 3.1 that it should just be a matter of re-applying it to WTP 3.0.5. Created attachment 131038 [details]
Patch
Marking this as a hotbug_request. 1) Affiliation = IBM 2) Release to fix in = WTP 3.0.5 3) Without this change, Web service WSDL and schema related tools will generally fail to resolve imported documents due to the adopter's complex project structure. Since this complex project structure is the adopter product's default and a key feature, this should be fixed as soon as possible. The WTP tool which are affected by this issue is the WSDL2Java emitter from Apache Axis. If a WSDL contains an import of another WSDL or schema via relative reference, the emitter uses the URL protocol to resolve it. So, when a user selects a WSDL document in their workspace and attempts to use it to create an Apache Axis 1 Web service or client, the workspace resource is eventually converted into a file: URL which is then passed to WSDL2Java. WSDL2Java then uses the file: protocol to resolve relative references to imported WSDLs and schemas. However, in the adopter's product, a relative reference via file: protocol may not point to what they need or may not even be valid. They have their own protocol which they need to use and thus need a way to dictate the URL that is to be passed to WSDL2Java. This can be done through an extension point. Without this extension point, the adopter cannot support their project structure. We do not know of any workarounds that would not involve either WTP or the adopter intercepting the selected resource and substituting some kind of URL that will work. Even if such substitution were possible outside WTP, the WSDL and schema structure would likely need to be copied into a structure that Apache Axis 1's WSDL2Java can understand. This can result in performance issues especially with large WSDL and XSD documents which are typical for industry standard schemas. WTP does not currently have any extensions based on this new extension point. Existing scenarios using Apache Axis 1's WSDL2Java should continue to work as before. Top-down, bottom up and client scenarios have been successfully executed in WTP 3.1 against this change already for bug 242440. Also, as mentioned earlier, the changes carry back to WTP 3.0.5 since they were performed early in 3.1. The adopter has also reviewed the patch. The risk should be minimal. Finally, there is a properties file change but that is just for the name of the extension point. The adopter does not this translated in WTP 3.0.5. Submitting for PMC approval. I'm ok with the small change to property file, for extension point. And can see the need to put a 3.1 solution back ported to 3.0.5. Essentially no external change, so I'm ok with this too. Created attachment 131319 [details]
Modified patch
I needed to modify the patch to include the versioning change for 3.0.5.
The following is the net change over the original patch:
Plugin/Feature New Version
org.eclipse.jst.ws 1.0.308
org.eclipse.jst.ws.consumption.ui 1.1.5
org.eclipse.jst.ws.ui 1.0.305
org.eclipse.wst.ws 1.1.4
org.eclipse.wst.ws.explorer 1.0.310
org.eclipse.wst.ws.ui 1.1.1
org.eclipse.wst.ws.core_feature 3.0.5
org.eclipse.wst.ws_ui.feature 3.0.5
org.eclipse.wst.ws_sdk.feature 3.0.5
Changing to PMC_approved for book-keeping purposes. Fix released for WTP 3.0.5. |