웹 서버가 델파이에 내장되어 있으며, 이클립스 마법사를 통해 웹 서비스 클라이언트를 만들어 자바 (Eclipse IDE 사용)에서 웹 서비스를 사용하려고합니다. 웹 서비스 탐색기는 WSDL 파일을 인식하지만 클라이언트를 만들려고 할 때 마법사는 "예기치 않은 속성"이 있으며 파일을 만들지 않는다고 말합니다.델파이 웹 서비스를 자바로 가져 오기
내 wsdl 파일 (내 Delphi Web Server에서 게시하는 파일)입니다.
definicions.binding.operation.input
definitions.binding.operation.output
예기치 않은 :
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xs="http://www.w3.org/2001/XMLSchema" name="ITSOAPWebServiceservice" targetNamespace="http://tempuri.org/" xmlns:tns="http://tempuri.org/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/">
<message name="WebMethod0Request">
<part name="Document" type="xs:string"/>
</message>
<message name="WebMethod0Response">
<part name="return" type="xs:boolean"/>
</message>
<portType name="ITSOAPWebService">
<operation name="WebMethod">
<input message="tns:WebMethod0Request"/>
<output message="tns:WebMethod0Response"/>
</operation>
</portType>
<binding name="ITSOAPWebServicebinding" type="tns:ITSOAPWebService">
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="WebMethod">
<soap:operation soapAction="urn:TWebServiceIntf1-ITSOAPWebService#WebMethod" style="rpc"/>
<input message="tns:WebMethod0Request">
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:TWebServiceIntf1-ITSOAPWebService"/>
</input>
<output message="tns:WebMethod0Response">
<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:TWebServiceIntf1-ITSOAPWebService"/>
</output>
</operation>
</binding>
<service name="ITSOAPWebServiceservice">
<port name="ITSOAPWebServicePort" binding="tns:ITSOAPWebServicebinding">
<soap:address location="http://localhost:1024/soap/ITSOAPWebService"/>
</port>
</service>
</definitions>
지금, Eclipse는 모두에서 "메시지"속성이 있다고 말한다. 이들은 이미
definitions.portType.operation.input
definitions.portType.operation.output
에 정의되어 있기 때문에 나는 그것이 중복 알고하지만 여전히, 나는 웹 서비스를 가져올 수 없습니다.
내 Java 응용 프로그램은 JBoss 4.2 서버에서 실행되지만 Java Utility Project로 클라이언트를 만드는 것이 더 쉽다고 생각했습니다. 두 개가 아닌 하나의 프로젝트 만 생성하기 때문입니다.
그래서 Eclipse에서 이러한 속성을 무시하는 방법이나 Delphi에서 공개하지 않는 방법에 대한 아이디어는 무엇입니까?