JBoss.org Community Documentation

- Prev
- Next

### 5.6.3. Via JBoss Microcontainer (JBoss AS 5.x)

`PojoCacheJmxWrapper` is a POJO, so the microcontainer has no problem creating one. The trick is getting it to register your bean in JMX. This can be done by specifying the `org.jboss.aop.microcontainer.aspects.jmx.JMX` annotation on the `PojoCacheJmxWrapper` bean:

    <?xml version="1.0" encoding="UTF-8"?>

    <deployment xmlns="urn:jboss:bean-deployer:2.0">

       <!-- First we create a Configuration object for the cache -->
       <bean name="ExampleCacheConfig"
       		 class="org.jboss.cache.config.Configuration">

          ... build up the Configuration

       </bean>

       <!-- The cache itself. -->
       <bean name="ExampleCache" class="org.jboss.cache.pojo.impl.PojoCacheImpl">

          <constructor factoryClass="org.jboss.cache.pojo.PojoCacheFactory
                       factoryMethod="createCache">
              <parameter><inject bean="ExampleCacheConfig"/></parameter>
              <parameter>false</false>
          </constructor>

       </bean>

       <!-- JMX Management -->
       <bean name="ExampleCacheJmxWrapper" class="org.jboss.cache.jmx.CacheJmxWrapper">

          <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(
                name="jboss.cache:service=ExamplePojoCache",
                exposedInterface=org.jboss.cache.pojo.jmx.PojoCacheJmxWrapperMBean.class,
                registerDirectly=true)
          </annotation>

          <constructor>
              <parameter><inject bean="ExampleCache"/></parameter>
          </constructor>

       </bean>

    </deployment>

As discussed in the Programatic Registration section, `PojoCacheJmxWrapper` can do the work of building, creating and starting the PojoCache if it is provided with a `Configuration`:

    <?xml version="1.0" encoding="UTF-8"?>

    <deployment xmlns="urn:jboss:bean-deployer:2.0">

       <!-- First we create a Configuration object for the cache -->
       <bean name="ExampleCacheConfig"
       		 class="org.jboss.cache.config.Configuration">

          ... build up the Configuration

       </bean>

       <bean name="ExampleCache" class="org.jboss.cache.pojo.jmx.PojoCacheJmxWrapper">

          <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(
                name="jboss.cache:service=ExamplePojoCache",
                exposedInterface=org.jboss.cache.pojo.jmx.PojoCacheJmxWrapperMBean.class,
                registerDirectly=true)
          </annotation>

          <constructor>
              <parameter><inject bean="ExampleCacheConfig"/></parameter>
          </constructor>

       </bean>

    </deployment>

- Prev5.6.2. JMX-Based Deployment in JBoss AS (JBoss AS...
- Top of page
- Front page
- Next5.7. Runtime Statistics and JMX Notifications