目前,我们正在使用以下命令从给定的 WSDL 文件生成单个存根:
wsdl2java -uri "filename.wsdl"
这会生成一个包含所有函数调用等的 Java Stub。问题是这次生成的 Java Stub 的大小超过 20mb,这使得编译、调试和重用变得困难。
有人可以建议一种方法来生成隔离的 Java 文件而不是单个存根。
其他人可以建议一些其他方法来通过 Java Web 服务处理大型 WSDL 文件。
目前,我们正在使用以下命令从给定的 WSDL 文件生成单个存根:
wsdl2java -uri "filename.wsdl"
这会生成一个包含所有函数调用等的 Java Stub。问题是这次生成的 Java Stub 的大小超过 20mb,这使得编译、调试和重用变得困难。
有人可以建议一种方法来生成隔离的 Java 文件而不是单个存根。
其他人可以建议一些其他方法来通过 Java Web 服务处理大型 WSDL 文件。
在生成存根时,wsdl2java通常会生成数据绑定类作为存根类的内部类。所以你所有的数据绑定类都包含在存根类文件中,增加了文件的大小。
wsdl2java 参数-u
使其将数据绑定类生成为常规类,每个类都在其自己的文件中。这将减少存根类文件的大小,尽管您最终仍然会得到相同数量的代码。
我认为唯一可管理的方法是将 wsdl 生成的类作为一个单独的模块。因此,它应该编译一次,放入 maven 存储库,然后用作.jar
.
您也可以尝试使用标准的 jaxws,或者更强大和更现代的 CXF,也许它会更好地生成代码。