【问题标题】:Generating JAVA classes from wsdl in runtime [closed]在运行时从 wsdl 生成 JAVA 类
【发布时间】:2013-05-03 20:11:41
【问题描述】:

我从 JAVA 代码调用 wsimport 时遇到的问题。我有 maven 项目,我需要自动调用 wsimport 并获得调用的结果(这非常重要)。我发现只有一种方法可以使用exec()cmd 调用wsimport,但这不是我需要的。

所以,也许任何知道一些 API 的人可以从 JAVA 代码中使用 wsimportwsimport 的一些替代方案,以便从 wsdl 生成适合我需要的 JAVA 类。

【问题讨论】:

    标签: java wsdl jax-ws wsimport


    【解决方案1】:

    你试过JAX-WS Maven Plugin吗?

    另一方面,您可以使用 JAX-WS RI 库以某种方式生成客户端,如下所示:

    package org.paulvargas.test;
    
    import com.sun.tools.ws.WsImport;
    
    public class MyWsdl2JavaTool {
        public static void main(String[] args) throws Throwable {
            WsImport.doMain("http://wsf.cdyne.com/WeatherWS/Weather.asmx?wsdl"
                                                                     .split("\\s+"));
        }
    }
    

    要单独编译吗?

    使用javax.tools.ToolProvider.getSystemJavaCompiler()方法获取javax.tools.JavaCompiler的实例

    查看更多:

    【讨论】:

    • According to this doc,OP 仍然需要做一些设置才能使用 wsimport(classloading etc) 类。你能把它包括在你的答案中吗?
    【解决方案2】:

    您也可以使用 java 在 cmd 上运行命令。或者创建一个批处理文件并从 java 中执行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-08
      • 1970-01-01
      • 1970-01-01
      • 2017-02-05
      • 2011-01-30
      相关资源
      最近更新 更多