我正在尝试用java构建一个soap web服务。我在soap中的一个方法输入参数应该是
<s:element name="GetDocumentInfo">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="pPassword" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="xmlDoc">
<s:complexType mixed="true">
<s:sequence>
<s:any/>
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>
</s:element>在我的java类中,我将它映射到java变量。
@XmlElement(name = "password")
private java.lang.String password;
@XmlElement(name = "doc")
private java.util.List<java.lang.Object> doc;它正在生成wsdl输出
<xs:complexType name="GetDocumentInfo">
<xs:sequence>
<xs:element minOccurs="0" name="password" type="xs:string"/>
<xs:element maxOccurs="unbounded" minOccurs="0" name="doc" type="xs:anyType"/>
</xs:sequence>
</xs:complexType>如果我使用Object,我会得到JAXB编组错误。单据变量类型应该是什么?
soap客户端是一个通用程序(.net),当它们导入wsdl时,会得到以下错误:
“System.Xml.XmlDocument”类型的对象不能转换为“System.Object[]”类型
我对jaxb不是很熟悉。
我应该用Xml和一个变量XmlDocument来创建一个类吗?XmlDocument变量类型应该是什么?
发布于 2017-07-21 15:58:11
下面是需要包含的类的详细信息。
public class doc<T> {
@XmlMixed
@XmlAnyElement(lax = true)
protected List<T> content;
public List<T> getContent() {
if (content == null) {
content = new ArrayList<T>();
}
return this.content;
}
public void setContent() {
content = this.content;
}}
https://stackoverflow.com/questions/45215679
复制相似问题