Salesforce

OEJMX fails with java.lang.NullPointerException error when executed by a user that did not start the PASOE instance

« Go Back

Information

 
TitleOEJMX fails with java.lang.NullPointerException error when executed by a user that did not start the PASOE instance
URL NameOEJMX-bat-fails-to-start-with-null-pointer-exception-error-when-PAS-is-started-from-OEM-which-was-started-from-NT-service
Article Number000120608
EnvironmentProduct: OpenEdge
Version: 11.7.3, 11.7.4, 11.7.5, 12.x
OS: All supported platforms
Other: OEJMX
Question/Problem Description
OEJMX fails with java.lang.NullPointerException error when executed by a user that did not start the PASOE instance.
Using OEJMX to perform service side performance profiling fails with java.lang.NullPointerException.
OEJMX.bat fails to start with java.lang.NullPointerException error when PAS is started from OEM which was started as a NT Service
 
Steps to Reproduce
Clarifying Information
Error MessageException in thread main: java.lang.NullPointerException
at com.progress.appserv.util.jmx.JvmWatch.connect(JvmWatch.java:578)
at com.progress.appserv.util.jmx.PASOEWatch.process(PASOEWatch.java:118)
at com.progress.appserv.util.jmx.PASOEWatch.process(PASOEWatch.java:108)
at com.progress.appserv.util.jmx.PASOEWatch.main(PASOEWatch.java:50)
Defect Number
Enhancement Number
Cause
This as Functions as Designed. 

The OS security standards restricts attaching to processes across security contexts. For example:
  • OEM does not start PASOE in the same account as the interactive user. 
  • When OEM starts PASOE, it is done in the context of OEM and not the interactive user. 
  • OEJMX is meant to connect to the JVM running PASOE directly, which means OEJMX cannot be used as there is nothing we can do to attach to a process that is running in a different interactive desktop on Windows.
Resolution
Run OEJMX with the same user account that started the PASOE instance.

For example, don't run PASOE as a Windows Service or start it from OEM which runs as a Windows Service. Instead start the AdminServer and OE Management from a Proenv session using these commands before running the OEJMX command:
 
proadsv -start
fathom -start
Workaround
Notes
Keyword Phrase
Last Modified Date7/18/2024 11:54 AM

Powered by