Chris Malek is a PeopleTools® Technical Consultant with two decades of experience working on PeopleSoft enterprise software projects. He is available for consulting engagements.
About Chris Work with ChrisIntroducing a small but powerful PeopleSoft bolt-on that makes web services very easy. If you have a SQL statement, you can turn that into a web service in PeopleSoft in a few minutes.
In this section, we’ll discuss PeopleSoft node pings, which are primarily related to the HttpTargetConnector. You can also ping another PeopleSoft system when two PeopleSoft system are communicating with each other.
The purpose of the node ping is to test the connection between PeopleSoft and the target server on a few key aspects.
You should only use a node ping when PeopleSoft acts as the HTTP client initiating the connection.
Using a node ping when PeopleSoft is functioning as a server does not make sense and does NOT testing anything.
When integrating with a external node using the HttpTargetConnector
that end-point must support a GET operation and return status 200 or PeopleSoft can have problem with asynchronous retry logic as the node is pinged to determine if things are back online. (see HttpTargetConnector
First let’s setup a new node to see what the NODE ping does.
https://web.tools.cedarhillsgroup.com/anything/server/
. This is a test server that temporarily stores the HTTP request and we can go look at it on a web page.After this is setup we have to import the certificates into the key store.
https://web.tools.cedarhillsgroup.com/anything/
will let you view logged requestsGET /anything/server/
From: PSFT_CS
Nonrepudiation: False
To: CHG_PING_TEST
Transactionid: PING_NODE
User-Agent: Java11.0.22
Accept: application/json
Datachunk: 1
Datachunkcount: 1
What do we notice from this:
The test end-pointed returned HTTP Status 200 so the ping reported success.
Servers and APIs that you are integrating with, rarely exist on the internet without some sort of Authentication and you will generally add that to the node or routing.
So will the NODE ping send along an authorization header? Great question. Let’s test it.
|
|
The HTTPTARGET allows for some headers to be added. You can’t add any header as PeopleSoft edits on the following headers.
Let’s add a few to expirament with if they can sent along and if we can override them.
User-Agent
to see if we can override the default.From
to see if we can override the default which is the default local node.Age
header to see if ping passes that.GET /anything/server/
User-Agent: JOKE
Authorization: Basic SuperSecret
From: PSFT_CS
To: CHG_PING_TEST
Transactionid: PING_NODE
Nonrepudiation: False
Accept: application/json
Age: 37
Datachunk: 1
Datachunkcount: 1
User-Agent
andFrom
header did not get overridden. Interesting!Age
header was passed along.