我使用此link创建了带有Axis2引擎(服务器和客户端)的SOAP Web服务 它工作正常。客户端的Eclipse插件(使用WSDL的代码生成)创建了存根,回调处理程序,公开的方法类等。直到现在都很好。
我的一位朋友给了一些项目,其中包含使用axis2的客户端。这个项目我可以看到一些如下文件:
`
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Java class for anonymous complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* <complexType>
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="count" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* </sequence>
* </restriction>
* </complexContent>
* </complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"count"
})
@XmlRootElement(name = "deleteMultipleResponse")
public class DeleteMultipleResponse {
protected String count;
/**
* Gets the value of the count property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getCount() {
return count;
}
/**
* Sets the value of the count property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setCount(String value) {
this.count = value;
}
}
`
我可以在下面看到多个文件并使用注释。
` /**
* <p>Java class for anonymous complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* <complexType>
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="count" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* </sequence>
* </restriction>
* </complexContent>
* </complexType>
* </pre>
*
*
*/
`
我使用此link创建的项目未生成任何此类文件和任何使用注释的文件。
请你解释一下这个区别。
答案 0 :(得分:0)
您的朋友似乎使用JAXB数据绑定,而您显然不是。
AXIS2数据绑定有多种不同的选择(ADB,Axiom,Jaxb等)
您可能需要查看官方的Apache Axis2教程以获得更深入的了解 http://axis.apache.org/axis2/java/core/docs/userguide-creatingclients.html#adb