简体   繁体   中英

Generate java classes from WSDL through java program

I used wsimport command line tool for creating classses but I want to do it from the java code. Any idea?

It is possible to call the WsImport main() method:

import com.sun.tools.ws.WsImport;

...

String[] args = {"put", "your", "arguments", "here"};
WsImport.main(args);

I think that this is what the Ant task does.


Update: I'm not sure to understand what you're trying to do (and I don't think that you want to generate source code and compile it during runtime).

If the question is actually about doing dynamic invocation, JAX-WS's dynamic invocation interface (DII) is the javax.xml.ws.Dispatch object. Check JAX-WS's dynamic Dispatch interface .

You can use the wsimport ant task programatically.

You can do this by using the task class - com.sun.tools.ws.ant.WsImport . Instantiate it, set its properties (as defined on the task documentation), and call the execute() method.

What you are trying to achieve is not typical Java Web Services flow. But you can achieve this with dynamic JVM based Groovy language using GroovyWS module.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM