PeopleSoft Integration Broker and Web Services (Updated)
Thanks for the various comments on my post for the PeopleSoft Integration Broker and Web services. Based on the comments, I noticed that I needed to provide additional information regarding the IB integration with Google web services. I noticed that most of the comments were related to the external system contact error. If you continue to receive this error after following the steps below, it is most likely that some of the configuration were either not done or you are behind a firewall that preventing you from going out of the network.
- Configure the integration broker by changing the gateway URL.


2.Activate the IB domain. When PeopleSoft is initially installed you will see a lot of invalid IB domains.You can flush out the invalid entries by purging the domain status.


3. When the integration gateway is configured you should see the target connectors in the gateway configuration.


4.Configure the services schemaname and target location. Please note the “Service” in the listening connector. This is PeopleSoftServiceListeningConnector.


5.Configure the service using the web service consume wizard.








7.Create a page,record etc to test the integration.


8.Enter the following code to test the integration we created.
Local SOAPDoc &SOAPDoc;
Local XmlNode &lnodeEnvNode;
&SOAPDoc = CreateSOAPDoc();
&SOAPDoc.AddEnvelope(%SOAP_Custom);
&lnodeEnvNode = &SOAPDoc.EnvelopeNode;
&lnodeEnvNode.AddAttribute(“xmlns”, “urn:GoogleSearch”);
&SOAPDoc.AddBody();
&SOAPDoc.AddMethod(“doGoogleSearch”, 1);
&SOAPDoc.AddParm(“key”, “eDZYCx9QFHIXI/xojJqrYspYi1Geo74o”);
&SOAPDoc.AddParm(“q”, “BPEL”);
&SOAPDoc.AddParm(“start”, “0″);
&SOAPDoc.AddParm(“maxResults”, “5″);
&SOAPDoc.AddParm(“filter”, “true”);
&SOAPDoc.AddParm(“restrict”, “”);
&SOAPDoc.AddParm(“safeSearch”, “false”);
&SOAPDoc.AddParm(“lr”, “”);
&SOAPDoc.AddParm(“ie”, “lang_en”);
&SOAPDoc.AddParm(“oe”, “lang_en”);
&lxmlDoc = CreateXmlDoc(&SOAPDoc.GenXmlString());
&lmsgGoRequest = CreateMessage(Operation.DOGOOGLESEARCH);
MY_GOOG_IB_WRK.RAWXML1.Value = &lxmlDoc.GenXmlString();
&lmsgGoRequest.SetXmlDoc(&lxmlDoc);
&lmsgGoResponse = %IntBroker.SyncRequest(&lmsgGoRequest);
MY_GOOG_IB_WRK.RAWXML2.Value = &lmsgGoResponse.GenXMLString();
9. Here is request and response

Request :
<?xml version=”1.0″?>
<SOAP-ENV:Envelope xmlns=”urn:GoogleSearch” xmlns:SOAP-ENV=”http://schemas.xmlsoap.org/soap/envelope/”><SOAP-ENV:Body><doGoogleSearch><key>eDZYCx9QFHIXI/xojJqrYspYi1Geo74o</key><q>BPEL</q>
<start>0</start><maxResults>5</maxResults><filter>true</filter><restrict/>
<safeSearch>false</safeSearch><lr/><ie>lang_en</ie>
<oe>lang_en</oe></doGoogleSearch>
</SOAP-ENV:Body></SOAP-ENV:Envelope>
Response:
<?xml version=’1.0′ encoding=’UTF-16′?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV=”http://schemas.xmlsoap.org/soap/envelope/” xmlns:xsi=”http://www.w3.org/1999/XMLSchema-instance” xmlns:xsd=”http://www.w3.org/1999/XMLSchema”>
<SOAP-ENV:Body>
<ns1:doGoogleSearchResponse xmlns:ns1=”urn:GoogleSearch” SOAP-ENV:encodingStyle=”http://schemas.xmlsoap.org/soap/encoding/”>
<return xsi:type=”ns1:GoogleSearchResult”>
<directoryCategories xmlns:ns2=”http://schemas.xmlsoap.org/soap/encoding/” xsi:type=”ns2:Array” ns2:arrayType=”ns1:DirectoryCategory[0]“>
</directoryCategories>
<documentFiltering xsi:type=”xsd:boolean”>false</documentFiltering>
<endIndex xsi:type=”xsd:int”>5</endIndex>
<estimateIsExact xsi:type=”xsd:boolean”>false</estimateIsExact>
<estimatedTotalResultsCount xsi:type=”xsd:int”>1640000</estimatedTotalResultsCount>
<resultElements xmlns:ns3=”http://schemas.xmlsoap.org/soap/encoding/” xsi:type=”ns3:Array” ns3:arrayType=”ns1:ResultElement[5]“>
<item xsi:type=”ns1:ResultElement”>
<URL xsi:type=”xsd:string”>http://en.wikipedia.org/wiki/Business_Process_Execution_Language</URL>
<cachedSize xsi:type=”xsd:string”>49k</cachedSize>
<directoryCategory xsi:type=”ns1:DirectoryCategory”>
<fullViewableName xsi:type=”xsd:string”></fullViewableName>
<specialEncoding xsi:type=”xsd:string”></specialEncoding>
</directoryCategory>
<directoryTitle xsi:type=”xsd:string”></directoryTitle>
<hostName xsi:type=”xsd:string”></hostName>
<relatedInformationPresent xsi:type=”xsd:boolean”>true</relatedInformationPresent>
<snippet xsi:type=”xsd:string”>As defined in the abstract
of the Web Services <b>Business Process
Execution Language</b> <br> OASIS Standard
WS-<b>BPEL</b> 2.0, WS-<b>BPEL</b>
(or <b>BPEL</b> for short) is a language for <b>…</b></snippet>
<summary xsi:type=”xsd:string”></summary>
<title xsi:type=”xsd:string”><b>Business Process
Execution Language</b> – Wikipedia, the free encyclopedia</title>
</item>
<item xsi:type=”ns1:ResultElement”>
<URL xsi:type=”xsd:string”>http://www.ibm.com/developerworks/library/ws-bpel/</URL>
<cachedSize xsi:type=”xsd:string”>28k</cachedSize>
<directoryCategory xsi:type=”ns1:DirectoryCategory”>
<fullViewableName xsi:type=”xsd:string”></fullViewableName>
<specialEncoding xsi:type=”xsd:string”></specialEncoding>
</directoryCategory>
<directoryTitle xsi:type=”xsd:string”></directoryTitle>
<hostName xsi:type=”xsd:string”></hostName>
<relatedInformationPresent xsi:type=”xsd:boolean”>true</relatedInformationPresent>
<snippet xsi:type=”xsd:string”><b>Business Process Execution Language</b> for Web Services provides a means to formally <br> specify business processes and interaction protocols.</snippet>
<summary xsi:type=”xsd:string”></summary>
<title xsi:type=”xsd:string”><b>Business Process Execution
Language</b> for Web Services version 1.1</title>
</item>
<item xsi:type=”ns1:ResultElement”>
<URL xsi:type=”xsd:string”>http://searchsoa.techtarget.com
/generic/0,295582,sid26_gci1172072,00.html</URL>
<cachedSize xsi:type=”xsd:string”>68k</cachedSize>
<directoryCategory xsi:type=”ns1:DirectoryCategory”>
<fullViewableName xsi:type=”xsd:string”></fullViewableName>
<specialEncoding xsi:type=”xsd:string”></specialEncoding>
</directoryCategory>
<directoryTitle xsi:type=”xsd:string”></directoryTitle>
<hostName xsi:type=”xsd:string”></hostName>
<relatedInformationPresent xsi:type=”xsd:boolean”>true</relatedInformationPresent>
<snippet xsi:type=”xsd:string”>This SearchSOA.com learning guide introduces you to <b>Business Process Execution</b> <br> <b>Language</b> for Web services, or BPEL4WS. In this <b>BPEL</b> learning guide, <b>…</b></snippet>
<summary xsi:type=”xsd:string”></summary>
<title xsi:type=”xsd:string”><b>BPEL</b> Learning Guide</title>
</item>
<item xsi:type=”ns1:ResultElement”>
<URL xsi:type=”xsd:string”>http://www.oasis-open.org/committees/wsbpel/</URL>
<cachedSize xsi:type=”xsd:string”>25k</cachedSize>
<directoryCategory xsi:type=”ns1:DirectoryCategory”>
<fullViewableName xsi:type=”xsd:string”></fullViewableName>
<specialEncoding xsi:type=”xsd:string”></specialEncoding>
</directoryCategory>
<directoryTitle xsi:type=”xsd:string”></directoryTitle>
<hostName xsi:type=”xsd:string”></hostName>
<relatedInformationPresent xsi:type=”xsd:boolean”>true</relatedInformationPresent>
<snippet xsi:type=”xsd:string”>The purpose of the Web Services <b>Business Process Execution Language</b> TC was to <br> continue work on the business process language published in the <b>Business</b> <b>…</b></snippet>
<summary xsi:type=”xsd:string”></summary>
<title xsi:type=”xsd:string”>OASIS Web Services <b>Business Process Execution Language</b> (WSBPEL) TC</title>
</item>
<item xsi:type=”ns1:ResultElement”>
<URL xsi:type=”xsd:string”>http://www.bpelsource.com/</URL>
<cachedSize xsi:type=”xsd:string”>32k</cachedSize>
<directoryCategory xsi:type=”ns1:DirectoryCategory”>
<fullViewableName xsi:type=”xsd:string”></fullViewableName>
<specialEncoding xsi:type=”xsd:string”></specialEncoding>
</directoryCategory>
<directoryTitle xsi:type=”xsd:string”></directoryTitle>
<hostName xsi:type=”xsd:string”></hostName>
<relatedInformationPresent xsi:type=”xsd:boolean”>true</relatedInformationPresent>
<snippet xsi:type=”xsd:string”>A comprehensive <b>Business Process Execution Language</b> resource guide covering <b>BPEL</b> <br> process management software, services, information, and news.</snippet>
<summary xsi:type=”xsd:string”></summary>
<title xsi:type=”xsd:string”>BPELSource <b>BPEL</b> Resource Guide</title>
</item>
</resultElements>
<searchComments xsi:type=”xsd:string”></searchComments>
<searchQuery xsi:type=”xsd:string”>BPEL</searchQuery>
<searchTime xsi:type=”xsd:double”>0.131477</searchTime>
<searchTips xsi:type=”xsd:string”></searchTips>
<startIndex xsi:type=”xsd:int”>1</startIndex>
</return>
</ns1:doGoogleSearchResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
[...] wanted to integrate PeopleSoft with Amazon web service similar to the one I did before here for Google. But, this time I would like to add BPEL to the mix because that is certainly the way [...]
PeopleSoft Integration Broker and BPEL (Amazon Web Service) « Sri’s Weblog
August 30, 2008 at 8:16 pm
Excellent post. I tried one such integration with w3schools.com example webservice(temp conversion). I am getting Integration Gateway – External System Contact Error. What might be the problem
arun
October 17, 2008 at 11:58 am
arun, i am getting the same problem too. could you please let me know if you had solved it.
chaitanya
August 19, 2009 at 4:15 am
Can you share the WSDL_NODE’s definition – especially the Primary URL of it? I believe this is the node to which the XML document will be posted to carry it over to operation call. What exactly is the URL of the receiving node?
Muthukumar
November 10, 2008 at 11:54 am
Hi from Mexico,
I have a problem when i configured the integration gateway.- this is teh message when see the target conector
SOAP-ENV:ServerPeopleSoftTargetConnector:Unable to decrypt the passwordIntegration Broker Response2010209
Help me please
Pko
November 11, 2008 at 1:01 am
Thanks for the info. However, When I try to consume a webservice from a URL (as specified in this post) I am getting an error “ExternalOperationName” parameter is missing. Any idea why I am not able to parse the WSDL?
kumar
November 11, 2008 at 10:29 am
Hi,
Thanks for an excellent post. However, When I try to connect to the google webservice, I am getting an error Suggesting that an integration broker error – External operation name is mandatory. I am not sure if there is any problem with the connectors. Can you please help?
Muthukumar
November 12, 2008 at 12:35 pm
Excellent work sri, i have been constantly reading your work on IB. Very impressive. Keep it going..
Rajesh
December 2, 2008 at 5:44 pm
Thanks for your helpful post. When i try to consume a web service using WSDL url i am getting an error
“Failed to parse WSDL document. Not a valid WSDL. Could not find definitions element”
Could you please help?
Jitthu V M
December 3, 2008 at 5:31 am
I have the same problem with Arun…
Integration Gateway – External System Contact Error (158, 1072)
I am able to ping to Gateway, I have no problem accessing the WSDL URL from the Web Explorer.
Any other steps I’ve missed out?
Julian
December 24, 2008 at 3:10 am
hi Sri,
This article is very useful especially for people like me who dont have an instance to try it out immediately:-)
I have a query might sound silly though,excuse me.
I have integrated HCM with third party using web services but the version 8.9.
In 9.0 the only difference in using web services is that the WSDL is auto generated right and I do not need to use BPEL stuff…
Thanks,
Anu
anupreyan
January 20, 2009 at 8:44 am
Anu,
I am not sure I understand your question.
But, I am think you question is can you integrate systems without using BPEL?
Yes, you can do that. Infact if you look at the google integration that I have done, you will notice that I did the integration using PeopleSoft and Google using auto WSDL from google.
addsrikanth
January 24, 2009 at 3:45 pm
Hi Sri,
Was looking at integrating Peoplesoft with an external system i.e. ASP, basically would like to transfer the data from an ASP page and store it in a PS system using Web services & IB. Could you please help me out with it.
Raj
January 21, 2009 at 7:07 am
Raj,
For PeopleSoft inbound messages using web services, one of option is Component interface. Performance of the CI is little questionable but it depends on the underlying componenet. I will try to get you some example of this soon, may over this weekend.
addsrikanth
January 21, 2009 at 12:59 pm
Hi Raj,
Did Sri gave u any solution for your question..can you please explain me in detail..
Munny
Munny
September 21, 2009 at 10:21 am
Hi,
Thanks for your post.i have few questions.
Where Listening connectors resides ?and how we can see the listening connectors assosiated with the particular gateway?
why we will use more than one subscription event to recieve the messages?
Kishore
March 19, 2009 at 6:50 am
In response to:
SOAP-ENV:ServerPeopleSoftTargetConnector:Unable to decrypt the passwordIntegration Broker Response2010209
(*) Configure gateway properties
PeopleTools -> Integration Broker -> Configuration -> Gateways
Richard Sandoz
November 6, 2009 at 1:45 pm
Search (should just bring you to your gateway, LOCAL)
Click link ‘Gateway Setup Properties’ then Login
Richard Sandoz
November 6, 2009 at 1:47 pm
Fill in fields:
App Server URL: //hostipaddress:9000
UserID: PS
Password: PS
Tools Release: 8.49
(Tools release needs to be correct or else obscure errors)
Richard Sandoz
November 6, 2009 at 1:47 pm
Also:
Update ANONYMOUS node
PeopleTools -> Integration Broker -> Integration Setup -> Nodes
Change Default UserID to PS (has PSADMIN)
Richard Sandoz
November 6, 2009 at 2:36 pm
Great! Thank you so much for making this wonderful site. There are just a few questions I’d like to ask, how can we see the listening connectors associated with the particular gateway?
Freight Broker Training
September 3, 2010 at 5:42 pm
The above configuration presumes that you have already setup WSDL_NODE in your Integration Broker properties.
If you are getting the following error when Pinging the WSDL_NODE (External Remote node), that means you have done the correct configuration.
Integration Gateway – External System Contact Error
Gateway: LOCAL
Connector ID: HTTPTARGET
Primary URL: Primary URL of your Webservice
Giri
September 30, 2010 at 6:20 pm
http://api.google.com/GoogleSearch.wsdl
Is not working. So I used the following URL to test Google Search WSDL:
http://www.soapclient.com/xml/googleSearch.wsdl
Giri
September 30, 2010 at 7:04 pm
Hiii,
U created Node …m not getting HTTPTARGET..So plz..can u brief this??
Uday
February 10, 2011 at 10:22 am
i have similar requirement. i have consumbed third part WSDL file. i have written SOAP for request and response . i am getting fault string “java.lang.NullPointerException
”
-
-
-
soapenv:Server.userException
java.lang.NullPointerException
-
carnage
Narasimha reddy g
March 9, 2011 at 7:20 am
Has anyone done this with Documentum…. Pulling data or getting It to Open one of the scanned Documents
Will
March 28, 2011 at 5:41 pm
To whom it may concern,
I have used the code above for something else but I am getting the error where SetXmlDoc method is used and the actual error is “This method can only be used by nonrowset-based messages. (2,852) RECORD.FIELD.FieldChange PCPC:1459 Statement:14.
Does anybody know how to resolve this issue.
Thanks in advance,
Andy
August 30, 2011 at 5:58 am