Fix #8087-Unable to add new web service client#8228
Conversation
matthiasblaesing
left a comment
There was a problem hiding this comment.
Thank you! In general looks sane to me. I left inline comments.
|
@pepness what is the state of this? I think it would be good to rebase this onto current master, cleanup the history and check if all comments are addressed. The static |
I updated some maven plugins and removed the use of the static variable. Will re-test everything and finish by tomorrow. |
|
All done. |
matthiasblaesing
left a comment
There was a problem hiding this comment.
Looks sane to me.
Final wish: Please check if the number of commits could be reduced. Should there be a need to revert this after merge 24 commits are really ugly to remove.
Apart from that I think merging this now, i.e. early in the 31 cycle is a very good idea.
Thank you!
| * @see hasJaxWsAPI | ||
| */ | ||
| private static void getProfile(Project project) { | ||
| public Profile getProfile(Project project) { |
There was a problem hiding this comment.
Unless I'm mistaken, getProfile can stay static as there is no state other than what is stored in project that is passed in. The instances created in the *Creator classes can be dropped and replaced with a static call.
|
All done.
Rebase and squash it to 10 commits. |
|
Unless I'm mistaken nothing in here touches the sig files (the most probable cause for merge conflicts after a release), so my perspective this can be merged. |
Should I squash everything to 1 commit? |
Good question. I depends on whether the commit individually make sense or should be separated. For example if code cleanup and feature work are both present in a PR I prefer separate commits, so that later it is clear what was the intention. On the other hand a single commit is easier to remove should it become necessary. I thing there are sensible options for squashing. 57b9a65 looks like a candidate to keep separate, but could also be part of a single big change commit. Does this help you? |
|
fyi: commit msg is now missing the first line (it is starting with a bullet point), this might not be intended edit: usually its the pr title or a one sentence summary, followed by blank line |
-Add missing EJB version support -Add missing Servlet version support -Add missing AppClient descriptor for Jakarta EE 11 -Add missing AppClient resolvers Java EE 7 to Jakarta EE 11 -Replace usage of deprecated methods from codehaus -Add missing support for Client Applications -Add a new module dependency in order to get the source level of a java file -Add module 'maven.jaxws' as a friend -Implement missing interface and its methods -Move method 'getProfileFromPOM' to 'MavenProjectSupport' class and use it when computing the profile in all implementations. -Add new method 'getSourceLevel' -Add 'getSourceLevel' method to 'MavenProjectSupport', useful with JSE maven projects -Add new method 'getProfile' that compute the profile in the classes that create the WS Client; 'JaxWsClientCreator' and 'JaxWsServiceCreator' -Change logic in 'getJ2eeProfile' and use the new method 'getProfile' -Generate new code for 'equals' and 'hashCode' methods -Remove version model when calling 'addJaxWSPlugin', the default version will vary for the computed 'Profile', Java EE 8 will use model 2.2, Jakarta EE 9/10/11 will use 3.0. -Add support for creating web services for EJB, CAR and Java SE maven projects. -Simplify logic that compute whether a project is Web, Car, Jar, EJB -Add support for Car and Jar projects to 'isJakartaEENameSpace' -Fix wrong artifact and update GlassFish 7/8 version -Update maven coordinates inside test -Fix mismatch when using 'MavenProjectSupport.getProfileFromPOM' to retrieve the correct 'Profile'. -'equals' and 'hashCode' methods should cover the same fields -Remove the redundant Xpp3Dom variable -Bump 'jaxws-maven-plugin' version to 4.0.4 -Bump 'webservices-api' & 'webservices-rt' version to 4.0.6 -Bump 'maven-war-plugin' version to 3.5.1 Cleaning/Refactoring: -Bump javac to version 17 and use: -Pattern Matching for instanceof -Switch Expressions -Use try-with-resources -Add @OverRide annotation -Remove unused imports -Use diamond operator -Use parseBoolean over valueOf -Use Multi-catch -Add Logger and use it -Replace usage of deprecated methods from codehaus -Add useful comment for debugging -Add useful variable for debugging -Use constants where makes sense
You are right, I fixed the commit message. |
|
Thanks |
Fix issue 8087
NetBeans Notes:
com.sun.xml.wsJaxWsClientCreatorthat will help with the new logic to support jakarta namespaces and reduce method callsprojects
NetBeans Testing:
maven.jaxwsWeb Service from WSDLandWeb Service ClientWeb Service from WSDLandWeb Service ClientWeb Service from WSDLandWeb Service ClientJakarta EE 8




Jakarta EE 9
Jakarta EE 10
Tested with multiple projects (Web, EJB, JavaSE) with different Java/JakartaEE versions