[jbossws-issues] [JBoss JIRA] (JBWS-3138) Better support for local WSDL deployment configurations (e.g., wsimport -clientjar)

Jim Ma (JIRA) jira-events at lists.jboss.org
Mon Mar 4 23:47:56 EST 2013


    [ https://issues.jboss.org/browse/JBWS-3138?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12758346#comment-12758346 ] 

Jim Ma commented on JBWS-3138:
------------------------------

The -clientjar flag is already added in CXF: https://issues.apache.org/jira/browse/CXF-4871. 
After move to the next cxf release, we can add this in wsimport. 
                
> Better support for local WSDL deployment configurations (e.g., wsimport -clientjar)
> -----------------------------------------------------------------------------------
>
>                 Key: JBWS-3138
>                 URL: https://issues.jboss.org/browse/JBWS-3138
>             Project: JBoss Web Services
>          Issue Type: Feature Request
>      Security Level: Public(Everyone can see) 
>          Components: jbossws-cxf, jbossws-native, productivity, tools-jaxws
>    Affects Versions: jbossws-cxf-3.3.1, jbossws-native-3.3.1, jbossws-native-3.4.0.CR1
>            Reporter: Ray Cardillo
>            Assignee: Jim Ma
>              Labels: jax-ws-catalog, local_wsdl, wsconsume, wsimport, wsimport_-clientjar, wsimport_clientjar, xml_catalog
>             Fix For: jbossws-cxf-4.2
>
>
> Developers who must deploy to disconnected or closed network environments often have challenges creating local WSDL deployment configurations.  This is especially true when they want to create a shared library or use a shared configuration that several projects must all use.  For example, if there are several J2EE web applications and web services that are all clients of a particular web service, most developers end up copying all of the required WSDL content to the WEB-INF/wsdl folder of each project and then using the wsdlLocation attribute to specify the local WSDL files.  This type of strategy is difficult to maintain, and the only other option is to create a shared OASIS XML catalog library.  However, using a shared OASIS XML catalog library can be very challenging because of the details involved... putting a properly compiled schema catalog JAR (with a properly configured jax-ws-catalog.xml file) in the WEB-INF/lib and having the container use that JAR to resolve references by configuring the service endpoint with a reference that will be resolved by the JAR.  For more information about that, see the last reference provided below, but the details are tricky to say the least, and some containers actually have problems with this type of deployment configuration.
> To help with this requirement, JAX-WS 2.2.2 RI has added a "-clientjar" option to the "wsimport" tool.  This feature is extremely important to anyone facing these challenges, and offers a huge productivity boost, from several perspectives.  For developers who know how to navigate the complexity of doing this, it helps by doing all of the labor intensive steps automatically (downloading the WSDL, creating correct resource references, compiling the JAR properly, annotating the binding properly, etc).  For developers who do not know about these details, it is even more valuable because this option is not very well known, yet is something that should be a primary use case (supporting people on isolated networks).  The requirement is often overlooked by the web services frameworks because they assume everyone will always have network access, but isolated networks are very common in certain communities.
> See the following for more references:
> http://www.java.net/print/476434
> http://wikis.sun.com/display/GlassFish/3.1Metro#3.1Metro-wsimport%5Cclientjaroption
> http://forums.java.net/jive/message.jspa?messageID=480624#480624

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the jbossws-issues mailing list