You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by ak...@apache.org on 2007/10/18 04:36:27 UTC
svn commit: r585796 - in /geronimo/sandbox/monitoring/mrc-server: ./
mrc-ear/src/main/resources/ mrc-ear/src/main/resources/META-INF/
mrc-ejb/src/main/java/org/apache/geronimo/monitor/
mrc-ejb/src/main/resources/ mrc-ejb/src/main/resources/META-INF/
Author: akulshreshtha
Date: Wed Oct 17 19:36:26 2007
New Revision: 585796
URL: http://svn.apache.org/viewvc?rev=585796&view=rev
Log:
GERONIMO-3535 Monitoring Plugin : security, Patch by Viet H. Nguyen
Added:
geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/MonitorDBPool.xml (with props)
geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControlRemote.java (with props)
geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/resources/
geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/resources/META-INF/
geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/resources/META-INF/openejb-jar.xml (with props)
Removed:
geronimo/sandbox/monitoring/mrc-server/mrc-server-ear-1.0-SNAPSHOT.ear
Modified:
geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/META-INF/geronimo-application.xml
geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControl.java
geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/SMP.java
Modified: geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/META-INF/geronimo-application.xml
URL: http://svn.apache.org/viewvc/geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/META-INF/geronimo-application.xml?rev=585796&r1=585795&r2=585796&view=diff
==============================================================================
--- geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/META-INF/geronimo-application.xml (original)
+++ geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/META-INF/geronimo-application.xml Wed Oct 17 19:36:26 2007
@@ -24,11 +24,16 @@
<environment xmlns="http://geronimo.apache.org/xml/ns/deployment-1.2">
<moduleId>
- <groupId>a</groupId>
- <artifactId>a</artifactId>
- <version>2.0-SNAPSHOT</version>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>${pom.artifactId}</artifactId>
+ <version>1.0-SNAPSHOT</version>
<type>ear</type>
</moduleId>
</environment>
+ <module>
+ <connector>tranql-connector-ra-1.3.rar</connector>
+ <alt-dd>MonitorDBPool.xml</alt-dd>
+ </module>
+
</application>
Added: geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/MonitorDBPool.xml
URL: http://svn.apache.org/viewvc/geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/MonitorDBPool.xml?rev=585796&view=auto
==============================================================================
--- geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/MonitorDBPool.xml (added)
+++ geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/MonitorDBPool.xml Wed Oct 17 19:36:26 2007
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector-1.1">
+ <dep:environment xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.1">
+ <dep:moduleId>
+ <dep:groupId>console.dbpool</dep:groupId>
+ <dep:artifactId>MonitoringDBPools</dep:artifactId>
+ <dep:version>1.0</dep:version>
+ <dep:type>rar</dep:type>
+ </dep:moduleId>
+ <dep:dependencies>
+ <dep:dependency>
+ <dep:groupId>org.apache.geronimo.configs</dep:groupId>
+ <dep:artifactId>system-database</dep:artifactId>
+ <dep:version>2.1-SNAPSHOT</dep:version>
+ <dep:type>car</dep:type>
+ </dep:dependency>
+ </dep:dependencies>
+ </dep:environment>
+ <resourceadapter>
+ <outbound-resourceadapter>
+ <!-- Pool for Active Statisitcs -->
+ <connection-definition>
+ <connectionfactory-interface>javax.sql.DataSource</connectionfactory-interface>
+ <connectiondefinition-instance>
+ <name>ActiveDBPool</name>
+ <config-property-setting name="Password">monitor</config-property-setting>
+ <config-property-setting name="UserName">monitor</config-property-setting>
+ <config-property-setting name="ConnectionURL">jdbc:derby:ActiveDB;create=true</config-property-setting>
+ <connectionmanager>
+ <local-transaction/>
+ <single-pool>
+ <max-size>10</max-size>
+ <min-size>0</min-size>
+ <match-one/>
+ </single-pool>
+ </connectionmanager>
+ </connectiondefinition-instance>
+ </connection-definition>
+
+ <!-- Pool for Archived Statisitcs -->
+ <connection-definition>
+ <connectionfactory-interface>javax.sql.DataSource</connectionfactory-interface>
+ <connectiondefinition-instance>
+ <name>ArchiveDBPool</name>
+ <config-property-setting name="Password">monitor</config-property-setting>
+ <config-property-setting name="ConnectionURL">jdbc:derby:ArchiveDB;create=true</config-property-setting>
+ <config-property-setting name="UserName">monitor</config-property-setting>
+ <connectionmanager>
+ <local-transaction/>
+ <single-pool>
+ <max-size>10</max-size>
+ <min-size>0</min-size>
+ <match-one/>
+ </single-pool>
+ </connectionmanager>
+ </connectiondefinition-instance>
+ </connection-definition>
+ </outbound-resourceadapter>
+ </resourceadapter>
+</connector>
Propchange: geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/MonitorDBPool.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/MonitorDBPool.xml
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/sandbox/monitoring/mrc-server/mrc-ear/src/main/resources/MonitorDBPool.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Modified: geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControl.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControl.java?rev=585796&r1=585795&r2=585796&view=diff
==============================================================================
--- geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControl.java (original)
+++ geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControl.java Wed Oct 17 19:36:26 2007
@@ -19,8 +19,14 @@
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.Properties;
import java.util.Set;
+import javax.annotation.security.RolesAllowed;
+import javax.annotation.security.RunAs;
+import javax.ejb.Remote;
+import javax.ejb.Stateful;
+
import javax.management.Attribute;
import javax.management.MBeanServer;
import javax.management.MBeanServerFactory;
@@ -51,11 +57,16 @@
import org.apache.geronimo.monitor.snapshot.SnapshotThread;
import org.apache.geronimo.monitor.snapshot.SnapshotXMLBuilder;
import org.apache.geronimo.monitor.snapshot.SnapshotConfigXMLBuilder;
+
/**
- * This is the GBean that will be the bottleneck for the communication
+ * This is a Stateful Session Bean that will be the bottleneck for the communication
* between the management node and the data in the server node.
*/
-public class MasterRemoteControl implements GBeanLifecycle {
+@RolesAllowed("mejbadmin")
+@Stateful(name="ejb/mgmt/MRC")
+@Remote(MasterRemoteControlRemote.class)
+@RunAs("mejbadmin")
+public class MasterRemoteControl {
// constants
private static final String GERONIMO_DEFAULT_DOMAIN = "geronimo";
private static final Long DEFAULT_DURATION = new Long(300000);
@@ -91,12 +102,28 @@
if(mbServer == null) {
mbServer = MBeanServerFactory.createMBeanServer(GERONIMO_DEFAULT_DOMAIN);
}
- // instantiate the MEJB, which will be out gateway to communicate to MBeans
-
-
// instantiate teh mbean helper to query mbean names
mbeanHelper = new MBeanHelper();
}
+
+ @RolesAllowed("mejbadmin")
+ public void setUpMEJB() {
+ // instantiate the MEJB, which will be our gateway to communicate to MBeans
+ try {
+ Properties p = new Properties();
+ p.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.openejb.client.LocalInitialContextFactory");
+ InitialContext ctx = new InitialContext(p);
+
+ ManagementHome mejbHome = (ManagementHome)ctx.lookup("ejb/mgmt/MEJBRemoteHome");
+ mejb = mejbHome.create();
+ // Uncomment to see if mejb is working well
+ //System.out.println("SUCCESS!");
+ //System.out.println("MEJB Default Domain: " + mejb.getDefaultDomain());
+ //System.out.println("MEJB Count: " + mejb.getMBeanCount());
+ } catch(Exception e) {
+ e.printStackTrace();
+ }
+ }
/**
* Looks up the JSR-77 statistics associated with this object name.
@@ -105,6 +132,7 @@
* @return HashMap
* @throws Exception
*/
+ @RolesAllowed("mejbadmin")
public static HashMap getStats(String objectName) throws Exception {
HashMap statsMap = new HashMap();
Stats stats = (Stats)mejb.getAttribute(new ObjectName(objectName), "stats");
@@ -155,6 +183,7 @@
* @param attrValue
* @throws Exception
*/
+ @RolesAllowed("mejbadmin")
public void setAttribute(String objectName, String attrName, Object attrValue) throws Exception {
Attribute attr = new Attribute(attrName, attrValue);
mejb.setAttribute(new ObjectName(objectName), attr);
@@ -168,6 +197,7 @@
*
* @param interval
*/
+ @RolesAllowed("mejbadmin")
public boolean startSnapshot(Long interval) {
if((snapshotThread == null || (snapshotThread != null && !snapshotThread.isAlive())) &&
interval.longValue() > 0) {
@@ -184,6 +214,7 @@
/**
* Stops the snapshot thread
*/
+ @RolesAllowed("mejbadmin")
public boolean stopSnapshot() {
if(snapshotThread != null) {
if(snapshotThread.getSnapshotDuration() == Long.MAX_VALUE) {
@@ -214,6 +245,7 @@
* @param everyNthSnapshot
* @return ArrayList
*/
+ @RolesAllowed("mejbadmin")
public ArrayList fetchSnapshotData(Integer numberOfSnapshot, Integer everyNthSnapshot) {
SnapshotXMLBuilder snapshotXMLBuilder = new SnapshotXMLBuilder();
snapshotXMLBuilder.openDocument();
@@ -229,6 +261,7 @@
* @param numberOfSnapshot
* @return HashMap
*/
+ @RolesAllowed("mejbadmin")
public HashMap fetchMaxSnapshotData(Integer numberOfSnapshot) {
SnapshotXMLBuilder snapshotXMLBuilder = new SnapshotXMLBuilder();
snapshotXMLBuilder.openDocument();
@@ -244,6 +277,7 @@
* @param numberOfSnapshot
* @return HashMap
*/
+ @RolesAllowed("mejbadmin")
public HashMap fetchMinSnapshotData(Integer numberOfSnapshot) {
SnapshotXMLBuilder snapshotXMLBuilder = new SnapshotXMLBuilder();
snapshotXMLBuilder.openDocument();
@@ -257,6 +291,7 @@
*
* @return Long
*/
+ @RolesAllowed("mejbadmin")
public Long getSnapshotDuration() {
if(snapshotThread != null) {
return new Long(snapshotThread.getSnapshotDuration());
@@ -270,6 +305,7 @@
*
* @param snapshotDuration
*/
+ @RolesAllowed("mejbadmin")
public void setSnapshotDuration(Long snapshotDuration) {
if(snapshotThread != null) {
snapshotThread.setSnapshotDuration(snapshotDuration.longValue());
@@ -279,6 +315,7 @@
}
}
+ @RolesAllowed("mejbadmin")
public Long getSnapshotCount() {
return SnapshotXMLBuilder.getSnapshotCount();
}
@@ -289,6 +326,7 @@
* @return A set containing all mbean names of mbeans that provide
* statistics
*/
+ @RolesAllowed("mejbadmin")
public Set<ObjectName> getStatisticsProviderMBeanNames() {
return mbeanHelper.getStatsProvidersMBeans( getAllMBeanNames() );
}
@@ -298,6 +336,7 @@
*
* @return A set containing all mbean names
*/
+ @RolesAllowed("mejbadmin")
public Set<ObjectName> getAllMBeanNames() {
try {
return (Set<ObjectName>)mejb.queryNames(null, null);
@@ -328,10 +367,12 @@
stopSnapshot();
}
+ @RolesAllowed("mejbadmin")
private void saveDuration(long duration) {
SnapshotConfigXMLBuilder.save(duration);
}
+ @RolesAllowed("mejbadmin")
private Long fetchSnapshotDuration() {
final String DURATION = "duration";
try {
@@ -348,6 +389,7 @@
*
* @param mbeanName
*/
+ @RolesAllowed("mejbadmin")
public void addMBeanForSnapshot(String mbeanName) {
SnapshotConfigXMLBuilder.addMBeanName(mbeanName);
snapshotThread.addMBeanForSnapshot(mbeanName);
@@ -359,6 +401,7 @@
*
* @param mbeanName
*/
+ @RolesAllowed("mejbadmin")
public void removeMBeanForSnapshot(String mbeanName) {
SnapshotConfigXMLBuilder.removeMBeanName(mbeanName);
snapshotThread.removeMBeanForSnapshot(mbeanName);
@@ -367,6 +410,7 @@
/**
* @return A map: mbeanName --> ArrayList of statistic attributes for that mbean
*/
+ @RolesAllowed("mejbadmin")
public HashMap<String, ArrayList<String>> getAllSnapshotStatAttributes() {
return SnapshotXMLBuilder.getAllSnapshotStatAttributes();
}
@@ -374,36 +418,9 @@
/**
* @return Returns true if snapshot is running.
*/
+ @RolesAllowed("mejbadmin")
public boolean isSnapshotRunning() {
// snapshot is running when the duration is not infinity
return !snapshotThread.getEnd();
- }
-
- public static final GBeanInfo GBEAN_INFO;
-
- static {
- GBeanInfoBuilder infoFactory = GBeanInfoBuilder.createStatic("MasterRemoteControl", MasterRemoteControl.class);
- infoFactory.addOperation("getStats", new Class[] {String.class}, "HashMap");
- infoFactory.addOperation("setAttribute", new Class[] {String.class, String.class, Object.class}, "void");
- infoFactory.addOperation("startSnapshot", new Class[] {Long.class}, "boolean");
- infoFactory.addOperation("stopSnapshot", new Class[] {}, "boolean");
- infoFactory.addOperation("fetchSnapshotData", new Class[] {Integer.class, Integer.class}, "ArrayList");
- infoFactory.addOperation("fetchMaxSnapshotData", new Class[] {Integer.class}, "HashMap");
- infoFactory.addOperation("fetchMinSnapshotData", new Class[] {Integer.class}, "HashMap");
- infoFactory.addOperation("getSnapshotDuration", new Class[] {}, "Long");
- infoFactory.addOperation("getSnapshotCount", new Class[] {}, "Long");
- infoFactory.addOperation("setSnapshotDuration", new Class[] {Long.class}, "void");
- infoFactory.addOperation("getStatisticsProviderMBeanNames", new Class[] {}, "Set");
- infoFactory.addOperation("getAllMBeanNames", new Class[] {}, "Set");
- infoFactory.addOperation("getAllSnapshotStatAttributes", new Class[] {}, "HashMap");
- infoFactory.addOperation("addMBeanForSnapshot", new Class[] {String.class}, "void");
- infoFactory.addOperation("removeMBeanForSnapshot", new Class[] {String.class}, "void");
- infoFactory.addOperation("isSnapshotRunning", new Class[] {}, "boolean");
- infoFactory.setConstructor(new String[] {});
- GBEAN_INFO = infoFactory.getBeanInfo();
- }
-
- public static GBeanInfo getGBeanInfo() {
- return GBEAN_INFO;
}
}
Added: geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControlRemote.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControlRemote.java?rev=585796&view=auto
==============================================================================
--- geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControlRemote.java (added)
+++ geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControlRemote.java Wed Oct 17 19:36:26 2007
@@ -0,0 +1,69 @@
+package org.apache.geronimo.monitor;
+
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Set;
+
+import javax.annotation.security.RolesAllowed;
+import javax.ejb.Remote;
+
+/**
+ * Remote Interface for MasterRemoteControl. Defines the operations
+ * that are made available to the remote client.
+ */
+@Remote
+public interface MasterRemoteControlRemote {
+
+ @RolesAllowed("mejbadmin")
+ public HashMap getStats(String s) throws Exception;
+ @RolesAllowed("mejbadmin")
+ public void setAttribute(String s, String ss, Object o) throws Exception;
+ @RolesAllowed("mejbadmin")
+ public boolean startSnapshot(Long l);
+ @RolesAllowed("mejbadmin")
+ public boolean stopSnapshot();
+ @RolesAllowed("mejbadmin")
+ public ArrayList fetchSnapshotData(Integer i, Integer ii);
+ @RolesAllowed("mejbadmin")
+ public HashMap fetchMaxSnapshotData(Integer i);
+ @RolesAllowed("mejbadmin")
+ public HashMap fetchMinSnapshotData(Integer i);
+ @RolesAllowed("mejbadmin")
+ public Long getSnapshotDuration();
+ @RolesAllowed("mejbadmin")
+ public Long getSnapshotCount();
+ @RolesAllowed("mejbadmin")
+ public void setSnapshotDuration(Long l);
+ @RolesAllowed("mejbadmin")
+ public Set getStatisticsProviderMBeanNames();
+ @RolesAllowed("mejbadmin")
+ public Set getAllMBeanNames();
+ @RolesAllowed("mejbadmin")
+ public HashMap getAllSnapshotStatAttributes();
+ @RolesAllowed("mejbadmin")
+ public void addMBeanForSnapshot(String s);
+ @RolesAllowed("mejbadmin")
+ public void removeMBeanForSnapshot(String s);
+ @RolesAllowed("mejbadmin")
+ public boolean isSnapshotRunning();
+ @RolesAllowed("mejbadmin")
+ public void setUpMEJB();
+
+}
Propchange: geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControlRemote.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControlRemote.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/MasterRemoteControlRemote.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/SMP.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/SMP.java?rev=585796&r1=585795&r2=585796&view=diff
==============================================================================
--- geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/SMP.java (original)
+++ geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/java/org/apache/geronimo/monitor/SMP.java Wed Oct 17 19:36:26 2007
@@ -21,6 +21,7 @@
import java.util.Iterator;
import java.util.HashMap;
import java.util.Hashtable;
+import java.util.Properties;
import java.util.Set;
import javax.management.MBeanServerConnection;
@@ -32,15 +33,22 @@
import javax.management.remote.JMXServiceURL;
import javax.management.remote.JMXConnector;
import javax.management.remote.JMXConnectorFactory;
+import javax.naming.Context;
+import javax.naming.InitialContext;
import org.apache.geronimo.gbean.AbstractName;
import org.apache.geronimo.management.stats.StatisticImpl;
+import org.apache.geronimo.monitor.MasterRemoteControlRemote;
+
+import javax.management.j2ee.ManagementHome;
+import javax.management.j2ee.Management;
public class SMP {
private static final String PATH = "geronimo:ServiceModule=org.apache.geronimo.monitor/MRC/1.0/car,J2EEServer=geronimo,name=MasterRemoteControl,j2eeType=GBean";
public static void main(String[] args) {
try {
+ /*
JMXServiceURL serviceURL = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:1099/JMXConnector");
Hashtable env = new Hashtable();
String[] credentials = new String[2];
@@ -60,13 +68,13 @@
// updateMaxSpareThread(mbServerConn);
// printMaxSpareThread(mbServerConn);
// testThreadPoolControl(mbServerConn);
- /*
+
try {
testSnapshotThread(mbServerConn, 5000);
} catch(Exception e) {
System.out.println(e.getMessage());
}
- */
+
testSnapshotThreadStop(mbServerConn);
System.out.println("Stopped");
Thread.sleep(1000);
@@ -84,7 +92,24 @@
// testSetSnapshotDuration(mbServerConn, new Long(60000));
// testRemoveMBeanToSnapshot(mbServerConn);
// testGetStatsAttr(mbServerConn);
-
+ */
+// MasterRemoteControl mrc;
+ Properties props = new Properties();
+ props.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.openejb.client.RemoteInitialContextFactory");
+ props.setProperty(Context.PROVIDER_URL, "127.0.0.1:4201");
+ props.setProperty(Context.SECURITY_PRINCIPAL, "system");
+ props.setProperty(Context.SECURITY_CREDENTIALS, "manager");
+ props.setProperty("openejb.authentication.realmName", "geronimo-admin");
+ Context ic = new InitialContext(props);
+ System.out.println("Success: Initialized InitialContext");
+ MasterRemoteControlRemote o = (MasterRemoteControlRemote)ic.lookup("ejb/mgmt/MRCRemote");
+ System.out.println("Success: look up MRCRemote");
+ o.setUpMEJB();
+ System.out.println("Success: setUpMEJB");
+ //nagementHome o = (ManagementHome)ic.lookup("ejb/mgmt/MEJBRemoteHome");
+ //Management m = o.create();
+ System.out.println(o);
+ //System.out.println(m.getDefaultDomain());
} catch (Exception e) {
e.printStackTrace();
}
Added: geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/resources/META-INF/openejb-jar.xml
URL: http://svn.apache.org/viewvc/geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/resources/META-INF/openejb-jar.xml?rev=585796&view=auto
==============================================================================
--- geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/resources/META-INF/openejb-jar.xml (added)
+++ geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/resources/META-INF/openejb-jar.xml Wed Oct 17 19:36:26 2007
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<openejb-jar
+ xmlns="http://www.openejb.org/xml/ns/openejb-jar-2.1"
+ xmlns:nam="http://geronimo.apache.org/xml/ns/naming-1.1"
+ xmlns:pkgen="http://www.openejb.org/xml/ns/pkgen-2.0"
+ xmlns:sec="http://geronimo.apache.org/xml/ns/security-1.1"
+ xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2">
+
+ <sys:environment>
+ <sys:moduleId>
+ <sys:groupId>org.apache.geronimo.plugins</sys:groupId>
+ <sys:artifactId>MRCRemote</sys:artifactId>
+ <sys:version>1.0</sys:version>
+ <sys:type>car</sys:type>
+ </sys:moduleId>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.geronimo.configs</groupId>
+ <artifactId>mejb</artifactId>
+ <version>2.1-SNAPSHOT</version>
+ <type>car</type>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.geronimo.configs</groupId>
+ <artifactId>j2ee-security</artifactId>
+ <version>2.1-SNAPSHOT</version>
+ <type>car</type>
+ </dependency>
+ </dependencies>
+ </sys:environment>
+
+ <enterprise-beans>
+ <session>
+ <ejb-name>ejb/mgmt/MRC</ejb-name>
+ <jndi-name>ejb/mgmt/MRC</jndi-name>
+ </session>
+ </enterprise-beans>
+
+ <security xmlns="http://geronimo.apache.org/xml/ns/security-2.0">
+ <role-mappings>
+ <role role-name="mejbuser">
+ <principal name="admin"
+ class="org.apache.geronimo.security.realm.providers.GeronimoGroupPrincipal"/>
+ <principal name="mejb-admin"
+ class="org.apache.geronimo.security.realm.providers.GeronimoGroupPrincipal"/>
+ </role>
+
+ <role role-name="mejbadmin">
+ <principal name="mejb-admin"
+ class="org.apache.geronimo.security.realm.providers.GeronimoGroupPrincipal"/>
+ </role>
+ </role-mappings>
+ </security>
+</openejb-jar>
Propchange: geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/resources/META-INF/openejb-jar.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/resources/META-INF/openejb-jar.xml
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/sandbox/monitoring/mrc-server/mrc-ejb/src/main/resources/META-INF/openejb-jar.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml