每次我跑 的wsimport,我收到此错误:
[错误]“不支持使用SOAP编码。
文件中第65行的SOAP扩展元素:dummy.wsdl具有use =“encoded”“
无法解析WSDL。
WSDL(错误块):
<wsdl:input name="dummyRequest">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="urn:cmg.stdapp.webservices.generalplugin" use="encoded" />
</wsdl:input>
这是因为给定的WSDL使用'encoded',这是一种RPC编码和一种非常古老的做事方式。
wsimport不支持RPC编码
有关您的错误消息的更多信息
作为替代尝试使用 Apache Axis 这是令人讨厌的和旧的,但我想它会让你去。
对于Maven项目,请将您的WSDL放在src / main / resources / wsdl中
并将以下内容添加到您的pom.xml中
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis</artifactId>
<version>1.4</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis-jaxrpc</artifactId>
<version>1.4</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>wsdl4j</groupId>
<artifactId>wsdl4j</artifactId>
<version>1.6.2</version>
<scope>compile</scope>
</dependency>
<plugins>
...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>axistools-maven-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
<configuration>
<packageSpace>com.mycompany.service.client</packageSpace>
<sourceDirectory>src/main/resources/wsdl</sourceDirectory>
<outputDirectory>target/generated-sources/wsdl2java</outputDirectory>
</configuration>
</plugin>