Web services 使用Maven和Axis生成客户端Web服务
当Maven使用Axis为客户端web服务生成源代码时,我遇到了一个问题 我需要使用来自其他公司公开的url的wsdl。例如,这是url中的wsdl内容Web services 使用Maven和Axis生成客户端Web服务,web-services,maven,xsd,wsdl,axis,Web Services,Maven,Xsd,Wsdl,Axis,当Maven使用Axis为客户端web服务生成源代码时,我遇到了一个问题 我需要使用来自其他公司公开的url的wsdl。例如,这是url中的wsdl内容 您的问题在于XSD映射。尝试将wsdl和XSD下载到您的工作区并生成Java类: <configuration> <packageSpace>com.xyz</packageSpace> <sourceDirectory>${basedir}/src/wsdl/rpc</so
您的问题在于XSD映射。尝试将wsdl和XSD下载到您的工作区并生成Java类:
<configuration>
<packageSpace>com.xyz</packageSpace>
<sourceDirectory>${basedir}/src/wsdl/rpc</sourceDirectory>
<outputDirectory>${basedir}/src/wsdl/rpc</outputDirectory>
</configuration
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example.axis</groupId>
<artifactId>client</artifactId>
<version>0.0.1</version>
<packaging>jar</packaging>
<name>client</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<repositories>
<repository>
<id>org.codehaus.mojo</id>
<name>org.codehaus.mojo</name>
<url>http://repository.codehaus.org/</url>
<layout>default</layout>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>javax.xml</groupId>
<artifactId>jaxrpc-api</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.1</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1</version>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.codehaus.mojo</groupId>
<artifactId>axistools-maven-plugin</artifactId>
<versionRange>[1.4,)</versionRange>
<goals>
<goal>wsdl2java</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>axistools-maven-plugin</artifactId>
<version>1.4</version>
<configuration>
<urls>
<url>http://127.0.0.1:8080/ESBService/Example?wsdl</url>
</urls>
<packageSpace>com.example.axis.client</packageSpace>
<outputDirectory>${project.build.directory}/generated-sources/wsdl2java</outputDirectory>
</configuration>
<dependencies>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.1</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1</version>
</dependency>
</dependencies>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
[ERROR] Failed to execute goal org.codehaus.mojo:axistools-maven-plugin:1.4:wsdl2java (default) on project client: Error generating Java code from WSDL. Error running Axis: WSDLException (at /wsdl:definitions/wsdl:types/xsd:schema): faultCode=OTHER_ERROR: An error occurred trying to resolve schema referenced at 'MySchema.xsd1.xsd', relative to 'file:/E:/IDE/sts-bundle/workspaces/java/hermes-webapplet/client/target/axistools/wsdl2java/urlDownloads/http---127.0.0.1-ESBService-Example-wsdl.wsdl'.: This file was not found: file:/E:/IDE/sts-bundle/workspaces/java/hermes-webapplet/client/target/axistools/wsdl2java/urlDownloads/MySchema.xsd1.xsd -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:axistools-maven-plugin:1.4:wsdl2java (default) on project client: Error generating Java code from WSDL.
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
<configuration>
<packageSpace>com.xyz</packageSpace>
<sourceDirectory>${basedir}/src/wsdl/rpc</sourceDirectory>
<outputDirectory>${basedir}/src/wsdl/rpc</outputDirectory>
</configuration