|
|
(19 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
− | ==EclipseLink JMX MBean support in WebLogic==
| + | see [http://wiki.eclipse.org/Integrating_EclipseLink_with_an_Application_Server_(ELUG)#How_to_Integrate_JMX WebLogic JMX EclipseLink User Guide] |
− | The API discussed here has been checked in as part of enhancement [[http://wiki.eclipse.org/EclipseLink/DesignDocs/235168 235168]]
| + | |
− | | + | |
− | [http://bugs.eclipse.org/243585 JPA EAR WebLogic 10.3 J2EE application and J2SE table populator Eclipse project zip files]
| + | |
− | | + | |
− | ===Prerequisites===
| + | |
− | ====Setting Breakpoints====
| + | |
− | The eclipselink.jar deployed in $WEBLOGIC_HOME/modules/org.eclipse.persistence_1.0.0.0_1-0.jar 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
| + | |
− | <pre>
| + | |
− | C:\opt\wls103\user_projects\domains\base_domain\bin\startWebLogic.cmd
| + | |
− | set JAVA_OPTIONS=%JAVA_OPTIONS% -Dcom.sun.management.jmxremote
| + | |
− | </pre>
| + | |
− | | + | |
− | ===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.
| + | |
− | <pre>
| + | |
− | rem set JAVA_OPTIONS=%JAVA_OPTIONS% -Declipselink.register.dev.mbean=true
| + | |
− | rem set JAVA_OPTIONS=%JAVA_OPTIONS% -Declipselink.register.run.mbean=true
| + | |
− | </pre>
| + | |
− | | + | |
− | ====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 [[http://localhost:7001/consolehelp/console-help.portal?_nfpb=true&_pageLabel=page&helpId=Securitysecuritydomaindomainconfiggeneraltitle#security.domain.domainconfiggeneral.securityconfiguration.anonymousadminlookupenabled.label Anonymous Admin Lookup Enabled checkbox]] on the admin console security tab and restart. (Or you will get the following security warning).
| + | |
− | <pre>
| + | |
− | [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. | + | |
− | </pre>
| + | |
− | [[Image:Weblogic103_console_jmx_anon_security.jpg]]
| + | |
− | ===JMX MBeans via SE Client===
| + | |
− | See the [http://java.sun.com/docs/books/tutorial/jmx/remote/custom.html 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]]
| + | |