КРАТКИЙ ОБЗОР:
Taleo имеет единственную операцию «Dispatcher WSDL», которая должна возвращать URL-адрес для использования с его WebAPI WSDL... цель состоит в том, чтобы разрешить URL-адрес для всех целей и цели программно закодированы.
Для операции getURL представление XML WcfTestClient.exe показывает, что в конверте SOAP был возвращен URL-адрес.
Однако форматированное представление WcfTestClient.exe показывает
Имя: (возврат) Значение: (null) Тип: NullObject
Мой код С# vs2010 .NET 4; taleoURL всегда имеет значение null
DispatcherAPIClient dispatcherClient = new DispatcherAPIClient("rpcrouter");
string taleoOrgCode = "TALEOSK";
string taleoURL = dispatcherClient.getURL(taleoOrgCode);
if (taleoURL == null) Console.WriteLine("null returned for " + taleoOrgCode);
Этот нуль странный, потому что вот XML-ответ от WcfTestClient.exe:
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<s:Header xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" />
<SOAP-ENV:Body>
<ns1:getURLResponse xmlns:ns1="urn:TBEDispatcherAPI" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<return xsi:type="xsd:string">https://tbe.taleo.net/NA12/ats/services/rpcrouter</return>
</ns1:getURLResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
https://tbe.taleo.net/NA12/ats/services/rpcrouter является значением элемента ‹return>.
Чтобы иметь возможность использовать приведенную выше ссылку, очевидно, мне нужно, чтобы taleoURL был не нулевым.
На страницах 154–155 руководства по API Taleo указано, что getURL определяется как строка getURL(string orgCode)
http://tbe.taleo.net/products/TBE_API_Guide.pdf из
http://www.taleo.com/solutions/taleo-business-edition-web-integration-API
также
http://tbe.taleo.net/wsdl/DispatcherAPI.wsdl
http://tbe.taleo.net/wsdl/WebAPI.wsdl
Вот часть запроса/ответа DispatcherAPI.wsdl:
<wsdl:message name="getURLRequest">
<wsdl:part name="orgCode" type="xsd:string" />
</wsdl:message>
<wsdl:message name="getURLResponse">
<wsdl:part name="getURLReturn" type="xsd:string" />
</wsdl:message>
Думаю, я что-то упускаю.
Это тот случай, когда мое собственное невежество не приносит счастья.
MSDN и Google не помогли.
Спасибо... Джерри