OEPAS Servers on same machine

Posted by heicomarkl on 03-Oct-2019 19:25

I have two OEPAS instances on the same server.  One has been in place for 6+ months and that is working fine. The reason for creating the second one is that it needs to point to a different database.  I created the second oepas with a different name and a different port and deployed an app to it.  I am now trying to test the oepas using Postman and I mam getting different results.  I have compared the setups and they are pretty much identical.

When I run the first app through postman, I get a 200 return value. The URL is usheiholimg51:8810/.../ChkWorkOrderBE "WONum=W0224799"}.

I now try to access the second app through postman, and I get a 404 error - I see in OpenEdge Explorer that the app is deployed and running fine.  The URL to this is usheiholimg51:8820/.../ChkWorkOrderBE "WONum=W0056641"}

Anyone have an idea on where to look to try and resolve this - this is Progress 11.7.3.

All Replies

Posted by ssouthwe on 03-Oct-2019 21:20

Your path examples do not show the names of the webapps.  I guess I would check to see whether the first part of the path matches exactly what you chose to call the webapp when you deployed.

Posted by mroberts@rev.com.au on 03-Oct-2019 23:29

We do this a lot, and do not have issues with running multiple PAS instances

In our case, we have scripted the deploy so the webapps and config (except for ports) are the same, and each PAS instance works independently

Places to look are

Colliding JSESSIONID's ... both PAS instances are configures in $PAS/conf/context.xml to use sessionCookieName JSESSIONID ... the default I believe.

As soon as we created a second instance, we had session issues where the same session cookie was used for both instances, and we logged into pas1 but hit issues when we hit pas2, logged in, then pas1 stopped working.

We had to amend our context.xml to have a different sessionCookieName for each instance

<Context sessionCookieName="JSESSIONID_dev">

or

<Context sessionCookieName="JSESSIONID_uat">

The browser then maintains a different session cookie for each instance, and they recognize their respective sessionid's.

$PAS/logs/app.agent.log ... verify that the agent on the second pas instance is running as expected, and not spitting out runtime errors (db not connected, insufficient resource on db etc)

$pas/logs/catalina.out ... look for any errors here .. we occasionally didn't properly "separate" the pas instances, and there was a conflict on port assignments.

Errors any any of the above can cause a PAS instance top look like it is running, but not be "completely there"

Mark

Posted by Ravi Sankar on 04-Oct-2019 05:18

From 11.7.4 onwards, you can consider using PASOE docker image as it provides the process, port isolation. The cookie issue might be there if the Cookie are scoped to the hostname

Posted by Ravi Sankar on 04-Oct-2019 05:18

From 11.7.4 onwards, you can consider using PASOE docker image as it provides the process, port isolation. The cookie issue might be there if the Cookie are scoped to the hostname

Posted by heicomarkl on 04-Oct-2019 14:24

Thanks for all the replies.  I found my issue when I went back to my "Defined Services" in Developer Studio - I had copied the code from the other application, but then realized I had not attached them to the service - rookie error - this is only my second REST App in Progress :)  I will remember that now!!!

This thread is closed