You are on page 1of 20

PeopleSoft Integration Broker and Web Services

with 19 comments

PeopleSoft Integration Broker and Web Services


Integrating PeopleSoft to external systems using web services is similar, if not simpler, to integrating to third party systems prior to web services age. Today, I will try to go through step by step instructions to integrate PeopleSoft with google web services API. If I have some time this weekend, I will try to go through the same with Amazon web services. Google WSDL is located at this URL Google WSDL.

1. Import the WSDL


PeopleSoft lets you create the messages, queues (called channels before), routings (called transactions before) and service operations and services manually or automatically. Before web services you had to create all these (except services and operations) manually. With WSDL, all these are automatically created for you once WSDL import it done.

2. Verify all the required service operations are created.

3. Create request and response code


Based on the WSDL and request message parameter you need to create the SOAP request.

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, 00000000000000000000000000000); &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_LDAP_TEST.RAWXML1.Value = &lxmlDoc.GenXmlString(); &lmsgGoRequest.SetXmlDoc(&lxmlDoc); &lmsgGoResponse = %IntBroker.SyncRequest(&lmsgGoRequest); MY_LDAP_TEST.RAWXML2.Value = &lmsgGoResponse.GenXMLString();

4. Test the code


I created a simple page which will trigger the code above. Here is the request and response. You might need to get Google API key. I had to change one in the screen shot (sorry)

Request

Response

ADVERTISEMENT

Written by addsrikanth June 14, 2008 at 4:52 am Posted in PeopleSoft Displaying Images in OBIEE PeopleSoft Integration Broker and Web Services (Updated)
Like Be the first to like this post.

19 Responses
Subscribe to comments with RSS. 1. This is great!But can you explain how to configure web services manually, that is, not through import wizard.

Balu
June 20, 2008 at 7:26 pm

Reply 2. Appreciate the fact that you have published this information in the internet. More than the content itself (which in itself is very good), your thougt of sharing with the rest of the world is very well appreciated

Maria
June 27, 2008 at 9:49 am

Reply 3. Sri, its fantastic. When i tried the same, i got HttpTargetConnector:External Application Exception. I used the same key which you have mentioned in the above code. Is that the reason to get this error? any response from anybody would be appreciated.

Sudhir
July 11, 2008 at 9:57 am

Reply
4. Sudhir,

Looks like you did not set up your gateway. You need to setup intergration service gateway in gateway configuration.Also,Key I have proviided above will NOT work, I had to change it.But your repose does not look like is coming from google.If key is not valid you will key invalid response from google not application exception error.Google stopped providing API keys but you can try the same with Amazon webservice. Let me know if it helps!! Thanks Sri

addsrikanth
July 16, 2008 at 1:39 am

Reply
5. Sri,

I followed your steps to load the WSDL and created the PeopleCode, and got the same error HttpTargetConnector:External Application Exception 500 as the posting by Sudhir. Your solution was to setup the intergration service gateway in the gateway configuration. Im not sure how to do that. Do you have any documentation on this setup that you can post or email to me? Thanks. If anyone else has the solution for this error, feel free to email me at Tom.Paulauski@eagletest.com or tpaulauski@hotmail.com Any help would be appreciated. TOM

Tom Paulauski
July 23, 2008 at 2:26 am

Reply 6. Sudhir ,Tom, Try using the following code for the key and it should work. eDZYCx9QFHIXI/xojJqrYspYi1Geo74o Please make sure you dont distrubute this code,if you can.!! Request code should look like this 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); REM &SOAPDoc.AddParm(key, eDZYCx9QFHIXI/xojJqrYspYi1Geo74o); &SOAPDoc.AddParm(key, 000000000000000/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_LDAP_TEST.RAWXML1.Value = &lxmlDoc.GenXmlString(); &lmsgGoRequest.SetXmlDoc(&lxmlDoc); &lmsgGoResponse = %IntBroker.SyncRequest(&lmsgGoRequest); MY_LDAP_TEST.RAWXML2.Value = &lmsgGoResponse.GenXMLString();

Sri
July 25, 2008 at 3:35 am

Reply Hi sri, Followed the steps as shown your blog to invoke an external application through PeopleSoft. I tried the same way in invoking the TIBCO webservice from PeopleSoft (Tools version 8.49). But it got errored out with message External sytem contact error. I have done a telnet on my peoplesoft server to check whether the end point URL http://t2k6z1.allegistest.com:20002/BWProcesses/PresentationServices/EntSecMgmt/EntSecMgmtService.serviceage nt/EnterpriseSecurityManagementEndpoint1 is getting connected or not. Indeed it was getting connected. But not sure why I am getting the external system contact error eventhough I am able to telnet it in peoplesoft. Could you please let me know what would be the problem for it? Thanks, Naidu

Naidu
February 17, 2010 at 3:30 pm

Reply 7. Could you explain where do you put the Request and Response code? Do you have to create an application class to associate with handler? Thank you very much!

chenya
August 6, 2008 at 5:22 pm

Reply
8. Cheny,

you have to create a test page and button.You can add code above behind the field change event of the button. Also you need to long text fields on the page to display the request and response.Ofcourse this is only for testing the integration in acutally implementation to display the results you need to process the response and display as per the requirments.

addsrikanth
August 10, 2008 at 6:03 am

Reply 9. Hi Sri, Thnx for the above document. I was working on the same and hit the same error as Tom. HttpTargetConnector:ExternalApplicationException Http Status Code returned : -1 Do you know what could be the issue here? Actually i was trying to demonstrate an OutSync request and am using two of my dev Instances (One as a Client and one as a server and using both gateways). We already have an InSync transaction wherein SOAPTOCI requests are handled when sent by an external J2EE application and responses are sent back. Just trying the leverage the same to act as my Server and create an OutSync request from another Instance. PSoft 8.9 and tools 8.47.16 Appreciate any pointers from your side. Regards, Keshav

Keshav
August 22, 2008 at 12:26 am

Reply 10. IB can use webservices as mentioned in http://peoplesoftsupport.blogspot.com/

Peoplesoft
December 5, 2008 at 2:28 pm

Reply 11. Congratulations for posting such a useful blog. Your weblog is not only informative but also very artistic too. There usually are extremely couple of individuals who can write not so easy articles that creatively. Keep up the good work !!

Enoch Kirschenmann
February 24, 2010 at 2:22 am

Reply
12. Hi Sri,

Thank You for providing useful information. I was able to find amazon wsdl and able consume as webservice in peoplesoft. I am new to the technology. I am stuck at Step 3 i.e Creating SOAP request. Can you please help me out in detail where and how to create request and response in detail.

Kumar
April 23, 2010 at 6:10 am

Reply

13. Hi Sri,

Thank You for providing useful information. I was able to find amazon wsdl and able consume as webservice in peoplesoft. I am new to the technology. I am stuck at Step 3 i.e Creating SOAP request. Can you please help me out in detail where and how to create request and response in detail. Thank You Kumar

Kumar
April 23, 2010 at 6:11 am

Reply 14. Hi Sri, Looking at your blog. could you please help me finding these info? - How PeopleSoft in-built blogging application works? - How relationship manager will get notified via their blogging tools(any process/flow)? Appreciate your help. Thanks, Priya fnupriya@gmail.com

Priya
April 28, 2010 at 4:01 am

Reply
15. Hello Sri,

I am trying to consume a web service which requires a user id/Password authentication, do you know how to pass it through the wizard. Can it be passed through WSDL URL Thanks

vasu
October 12, 2010 at 2:49 pm

Reply 16. I had similar issue with WSDL URL as decribed above by Vasu. I could not figure that out. So I set all the different components without the wizard. From node I am now able to ping successfully. Now trying to use sendmaster utility to test but getting Error communicating with server: Connection timed out: connect. I setup the Project Type as Input File in SendMaster. Server URL is the webservice URL that I am trying to post my SOAP message. Headers are as below: From: PSOFT Default Local Node To: External Node. OperationName:Activate OperationType:sync Content-type: text/xml; charset=UTF8 Authorization:Basic Any inputs as to what I am doing wrong or missing would be helpful. Thanks!

Thamizh Selvan
October 18, 2010 at 4:17 pm

Reply 17. Hi, I have created a soap request by importing wsdl and everything seems to be working fine expect for the fact the special character are being converted into ??? when the users do search on the external website. Not sure hot to correct it but the only difference that I found between the xml request generated from Peoplesoft looks like but it should look like this . Please let me know how to get the xml version in that format.

Thanks karthik

Karthik
January 27, 2011 at 8:40 pm

Reply 18. Hi, Do you have any experience with a Peoplesoft environment which has an Apache web server outside the firewall connecting to the Web Logic server within the firewall? Can IB still be used in this configuration? Thanks.

Stephanie
March 7, 2011 at 5:20 pm

Reply