EclipseLink/Examples/JMX/MBeans WebLogic

From Eclipsepedia

Jump to: navigation, search

Contents

EclipseLink JMX MBean support in WebLogic

The API discussed here has been checked in as part of enhancement [235168]

JPA EAR WebLogic 10.3 J2EE application and J2SE table populator Eclipse project zip files

Prerequisites

Setting Breakpoints

The eclipselink.jar deployed in the weblogic domain/lib will need a source attachment. The fastest way is to set a breakpoint on org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.undeploy(), point to the src jar or your workspace projects and redeploy. Any breakpoints in the predeploy or prior to the first login will now be hit.

Enabling remote access on the WebLogic JVM

Add the following JVM option to your WebLogic startup script

C:\opt\wls103\user_projects\domains\base_domain\bin\startWebLogic.cmd
set JAVA_OPTIONS=%JAVA_OPTIONS% -Dcom.sun.management.jmxremote

System properties to enable EclipseLink MBeans

MBean registration is enabled by adding one or both of the two mbean system properties If [eclipselink.register.dev.mbean] or [eclipselink.register.run.mbean] properties are missing then MBean registration will not proceed for that bean.

rem set JAVA_OPTIONS=%JAVA_OPTIONS% -Declipselink.register.dev.mbean=true
rem set JAVA_OPTIONS=%JAVA_OPTIONS% -Declipselink.register.run.mbean=true

Configuring WebLogic Server Domain Security

  • If you are running your MBeans unsecured or in a development environment - you will need to disable security to see them outside of WebLogic
  • Select the [Anonymous Admin Lookup Enabled checkbox] on the admin console security tab and restart. (Or you will get the following security warning).
[EL Warning]: 2008.06.19 13:37:01.875--Thread(Thread[[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads])--Failed to find MBean Server: javax.naming.NoPermissionException: 
User <anonymous> does not have permission on weblogic.management.home to perform lookup operation. 

Image:Weblogic103_console_jmx_anon_security.jpg

JMX MBeans via SE Client

See the SUN JMX Tutorial.

For Java6 only - A proxy can be used to invoke methods on the MBean via JMX.newMBeanProxy().

JMX MBeans via JConsole

The standard SUN JDK <JAVA_HOME>/bin/jconsole.exe application can be used to view the MBeans exposed by the WebLogic server JVM instance.

Start jconsole at the run|cmd prompt and select the running weblogic.Server local process.

Image:Jconsole_attach_to_weblogic_server_jvm.jpg

You should see the following EclipseLink MBeans off the root of the JNDI tree. In this example there are 2 separate EARs deployed to WebLogic - each with its own set of MBeans based on the login session.

Image:Eclipselink_jmx_mbeans_in_jconsole.jpg

Copyright © 2008 The Eclipse Foundation. All Rights Reserved

  • This page was last modified 14:32, 3 September 2008 by Michael OBrien.
Personal tools