This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Summary: | [customization] WS client app code not refactored when package is changed | ||
---|---|---|---|
Product: | webservices | Reporter: | Lukas Jungmann <jungi> |
Component: | Customization | Assignee: | Milan Kuchtiak <mkuchtiak> |
Status: | VERIFIED FIXED | ||
Severity: | blocker | CC: | abadea, jbecicka, rcruz, tmysik, tzezula |
Priority: | P2 | ||
Version: | 5.x | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | DEFECT | Exception Reporter: | |
Bug Depends on: | 105645 | ||
Bug Blocks: |
Description
Lukas Jungmann
2006-04-24 13:51:14 UTC
Changing the Summary field to reflect a more precise description of this bug. The problem here is that when the user customizes the client wsdl, the user may have previously written application code based on the old wsdl->Java mappings. A warning is now displayed whenever the user customizes the wsdl, stating that user application code may have to be changed to keep up with the code generation changes. When the package has been changed using the customizer, user code should be refactored to reflect the change in the generated classes. We tried to use the Refactoring API to fix this but ran into technical problems. As a solution, Lukas Jungmann has agreed to just display a warning (already implemented) whenever the wsdl for a client is customized, and to change this into an enhancement for future a release. *** Issue 81751 has been marked as a duplicate of this issue. *** Refactoring API itself should be rewritten in 6.0, so we should try to fix this for 6.0. I'll try to fix this. package name refactoring requires package folder to be on source classpath. I'll try to implement a specific ClassPathProvider for generated java artifacts recommended by Tomas Zezula. The implementation has started. Requires also some fixes in Java SE Platfiorm module and Refactoring module. I am waiting for these changes. Meanwhile, I started with implementation of a special ClassPathProvider for generated java artifacts. Implemented ClassPathProviderMerger for WebProject : Diffs: http://web.netbeans.org/source/browse/web/project/src/org/netbeans/modules/web/project/ClassPathProviderMerger.java?rev=1.1&content-type=text/vnd.viewcvs-markup http://web.netbeans.org/source/browse/web/project/src/org/netbeans/modules/web/project/WebProject.java?r1=1.141&r2=1.142 http://web.netbeans.org/source/browse/web/project/src/org/netbeans/modules/web/project/classpath/WebProjectClassPathModifier.java?r1=1.5&r2=1.6 http://web.netbeans.org/source/browse/web/project/src/org/netbeans/modules/web/project/WebContainerImpl.java?r1=1.26&r2=1.27 http://web.netbeans.org/source/browse/web/project/src/org/netbeans/modules/web/project/ServiceModuleImpl.java?r1=1.7&r2=1.8 http://web.netbeans.org/source/browse/web/project/src/org/netbeans/modules/web/project/WebPersistenceProvider.java?r1=1.5&r2=1.6 http://web.netbeans.org/source/browse/web/project/src/org/netbeans/modules/web/project/WebProjectWebServicesSupport.java?r1=1.39&r2=1.40 http://web.netbeans.org/source/browse/web/project/src/org/netbeans/modules/web/project/WebProjectRestSupport.java?r1=1.12&r2=1.13 To explain the previous changes in web project : The changes are necessary to enable specify classpath for sources generated outside the project sources (avaiable through project.getLookup().lookup(Sources.clsss)). Specifically, I mean for sources generated into build directory by wsimport, wsgen etc. Otherwise, we are not able to implement refactoring for those source files. Changes implemented for EjbJarProject : http://j2ee.netbeans.org/source/browse/j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/ClassPathProviderMerger.java?rev=1.1&content-type=text/vnd.viewcvs-markup http://j2ee.netbeans.org/source/browse/j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/EjbJarProject.java?r1=1.78&r2=1.79 http://j2ee.netbeans.org/source/browse/j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/EjbJarProvider.java?r1=1.38&r2=1.39 http://j2ee.netbeans.org/source/browse/j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/EjbJarPersistenceProvider.java?r1=1.8&r2=1.9 http://j2ee.netbeans.org/source/browse/j2ee/ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/EjbJarWebServicesSupport.java?r1=1.38&r2=1.39 Changes implemented for J2ee Client (CAR) Project : http://j2ee.netbeans.org/source/browse/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/ClassPathProviderMerger.java?rev=1.1&content-type=text/vnd.viewcvs-markup http://j2ee.netbeans.org/source/browse/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProject.java?r1=1.18&r2=1.19 http://j2ee.netbeans.org/source/browse/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientPersistenceProvider.java?r1=1.6&r2=1.7 http://j2ee.netbeans.org/source/browse/j2ee/clientproject/src/org/netbeans/modules/j2ee/clientproject/AppClientProvider.java?r1=1.12&r2=1.13 Implement ClassPathProvider for generated JAX-WS artifacts : http://websvc.netbeans.org/source/browse/websvc/core/src/org/netbeans/modules/websvc/core/jaxws/projects/JaxWsArtifactsClassPathProvider.java?rev=1.1&content-type=text/vnd.viewcvs-markup http://websvc.netbeans.org/source/browse/websvc/core/src/org/netbeans/modules/websvc/core/jaxws/projects/EjbWSSupportLookupProvider.java?r1=1.5&r2=1.6 http://websvc.netbeans.org/source/browse/websvc/core/src/org/netbeans/modules/websvc/core/jaxws/projects/WebWSSupportLookupProvider.java?r1=1.9&r2=1.10 http://websvc.netbeans.org/source/browse/websvc/core/src/org/netbeans/modules/websvc/core/jaxws/projects/J2SEWSSupportLookupProvider.java?r1=1.5&r2=1.6 Implement ClassPathProvider for generated JAX-WS artifacts : http://websvc.netbeans.org/source/browse/websvc/core/src/org/netbeans/modules/websvc/core/jaxws/projects/JaxWsArtifactsClassPathProvider.java?rev=1.1&content-type=text/vnd.viewcvs-markup http://websvc.netbeans.org/source/browse/websvc/core/src/org/netbeans/modules/websvc/core/jaxws/projects/EjbWSSupportLookupProvider.java?r1=1.5&r2=1.6 http://websvc.netbeans.org/source/browse/websvc/core/src/org/netbeans/modules/websvc/core/jaxws/projects/WebWSSupportLookupProvider.java?r1=1.9&r2=1.10 http://websvc.netbeans.org/source/browse/websvc/core/src/org/netbeans/modules/websvc/core/jaxws/projects/J2SEWSSupportLookupProvider.java?r1=1.5&r2=1.6 J2SEProject part: RCS file: /cvs/java/j2seproject/src/org/netbeans/modules/java/j2seproject/ClassPathProviderMerger.java,v done Checking in src/org/netbeans/modules/java/j2seproject/ClassPathProviderMerger.java; /cvs/java/j2seproject/src/org/netbeans/modules/java/j2seproject/ClassPathProviderMerger.java,v <-- ClassPathProviderMerger.java initial revision: 1.1 done Checking in src/org/netbeans/modules/java/j2seproject/J2SEActionProvider.java; /cvs/java/j2seproject/src/org/netbeans/modules/java/j2seproject/J2SEActionProvider.java,v <-- J2SEActionProvider.java new revision: 1.60; previous revision: 1.59 done Checking in src/org/netbeans/modules/java/j2seproject/J2SEProject.java; /cvs/java/j2seproject/src/org/netbeans/modules/java/j2seproject/J2SEProject.java,v <-- J2SEProject.java new revision: 1.95; previous revision: 1.94 done Checking in src/org/netbeans/modules/java/j2seproject/classpath/J2SEProjectClassPathModifier.java; /cvs/java/j2seproject/src/org/netbeans/modules/java/j2seproject/classpath/J2SEProjectClassPathModifier.java,v <-- J2SEProjectClassPathModifier.java new revision: 1.4; previous revision: 1.3 done Checking in test/unit/src/org/netbeans/modules/java/j2seproject/classpath/SourcePathImplAddonsTest.java; /cvs/java/j2seproject/test/unit/src/org/netbeans/modules/java/j2seproject/classpath/SourcePathImplAddonsTest.java,v <-- SourcePathImplAddonsTest.java new revision: 1.2; previous revision: 1.1 done Checking in test/unit/src/org/netbeans/modules/java/j2seproject/classpath/SourcePathImplementationTest.java; /cvs/java/j2seproject/test/unit/src/org/netbeans/modules/java/j2seproject/classpath/SourcePathImplementationTest.java,v <-- SourcePathImplementationTest.java new revision: 1.10; previous revision: 1.9 done Calling the package-name refactoring : http://websvc.netbeans.org/source/browse/websvc/core/src/org/netbeans/modules/websvc/core/jaxws/nodes/WebServicesNodeFactory.java?r1=1.3&r2=1.4 http://websvc.netbeans.org/source/browse/websvc/core/nbproject/project.xml?r1=1.53&r2=1.54 Checking in src/org/netbeans/modules/java/j2seplatform/platformdefinition/DefaultClassPathProvider.java; /cvs/java/j2seplatform/src/org/netbeans/modules/java/j2seplatform/platformdefinition/DefaultClassPathProvider.java,v <-- DefaultClassPathProvider.java new revision: 1.14; previous revision: 1.13 done Checking in test/unit/src/org/netbeans/modules/java/j2seplatform/platformdefinition/DefaultClassPathProviderTest.java; /cvs/java/j2seplatform/test/unit/src/org/netbeans/modules/java/j2seplatform/platformdefinition/DefaultClassPathProviderTest.java,v <-- DefaultClassPathProviderTest.java new revision: 1.6; previous revision: 1.5 done Implemented final changes in refactoring/java module : http://refactoring.netbeans.org/source/browse/refactoring/java/src/org/netbeans/modules/refactoring/java/RetoucheUtils.java?r1=1.28&r2=1.29 v. |