Java WSDL为元素类型提供不同的名称空间
我正在创建web服务,因此必须修改.WSDL来添加它们。当我这样做时,我在这行上有一个错误:Java WSDL为元素类型提供不同的名称空间,java,web-services,jakarta-ee,soap,wsdl,Java,Web Services,Jakarta Ee,Soap,Wsdl,我正在创建web服务,因此必须修改.WSDL来添加它们。当我这样做时,我在这行上有一个错误: <s:element minOccurs="0" maxOccurs="1" name="MonitoringResult" type="tms:State" /> 请将状态的模式定义添加到您的问题中。您所说的状态的模式定义是什么意思?我在WSDL中没有任何关于状态的信息。State的定义如下:public enum State{RUNNING,STOPPED;}模式使用type=“tms
<s:element minOccurs="0" maxOccurs="1" name="MonitoringResult" type="tms:State" />
请将
状态的模式定义添加到您的问题中。您所说的状态的模式定义是什么意思?我在WSDL中没有任何关于状态的信息。State的定义如下:public enum State{RUNNING,STOPPED;}模式使用type=“tms:State”
需要在模式中的其他地方(或包含/导入的模式之一)存在
或
。听起来这是一个XML模式问题,而不是Java问题。我在模式中没有关于readObjects方法的信息,它正在工作。如果没有完整的WSDL,很难确定发生了什么。(请随意更改所有URI以使用example.com。)如果您将从WSDL生成的类与手工编写的类相结合,则会出现不可预测和/或令人困惑的结果。从WSDL生成所有类,或者从类生成WSDL。
<wsdl:definitions
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:tms="http://***.com/***/evpt/util"
xmlns:tns="http://***.com/***/evpt/services/v1_0_0"
xmlns:s="http://www.w3.org/2001/XMLSchema"
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
targetNamespace="http://***.com/***/evpt/services/v1_0_0"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<s:element name="ReadObjects">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="keySet" type="tns:ObjectKeySet" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="ReadObjectsResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="ReadObjectsResult" type="tns:ObjectSet" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="Monitoring">
<s:complexType/>
</s:element>
<s:element name="MonitoringResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="MonitoringResult" type="tms:State" />
</s:sequence>
</s:complexType>
</s:element>
package com.***.***.evpt.util;
public enum State {
RUNNING,
STOPPED;
}