Author: azeez
Date: Fri Jan 4 08:12:52 2008
New Revision: 11849
Log:
Enabling JMX for JDK 1.4
Added:
trunk/commons/utils/src/main/java/org/wso2/utils/ManagementFactory.java
Modified:
trunk/commons/statistics/modules/core/src/main/java/org/wso2/statistics/service/StatisticsService.java
trunk/commons/statistics/pom.xml
trunk/commons/utils/pom.xml
trunk/commons/utils/src/main/java/org/wso2/utils/AbstractAdmin.java
trunk/commons/utils/src/main/java/org/wso2/utils/MBeanRegistrar.java
trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/ServerAdmin.java
trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/ServiceAdmin.java
trunk/wsas/java/modules/core/src/org/wso2/wsas/DefaultServerInitializer.java
trunk/wsas/java/modules/core/src/org/wso2/wsas/ServerManagement.java
trunk/wsas/java/pom.xml
Modified:
trunk/commons/statistics/modules/core/src/main/java/org/wso2/statistics/service/StatisticsService.java
==============================================================================
---
trunk/commons/statistics/modules/core/src/main/java/org/wso2/statistics/service/StatisticsService.java
(original)
+++
trunk/commons/statistics/modules/core/src/main/java/org/wso2/statistics/service/StatisticsService.java
Fri Jan 4 08:12:52 2008
@@ -40,12 +40,10 @@
static {
String jmxPort =
ServerConfiguration.getInstance().getFirstProperty("Ports.JMX");
- String javaVersion = System.getProperty("java.version");
- if (jmxPort != null && javaVersion.indexOf("1.4") == -1) { // In WSAS,
JMX is not supported on JDK 1.4
+ if (jmxPort != null) {
try {
MBeanRegistrar.
- registerMBean(new StatisticsService(),
- "WSO2:type=Statistics");
+ registerMBean(new StatisticsService(),
"WSO2:type=Statistics");
} catch (Exception e) {
String msg = "Could not register StatisticsService MBean";
log.error(msg, e);
Modified: trunk/commons/statistics/pom.xml
==============================================================================
--- trunk/commons/statistics/pom.xml (original)
+++ trunk/commons/statistics/pom.xml Fri Jan 4 08:12:52 2008
@@ -135,6 +135,17 @@
<version>3.2.1</version>
</dependency>
+ <dependency>
+ <groupId>mx4j</groupId>
+ <artifactId>mx4j</artifactId>
+ <version>${mx4j.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>mx4j</groupId>
+ <artifactId>mx4j-remote</artifactId>
+ <version>${mx4j.version}</version>
+ </dependency>
</dependencies>
<build>
@@ -268,7 +279,7 @@
<xalan.version>2.7.0</xalan.version>
<javamail.version>1.4</javamail.version>
<wsdl4j.version>1.6.1</wsdl4j.version>
-
+ <mx4j.version>3.0.2</mx4j.version>
</properties>
<profiles>
Modified: trunk/commons/utils/pom.xml
==============================================================================
--- trunk/commons/utils/pom.xml (original)
+++ trunk/commons/utils/pom.xml Fri Jan 4 08:12:52 2008
@@ -96,7 +96,18 @@
<version>${ant.version}</version>
</dependency>
+ <dependency>
+ <groupId>mx4j</groupId>
+ <artifactId>mx4j</artifactId>
+ <version>${mx4j.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>mx4j</groupId>
+ <artifactId>mx4j-remote</artifactId>
+ <version>${mx4j.version}</version>
+ </dependency>
+
</dependencies>
<build>
@@ -276,6 +287,6 @@
<bcprov.jdk13.version>132</bcprov.jdk13.version>
<bcprov.jdk15.version>132</bcprov.jdk15.version>
-
+ <mx4j.version>3.0.2</mx4j.version>
</properties>
</project>
Modified: trunk/commons/utils/src/main/java/org/wso2/utils/AbstractAdmin.java
==============================================================================
--- trunk/commons/utils/src/main/java/org/wso2/utils/AbstractAdmin.java
(original)
+++ trunk/commons/utils/src/main/java/org/wso2/utils/AbstractAdmin.java Fri Jan
4 08:12:52 2008
@@ -27,6 +27,9 @@
*/
public abstract class AbstractAdmin {
+ protected AbstractAdmin() {
+ }
+
public AxisConfiguration getAxisConfig() {
try {
return WSO2ConfigurationContextFactory.
Modified: trunk/commons/utils/src/main/java/org/wso2/utils/MBeanRegistrar.java
==============================================================================
--- trunk/commons/utils/src/main/java/org/wso2/utils/MBeanRegistrar.java
(original)
+++ trunk/commons/utils/src/main/java/org/wso2/utils/MBeanRegistrar.java
Fri Jan 4 08:12:52 2008
@@ -17,7 +17,6 @@
import javax.management.MBeanServer;
import javax.management.ObjectName;
-import java.lang.management.ManagementFactory;
import java.util.Set;
/**
@@ -27,7 +26,7 @@
public static void registerMBean(Object mbeanInstance,
String objectName) throws Exception {
- MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
+ MBeanServer mbs = ManagementFactory.getMBeanServer();
Set set = mbs.queryNames(new ObjectName(objectName), null);
if (set.isEmpty()) {
mbs.registerMBean(mbeanInstance, new ObjectName(objectName));
Added: trunk/commons/utils/src/main/java/org/wso2/utils/ManagementFactory.java
==============================================================================
--- (empty file)
+++ trunk/commons/utils/src/main/java/org/wso2/utils/ManagementFactory.java
Fri Jan 4 08:12:52 2008
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.wso2.utils;
+
+import javax.management.MBeanServer;
+import javax.management.MBeanServerFactory;
+
+/**
+ * The <tt>ManagementFactory</tt> class is a factory class for getting
+ * managed beans for the Java platform.
+ */
+public class ManagementFactory {
+
+ /**
+ * @return An MBeanServer instance.
+ * If one already exists, will return that, else will create a new
one and return
+ */
+ public static MBeanServer getMBeanServer() {
+ MBeanServer mserver;
+ if (MBeanServerFactory.findMBeanServer(null).size() > 0) {
+ mserver = (MBeanServer)
MBeanServerFactory.findMBeanServer(null).get(0);
+ } else {
+ mserver = MBeanServerFactory.createMBeanServer();
+ }
+ return mserver;
+ }
+}
Modified:
trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/ServerAdmin.java
==============================================================================
---
trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/ServerAdmin.java
(original)
+++
trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/ServerAdmin.java
Fri Jan 4 08:12:52 2008
@@ -41,8 +41,7 @@
static {
String jmxPort =
ServerConfiguration.getInstance().getFirstProperty("Ports.JMX");
- String javaVersion = System.getProperty("java.version");
- if (jmxPort != null && javaVersion.indexOf("1.4") == -1) { // In WSAS,
JMX is not supported on JDK 1.4
+ if (jmxPort != null) {
try {
MBeanRegistrar.
registerMBean(new ServerAdmin(),
"WSO2:type=ServerAdmin");
Modified:
trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/ServiceAdmin.java
==============================================================================
---
trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/ServiceAdmin.java
(original)
+++
trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/ServiceAdmin.java
Fri Jan 4 08:12:52 2008
@@ -118,8 +118,7 @@
static {
String jmxPort =
ServerConfiguration.getInstance().getFirstProperty("Ports.JMX");
- String javaVersion = System.getProperty("java.version");
- if (jmxPort != null && javaVersion.indexOf("1.4") == -1) { // In WSAS,
JMX is not supported on JDK 1.4
+ if (jmxPort != null) {
try {
MBeanRegistrar.
registerMBean(new ServiceAdmin(),
"WSO2:type=ServiceAdmin");
Modified:
trunk/wsas/java/modules/core/src/org/wso2/wsas/DefaultServerInitializer.java
==============================================================================
---
trunk/wsas/java/modules/core/src/org/wso2/wsas/DefaultServerInitializer.java
(original)
+++
trunk/wsas/java/modules/core/src/org/wso2/wsas/DefaultServerInitializer.java
Fri Jan 4 08:12:52 2008
@@ -34,6 +34,7 @@
import org.wso2.adminui.UIProcessor;
import org.wso2.tracer.TracerConstants;
import org.wso2.tracer.module.TracePersister;
+import org.wso2.utils.ManagementFactory;
import org.wso2.utils.NetworkUtils;
import org.wso2.utils.ServerConfiguration;
import org.wso2.utils.ServerException;
@@ -60,17 +61,16 @@
import javax.management.remote.JMXServiceURL;
import javax.xml.namespace.QName;
import java.io.File;
-import java.lang.management.ManagementFactory;
import java.rmi.registry.LocateRegistry;
import java.util.HashMap;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.Map;
import java.util.Timer;
+
/*
- *
+ * The default initializer which initilizes WSAS
*/
-
public class DefaultServerInitializer implements ServerInitializer {
private static final Log log =
LogFactory.getLog(DefaultServerInitializer.class);
@@ -138,17 +138,11 @@
private void startJMXService() throws ServerException {
String jmxPort =
ServerConfiguration.getInstance().getFirstProperty("Ports.JMX");
if (jmxPort != null) {
- String javaVersion = System.getProperty("java.version");
- if (javaVersion.indexOf("1.4") != -1) { // In WSAS, JMX is not
supported on JDK 1.4
- log.warn("JMX is not supported on JDK 1.4. " +
- "Please use JDK 1.5 or newer version if you requre
JMX functionality.");
- return;
- }
if (isJMXServiceStarted) {
return;
}
int jmxPortInt = Integer.parseInt(jmxPort);
- MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
+ MBeanServer mbs = ManagementFactory.getMBeanServer();
try {
LocateRegistry.createRegistry(jmxPortInt);
Modified: trunk/wsas/java/modules/core/src/org/wso2/wsas/ServerManagement.java
==============================================================================
--- trunk/wsas/java/modules/core/src/org/wso2/wsas/ServerManagement.java
(original)
+++ trunk/wsas/java/modules/core/src/org/wso2/wsas/ServerManagement.java
Fri Jan 4 08:12:52 2008
@@ -19,12 +19,12 @@
import org.apache.axis2.transport.TransportListener;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.wso2.utils.ManagementFactory;
import javax.management.MBeanServer;
import javax.management.ObjectName;
import javax.management.Query;
import javax.management.QueryExp;
-import java.lang.management.ManagementFactory;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
@@ -78,15 +78,12 @@
* @throws Exception If an error occurs while trying to connect to the
Tomcat MBean
*/
public void waitForRequestCompletion() throws Exception {
- String javaVersion = System.getProperty("java.version");
- if (javaVersion.indexOf("1.4") != -1) {
- return;
- }
+
/**
* Get all MBeans with names such as
Catalina:type=RequestProcessor,worker=http-9762,name=HttpRequest<n>
* &
Catalina:type=RequestProcessor,worker=http-9762,name=HttpsRequest<n>
*/
- MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
+ MBeanServer mbs = ManagementFactory.getMBeanServer();
boolean areRequestsInService;
long start = System.currentTimeMillis();
do {
Modified: trunk/wsas/java/pom.xml
==============================================================================
--- trunk/wsas/java/pom.xml (original)
+++ trunk/wsas/java/pom.xml Fri Jan 4 08:12:52 2008
@@ -1650,6 +1650,18 @@
</dependency>
<dependency>
+ <groupId>mx4j</groupId>
+ <artifactId>mx4j</artifactId>
+ <version>${mx4j.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>mx4j</groupId>
+ <artifactId>mx4j-remote</artifactId>
+ <version>${mx4j.version}</version>
+ </dependency>
+
+ <dependency>
<groupId>opensaml</groupId>
<artifactId>opensaml</artifactId>
<version>${opensaml.version}</version>
@@ -2090,6 +2102,7 @@
<slf4j.version>1.0.1</slf4j.version>
<spring.version>1.2.8</spring.version>
<toolsjar>${java.home}/../lib/tools.jar</toolsjar>
+ <mx4j.version>3.0.2</mx4j.version>
<opensaml.version>1.1.406</opensaml.version>
<axis1.version>1.4</axis1.version>
_______________________________________________
Wsas-java-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/wsas-java-dev