Hi,
I'm working on a WebLogic agent plugin and to support a Start Server operation, I
mimicked the behavior in jbossas5's plugin's ApplicationServerOperationsDelegate
where I basically allow users to provide a script location to start the server and execute
the script via ProcessExecution. I am running into an issue where I am seeing different
behavior between executing my script via RHQ vs outside of RHQ.
When I run my startWeblogic script outside of RHQ in my console, when my WebLogic server
starts, it will use the Platform MBean Server for its WebLogic Runtime MBean Server. If I
run jconsole and connect to my WebLogic process, I am able to see both JVM platform MBeans
as well as WebLogic runtime MBeans.
However, when I run the same script inside of RHQ, WebLogic starts up with the following
warning:
Warning: The JMX MBean PlatformMBeanServerUsed attribute is true, but the Platform
MBeanServer was created without the hooks for the WLS security infrastructure. The
Platform MBeanServer will NOT be used and Platform MBeans will NOT be available via the
WLS Runtime or Domain Runtime MBeanServers. This can occur if you have defined Platform
MBeanServer system properties or JVM options (-Dcom.sun.management.jmxremote or JRockit
-XManagement).\n To allow the Platform MBeanServer to be used, you must either remove the
system properties/JVM options or start WLS with the following system property:\n
-Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder
\n If you want to eliminate this log error and do not need Platform MBeans to be available
via WLS, then set the PlatformMBeanUsed attribute in the JMXMBean to false.
My theory is that when I run the startup script outside of RHQ, Weblogic detects no
Platform MBeanServer exists for the JVM and creates one for use. But when the startip
script is run inside of RHQ, is it possible a Platform MBean Server already exists? Or
are there any additional properties or JVM options that RHQ adds that causes the startup
script to behave differently when executing via RHQ?
I did verify that if I pass in
"-Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder"
as an argument, I am able to see all the expected MBeans via jconsole, but I would like to
know why this is happening before accepting this workaround.
Thanks
--
Amy Wu
Consultant, Red Hat Consulting
Red Hat
amywu(a)redhat.com
http://www.redhat.com