- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在为现有的 soap 网络服务编写 SOAP 客户端。我使用 Wildfly8.2 作为客户端所在的服务器和 JbossWS、JAX-WS
我使用 NEW->Web 服务客户端向导生成了通过 eclispe 调用服务所需的类
当我调用该服务时,出现错误 INVALID_WSDL ...堆栈跟踪位于底部。
实际有问题的服务调用是对 Web 服务的“addService”方法的调用。
这是我用来调用服务的代码:
SOAP service1 = new SOAP();
WorkflowEditor workflowEditor = service1.getSOAPPort();
AddService parameters = new AddService();
parameters.setLogicalURI(logicalUri);
parameters.setServiceDescription(serviceDescription);
parameters.setServiceType(servicetype.getName());
Specialties specialities = new Specialties();
specialities.getSpecialty().add("aaaa");
parameters.setSpecialties(specialities);
parameters.setWsdlLocation(wsdlLocation);
parameters.setWsdlServiceName(wsdlServiceName);
parameters.setSessionToken(currentUser.getKeystoneSessionToken());
workflowEditor.addService(parameters);
为 soap 调用中的参数生成的 java 类:
package si.arctur.services.workflowEditor;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
})
@XmlRootElement(name = "addService")
public class AddService {
@XmlElement(required = true)
protected String sessionToken;
@XmlElement(required = true)
protected String wsdlLocation;
@XmlElement(required = true)
protected String wsdlServiceName;
@XmlElement(required = true)
protected String logicalURI;
@XmlElement(required = true)
protected String serviceType;
protected AddService.Specialties specialties;
@XmlElement(required = true)
protected String serviceDescription;
public String getSessionToken() {
return sessionToken;
}
public void setSessionToken(String value) {
this.sessionToken = value;
}
public String getWsdlLocation() {
return wsdlLocation;
}
public void setWsdlLocation(String value) {
this.wsdlLocation = value;
}
public String getWsdlServiceName() {
return wsdlServiceName;
}
public void setWsdlServiceName(String value) {
this.wsdlServiceName = value;
}
public String getLogicalURI() {
return logicalURI;
}
public void setLogicalURI(String value) {
this.logicalURI = value;
}
public String getServiceType() {
return serviceType;
}
public void setServiceType(String value) {
this.serviceType = value;
}
public AddService.Specialties getSpecialties() {
return specialties;
}
public void setSpecialties(AddService.Specialties value) {
this.specialties = value;
}
public String getServiceDescription() {
return serviceDescription;
}
public void setServiceDescription(String value) {
this.serviceDescription = value;
}
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"specialty"
})
public static class Specialties {
@XmlElement(required = true)
protected List<String> specialty;
public List<String> getSpecialty() {
if (specialty == null) {
specialty = new ArrayList<String>();
}
return this.specialty;
}
}
}
这是从浏览器复制的wsdl:
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions name="WorkflowEditor" targetNamespace="*****************" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wfe="*****************" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
<wsdl:types>
<xsd:schema targetNamespace="*****************">
<xsd:element name="addService">
<xsd:complexType>
<xsd:all>
<xsd:element name="sessionToken" type="xsd:string"/>
<xsd:element name="wsdlLocation" type="xsd:string"/>
<xsd:element name="wsdlServiceName" type="xsd:string"/>
<xsd:element name="logicalURI" type="xsd:string"/>
<xsd:element name="serviceType" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="specialties">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="1" name="specialty" type="xsd:string">
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="serviceDescription" type="xsd:string">
</xsd:element>
<xsd:element name="serviceTitle" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="addServiceResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="success" type="xsd:boolean"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="removeService">
<xsd:complexType>
<xsd:all>
<xsd:element name="sessionToken" type="xsd:string"/>
<xsd:element name="serviceURI" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="removeServiceResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="success" type="xsd:boolean"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="addUserToService">
<xsd:complexType>
<xsd:all>
<xsd:element name="sessionToken" type="xsd:string"/>
<xsd:element name="serviceURI" type="xsd:string"/>
<xsd:element name="username" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="addUserToServiceResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="success" type="xsd:boolean"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="removeUserFromService">
<xsd:complexType>
<xsd:all>
<xsd:element name="sessionToken" type="xsd:string"/>
<xsd:element name="serviceURI" type="xsd:string"/>
<xsd:element name="username" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="removeUserFromServiceResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="success" type="xsd:boolean"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="addWorkflow">
<xsd:complexType>
<xsd:all>
<xsd:element name="sessionToken" type="xsd:string"/>
<xsd:element name="workflowDescription_base64" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="addWorkflowResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="success" type="xsd:boolean"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="removeWorkflow">
<xsd:complexType>
<xsd:all>
<xsd:element name="sessionToken" type="xsd:string"/>
<xsd:element name="workflowURI" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="removeWorkflowResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="success" type="xsd:boolean"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="replaceWorkflow">
<xsd:complexType>
<xsd:all>
<xsd:element name="sessionToken" type="xsd:string"/>
<xsd:element name="workflowDescription_base64" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="replaceWorkflowResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="success" type="xsd:boolean"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="getWorkflowDescription">
<xsd:complexType>
<xsd:all>
<xsd:element name="sessionToken" type="xsd:string"/>
<xsd:element name="workflowURI" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="getWorkflowDescriptionResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="success" type="xsd:boolean"/>
<xsd:element name="workflowDescription_base64" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="getWorkflows">
<xsd:complexType>
<xsd:all>
<xsd:element name="sessionToken" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="getWorkflowsResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="success" type="xsd:boolean"/>
<xsd:element name="workflows">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="0" name="workflow" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="getServices">
<xsd:complexType>
<xsd:all>
<xsd:element name="sessionToken" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="getServicesResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="success" type="xsd:boolean"/>
<xsd:element name="services">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="0" name="service" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="getServiceIOs">
<xsd:complexType>
<xsd:all>
<xsd:element name="sessionToken" type="xsd:string"/>
<xsd:element name="serviceURI" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="getServiceIOsResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="success" type="xsd:boolean"/>
<xsd:element name="serviceIOs">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="0" name="serviceIO" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="getServiceInfo">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="sessionToken" type="xsd:string"/>
<xsd:element name="serviceURI" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="getServiceInfoResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="description" type="xsd:string"/>
<xsd:element name="wsdlLink" type="xsd:string"/>
<xsd:element name="title" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="getServicesInfo">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="sessionToken" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="getServicesInfoResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="success" type="xsd:boolean"/>
<xsd:element name="services">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="0" name="service">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="serviceURI" type="xsd:string">
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="0" name="serviceDescription" type="xsd:string">
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="1" name="serviceWSDL" type="xsd:string">
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="1" name="serviceTitle" type="xsd:string">
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>
<wsdl:message name="removeWorkflowRequest">
<wsdl:part name="parameters" element="wfe:removeWorkflow">
</wsdl:part>
</wsdl:message>
<wsdl:message name="addWorkflowRequest">
<wsdl:part name="parameters" element="wfe:addWorkflow">
</wsdl:part>
</wsdl:message>
<wsdl:message name="removeUserFromServiceRequest">
<wsdl:part name="parameters" element="wfe:removeUserFromService">
</wsdl:part>
</wsdl:message>
<wsdl:message name="removeServiceRequest">
<wsdl:part name="parameters" element="wfe:removeService">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getServicesRequest">
<wsdl:part name="parameters" element="wfe:getServices">
</wsdl:part>
</wsdl:message>
<wsdl:message name="removeUserFromServiceResponse">
<wsdl:part name="parameters" element="wfe:removeUserFromServiceResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="replaceWorkflowRequest">
<wsdl:part name="parameters" element="wfe:replaceWorkflow">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getServicesInfoRequest">
<wsdl:part name="parameters" element="wfe:getServicesInfo">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getWorkflowDescriptionRequest">
<wsdl:part name="parameters" element="wfe:getWorkflowDescription">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getServicesResponse">
<wsdl:part name="parameters" element="wfe:getServicesResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getServiceIOsResponse">
<wsdl:part name="parameters" element="wfe:getServiceIOsResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getServiceInfoResponse">
<wsdl:part name="parameters" element="wfe:getServiceInfoResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="addUserToServiceResponse">
<wsdl:part name="parameters" element="wfe:addUserToServiceResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="removeWorkflowResponse">
<wsdl:part name="parameters" element="wfe:removeWorkflowResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getWorkflowDescriptionResponse">
<wsdl:part name="parameters" element="wfe:getWorkflowDescriptionResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getServiceInfoRequest">
<wsdl:part name="parameters" element="wfe:getServiceInfo">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getWorkflowsResponse">
<wsdl:part name="parameters" element="wfe:getWorkflowsResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getServiceIOsRequest">
<wsdl:part name="parameters" element="wfe:getServiceIOs">
</wsdl:part>
</wsdl:message>
<wsdl:message name="replaceWorkflowResponse">
<wsdl:part name="parameters" element="wfe:replaceWorkflowResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="addServiceResponse">
<wsdl:part name="parameters" element="wfe:addServiceResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="addUserToServiceRequest">
<wsdl:part name="parameters" element="wfe:addUserToService">
</wsdl:part>
</wsdl:message>
<wsdl:message name="removeServiceResponse">
<wsdl:part name="parameters" element="wfe:removeServiceResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getServicesInfoResponse">
<wsdl:part name="parameters" element="wfe:getServicesInfoResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="addWorkflowResponse">
<wsdl:part name="parameters" element="wfe:addWorkflowResponse">
</wsdl:part>
</wsdl:message>
<wsdl:message name="getWorkflowsRequest">
<wsdl:part name="parameters" element="wfe:getWorkflows">
</wsdl:part>
</wsdl:message>
<wsdl:message name="addServiceRequest">
<wsdl:part name="parameters" element="wfe:addService">
</wsdl:part>
</wsdl:message>
<wsdl:portType name="WorkflowEditor">
<wsdl:operation name="addService">
<wsdl:input message="wfe:addServiceRequest">
</wsdl:input>
<wsdl:output message="wfe:addServiceResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="removeService">
<wsdl:input message="wfe:removeServiceRequest">
</wsdl:input>
<wsdl:output message="wfe:removeServiceResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="addUserToService">
<wsdl:input message="wfe:addUserToServiceRequest">
</wsdl:input>
<wsdl:output message="wfe:addUserToServiceResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="removeUserFromService">
<wsdl:input message="wfe:removeUserFromServiceRequest">
</wsdl:input>
<wsdl:output message="wfe:removeUserFromServiceResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="addWorkflow">
<wsdl:input message="wfe:addWorkflowRequest">
</wsdl:input>
<wsdl:output message="wfe:addWorkflowResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="removeWorkflow">
<wsdl:input message="wfe:removeWorkflowRequest">
</wsdl:input>
<wsdl:output message="wfe:removeWorkflowResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="replaceWorkflow">
<wsdl:input message="wfe:replaceWorkflowRequest">
</wsdl:input>
<wsdl:output message="wfe:replaceWorkflowResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getWorkflowDescription">
<wsdl:input message="wfe:getWorkflowDescriptionRequest">
</wsdl:input>
<wsdl:output message="wfe:getWorkflowDescriptionResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getWorkflows">
<wsdl:input message="wfe:getWorkflowsRequest">
</wsdl:input>
<wsdl:output message="wfe:getWorkflowsResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getServices">
<wsdl:input message="wfe:getServicesRequest">
</wsdl:input>
<wsdl:output message="wfe:getServicesResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getServiceIOs">
<wsdl:input message="wfe:getServiceIOsRequest">
</wsdl:input>
<wsdl:output message="wfe:getServiceIOsResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getServiceInfo">
<wsdl:input message="wfe:getServiceInfoRequest">
</wsdl:input>
<wsdl:output message="wfe:getServiceInfoResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getServicesInfo">
<wsdl:input message="wfe:getServicesInfoRequest">
</wsdl:input>
<wsdl:output message="wfe:getServicesInfoResponse">
</wsdl:output>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="WorkflowEditorSOAP" type="wfe:WorkflowEditor">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="addService">
<soap:operation soapAction="*****************addService"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="removeService">
<soap:operation soapAction="*****************removeService"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="addUserToService">
<soap:operation soapAction="*****************addUserToService"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="removeUserFromService">
<soap:operation soapAction="*****************removeUserFromService"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="addWorkflow">
<soap:operation soapAction="*****************addWorkflow"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="removeWorkflow">
<soap:operation soapAction="*****************removeWorkflow"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="replaceWorkflow">
<soap:operation soapAction="*****************replaceWorkflow"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getWorkflowDescription">
<soap:operation soapAction="*****************getWorkflowDescription"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getWorkflows">
<soap:operation soapAction="*****************getWorkflows"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getServices">
<soap:operation soapAction="*****************getServices"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getServiceIOs">
<soap:operation soapAction="*****************getServiceIOs"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getServiceInfo">
<soap:operation soapAction="*****************getServiceInfo"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getServicesInfo">
<soap:operation soapAction="*****************getServicesInfo"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="SOAP">
<wsdl:port name="SOAPPort" binding="wfe:WorkflowEditorSOAP">
<soap:address location="*******************************"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
堆栈跟踪错误:
Caused by: javax.wsdl.WSDLException: WSDLException (at /html): faultCode=INVALID_WSDL: Expected element '{http://schemas.xmlsoap.org/wsdl/}definitions'.
at com.ibm.wsdl.xml.WSDLReaderImpl.checkElementName(Unknown Source)
at com.ibm.wsdl.xml.WSDLReaderImpl.parseDefinitions(Unknown Source)
at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
at org.apache.axis2.description.AxisService.createClientSideAxisService(AxisService.java:2317)
... 29 more
最佳答案
请尝试以这种方式创建您的服务:
SOAP service1 = new SOAP(new URL(yourURL));
但是作为 yourURL
在字符串末尾使用 ?wsdl
传递值。
关于java - 调用 SOAP 服务时出现 INVALID_WSDL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32234752/
我已经使用 vue-cli 两个星期了,直到今天一切正常。我在本地建立这个项目。 https://drive.google.com/open?id=0BwGw1zyyKjW7S3RYWXRaX24tQ
您好,我正在尝试使用 python 库 pytesseract 从图像中提取文本。请找到代码: from PIL import Image from pytesseract import image_
我的错误 /usr/bin/ld: errno: TLS definition in /lib/libc.so.6 section .tbss mismatches non-TLS reference
我已经训练了一个模型,我正在尝试使用 predict函数但它返回以下错误。 Error in contrasts<-(*tmp*, value = contr.funs[1 + isOF[nn]])
根据Microsoft DataConnectors的信息我想通过 this ODBC driver 创建一个从 PowerBi 到 PostgreSQL 的连接器使用直接查询。我重用了 Micros
我已经为 SoundManagement 创建了一个包,其中有一个扩展 MediaPlayer 的类。我希望全局控制这个变量。这是我的代码: package soundmanagement; impo
我在Heroku上部署了一个应用程序。我正在使用免费服务。 我经常收到以下错误消息。 PG::Error: ERROR: out of memory 如果刷新浏览器,就可以了。但是随后,它又随机发生
我正在运行 LAMP 服务器,这个 .htaccess 给我一个 500 错误。其作用是过滤关键字并重定向到相应的域名。 Options +FollowSymLinks RewriteEngine
我有两个驱动器 A 和 B。使用 python 脚本,我在“A”驱动器中创建一些文件,并运行 powerscript,该脚本以 1 秒的间隔将驱动器 A 中的所有文件复制到驱动器 B。 我在 powe
下面的函数一直返回这个错误信息。我认为可能是 double_precision 字段类型导致了这种情况,我尝试使用 CAST,但要么不是这样,要么我没有做对...帮助? 这是错误: ERROR: i
这个问题已经有答案了: Syntax error due to using a reserved word as a table or column name in MySQL (1 个回答) 已关闭
我的数据库有这个小问题。 我创建了一个表“articoli”,其中包含商品的品牌、型号和价格。 每篇文章都由一个 id (ID_ARTICOLO)` 定义,它是一个自动递增字段。 好吧,现在当我尝试插
我是新来的。我目前正在 DeVry 在线学习中级 C++ 编程。我们正在使用 C++ Primer Plus 这本书,到目前为止我一直做得很好。我的老师最近向我们扔了一个曲线球。我目前的任务是这样的:
这个问题在这里已经有了答案: What is an undefined reference/unresolved external symbol error and how do I fix it?
我的网站中有一段代码有问题;此错误仅发生在 Internet Explorer 7 中。 我没有在这里发布我所有的 HTML/CSS 标记,而是发布了网站的一个版本 here . 如您所见,我在列中有
如果尝试在 USB 设备上构建 node.js 应用程序时在我的树莓派上使用 npm 时遇到一些问题。 package.json 看起来像这样: { "name" : "node-todo",
在 Python 中,您有 None单例,在某些情况下表现得很奇怪: >>> a = None >>> type(a) >>> isinstance(a,None) Traceback (most
这是我的 build.gradle (Module:app) 文件: apply plugin: 'com.android.application' android { compileSdkV
我是 android 的新手,我的项目刚才编译和运行正常,但在我尝试实现抽屉导航后,它给了我这个错误 FAILURE: Build failed with an exception. What wen
谁能解释一下?我想我正在做一些非常愚蠢的事情,并且急切地等待着启蒙。 我得到这个输出: phpversion() == 7.2.25-1+0~20191128.32+debian8~1.gbp108
我是一名优秀的程序员,十分优秀!