PeopleSoft WSDL をサービス参照としてインポートしようとすると、Visual Studio 2010 と 2012 の両方で不透明なエラーが発生します。
Service Referencesを右クリックしてAdd Service Referenceを選択し、 URL をAddressの下に貼り付け、GoをクリックしてからOKをクリックします。
次の不透明なエラーが発生します。
http://xmlns.oracle.com/Enterprise/Tools/schemasは何にも解決されないように見えますが、それが問題ではないことはほぼ確実です。
Visual Studio と同じ PC 上のsoapUIでこれをテストしたところ、すべてが正常に動作しました。SOAP サービスにアクセスして、期待どおりの応答を得ることができます。
エラー メッセージの不透明さは紛らわしく、これは soapUI で機能するため、WSDL はおそらく適切でしょうか? このエラーを検索しましたが、これまでのところ何も見つかりませんでした。
これが WSDL です (URL とサービスの詳細をわかりにくくするためにサニタイズされています)。
<?xml version="1.0"?>
<wsdl:definitions name="A_PROGRAM_SERVICE.1" targetNamespace="http://xmlns.oracle.com/Enterprise/HCM/schemas/A_PROGRAM_SERVICE.1" xmlns:A_PROGRAM_REQUEST_MSG.VERSION_1="http://xmlns.oracle.com/Enterprise/Tools/schemas" xmlns:A_PROGRAM_RESPONSE_MSG.VERSION_1="http://xmlns.oracle.com/Enterprise/Tools/schemas" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://xmlns.oracle.com/Enterprise/HCM/schemas/A_PROGRAM_SERVICE.1" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsp="http://schemas.xmlsoap.org/ws/2002/12/policy">
<wsp:UsagePolicy wsdl:Required="true"/>
<plnk:partnerLinkType name="A_PROGRAM_SERVICE_PartnerLinkType">
<plnk:role name="A_PROGRAM_SERVICE_Provider">
<plnk:portType name="tns:A_PROGRAM_SERVICE_PortType"/>
</plnk:role>
</plnk:partnerLinkType>
<wsdl:types>
<xsd:schema elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:import namespace="http://xmlns.oracle.com/Enterprise/Tools/schemas" schemaLocation="A_PROGRAM_REQUEST_MSG.VERSION_1.xsd"/>
<xsd:import namespace="http://xmlns.oracle.com/Enterprise/Tools/schemas" schemaLocation="A_PROGRAM_RESPONSE_MSG.VERSION_1.xsd"/>
</xsd:schema>
</wsdl:types>
<wsdl:message name="A_PROGRAM_REQUEST_MSG.VERSION_1">
<wsdl:documentation>A Data Repository</wsdl:documentation>
<wsdl:part element="A_PROGRAM_REQUEST_MSG.VERSION_1:InputParameters" name="parameter"/>
</wsdl:message>
<wsdl:message name="A_PROGRAM_RESPONSE_MSG.VERSION_1">
<wsdl:documentation>A Data Repository</wsdl:documentation>
<wsdl:part element="A_PROGRAM_RESPONSE_MSG.VERSION_1:root" name="parameter"/>
</wsdl:message>
<wsdl:portType name="A_PROGRAM_SERVICE_PortType">
<wsdl:operation name="A_PROGRAM_OP">
<wsdl:documentation>A Data Repository</wsdl:documentation>
<wsdl:input message="tns:A_PROGRAM_REQUEST_MSG.VERSION_1" name="A_PROGRAM_REQUEST_MSG.VERSION_1"/>
<wsdl:output message="tns:A_PROGRAM_RESPONSE_MSG.VERSION_1" name="A_PROGRAM_RESPONSE_MSG.VERSION_1"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="A_PROGRAM_SERVICE_Binding" type="tns:A_PROGRAM_SERVICE_PortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="A_PROGRAM_OP">
<soap:operation soapAction="A_PROGRAM_OP.v1" style="document"/>
<wsp:Policy wsu:Id="UsernameTokenSecurityPolicyPasswordOptional" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsp:ExactlyOne>
<wsp:All>
<wsse:SecurityToken wsp:Usage="wsp:Required" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:TokenType>wsse:UserNameToken</wsse:TokenType>
<Claims>
<SubjectName MatchType="wsse:Exact"/>
<UsePassword wsp:Usage="wsp:Optional"/>
</Claims>
</wsse:SecurityToken>
</wsp:All>
</wsp:ExactlyOne>
</wsp:Policy>
<wsdl:input name="A_PROGRAM_REQUEST_MSG.VERSION_1">
<soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="literal"/>
</wsdl:input>
<wsdl:output name="A_PROGRAM_RESPONSE_MSG.VERSION_1">
<soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="A_PROGRAM_SERVICE">
<wsdl:documentation>A Data Repository</wsdl:documentation>
<wsdl:port binding="tns:A_PROGRAM_SERVICE_Binding" name="A_PROGRAM_SERVICE_Port">
<soap:address location="http://some_url_here/PSIGW/PeopleSoftServiceListeningConnector/SYSTEMNAME"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>