Forums Register Login

difference between wsimport and wsgen command

+Pie Number of slices to send: Send
Hi

Please let me know the difference between wsimport and wsgen commands.
For example -when to use which command ? what are the differentiating factors for these commands.

thanks
+Pie Number of slices to send: Send
a search on google gives me below mentioned description

The wsimport tool
The wsimport tool reads a WSDL and generates all the required artifacts for web service development, deployment, and invocation. The wsimport tool supports the top-down approach to developing JAX-WS Web services, where you are starting from a wsdl.
The wsimport tool generated JAX-WS portable artifacts include Service Endpoint Interface (SEI), Service, Exception class mapped from wsdl:fault (if any), JAXB generated value types (mapped java classes from schema types) etc. These artifacts can be packaged in a WAR file with the WSDL and schema documents along with the endpoint implementation to be deployed.

The wsgen tool
The wsgen tool reads an existing web service implementation class (SIB) and generates the required JAX–WS portable artifacts for web service development and deployment. The wsgen tool can be used for bottoms-up approach, where you are starting from a service endpoint implementation (SIB) rather than a wsdl.

Can we say that wsgen and wsimport command generates same classes (same JAX-WS artifacts)?
Can we say that wsgen and wsimport command is used to generate both server and client side code ?
can wsgen command be used to generate a WSDL file ?

Thanks
+Pie Number of slices to send: Send
 


1. Can we say that wsgen and wsimport command generates same classes (same JAX-WS artifacts)?
2. Can we say that wsgen and wsimport command is used to generate both server and client side code ?
3. can wsgen command be used to generate a WSDL file ?



Correct me if I am wrong.
wsgen and wsimport generates JAX-WS artifacts from SBI and WSDL respectively.
If those JAX-WS artifacts do not exist, when the service is published using Endpoint.publish or web service container (Tomcat), those artifacts are dynamically generated.
If those artifacts exist (generated by wsgen), the Endpoint.publish does not generate those artifacts.

1. Yes. wsgen and wsimport generate request and response wrapper bean classes and the JAXB classes (XXX.class and XXXResponse.class).
However, wsgen generates the JAXB classes and put them in a jaxws folder. But wsimport does not put those classes in any folder instead in the current directory.
2. The JAX-WS artifacts generated can be used by both server and client side.
3. I think wsgen can be used to generate WSDL. Here is an example at http://www.mkyong.com/webservices/jax-ws/jax-ws-wsgen-tool-example/
+Pie Number of slices to send: Send
thanks for the reply.

Watchya got in that poodle gun? Anything for me? Or this tiny ad?
a bit of art, as a gift, that will fit in a stocking
https://gardener-gift.com


reply
reply
This thread has been viewed 21036 times.
Similar Threads
Confusion in writing web service client + jax-ws
beginner questions regarding axis2
Joining SAAJ and JAXB
How to impose Security on to JAXWS
doubts on annotation processing tool
More...

All times above are in ranch (not your local) time.
The current ranch time is
Apr 15, 2024 22:06:00.