KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > sapia > soto > jmx > Server


1 package org.sapia.soto.jmx;
2
3 import mx4j.adaptor.rmi.jrmp.JRMPAdaptorMBean;
4
5 import mx4j.util.StandardMBeanProxy;
6
7 import javax.management.MBeanServer JavaDoc;
8 import javax.management.MBeanServerFactory JavaDoc;
9 import javax.management.ObjectName JavaDoc;
10
11 import javax.naming.Context JavaDoc;
12
13
14 /**
15  * @author Yanick Duchesne
16  */

17 public class Server {
18   /**
19    * Constructor for Server.
20    */

21   public Server() {
22     super();
23   }
24
25   public static void main(String JavaDoc[] args) throws Exception JavaDoc {
26     // LocateRegistry.createRegistry(1099);
27
// Create a MBeanServer
28
MBeanServer JavaDoc server = MBeanServerFactory.createMBeanServer();
29
30     // Create and start the naming service
31
ObjectName JavaDoc naming = new ObjectName JavaDoc("Naming:type=rmiregistry");
32
33     server.createMBean("mx4j.tools.naming.NamingService", naming, null);
34     server.invoke(naming, "start", null, null);
35
36     // Create the JRMP adaptor
37
ObjectName JavaDoc adaptor = new ObjectName JavaDoc("Adaptor:protocol=JRMP");
38
39     server.createMBean("mx4j.adaptor.rmi.jrmp.JRMPAdaptor", adaptor, null);
40
41     JRMPAdaptorMBean mbean = (JRMPAdaptorMBean) StandardMBeanProxy.create(JRMPAdaptorMBean.class,
42         server, adaptor);
43
44     // Create the Dummy Bean
45
MBeanDescriptor desc = null; //MBeanDescriptor.newInstanceFor(bean = new DummyBean());
46
DynamicMBeanAdaptor dynBean = new DynamicMBeanAdaptor(desc);
47
48     server.registerMBean(dynBean, new ObjectName JavaDoc("Dummy:service=DummyService"));
49
50     // Set the JNDI name with which will be registered
51
String JavaDoc jndiName = "jrmp";
52
53     mbean.setJNDIName(jndiName);
54
55     // Optionally, you can specify the JNDI properties,
56
// instead of having in the classpath a jndi.properties file
57
mbean.putJNDIProperty(Context.INITIAL_CONTEXT_FACTORY,
58       "com.sun.jndi.rmi.registry.RegistryContextFactory");
59     mbean.putJNDIProperty(Context.PROVIDER_URL, "rmi://localhost:1099");
60
61     // Registers the JRMP adaptor in JNDI and starts it
62
try {
63       mbean.start();
64     } catch (Exception JavaDoc e) {
65       e.printStackTrace();
66     }
67   }
68 }
69
Popular Tags