InfoQ

News

Beans Exposed with JMX Builder

Posted by Craig Wickesser on Dec 20, 2008 11:49 PM

Community
Java
Topics
Release
Tags
Groovy ,
JMX

One concept to come out of Groovy is the notion of builders. Builders can be described as a consistent and concise syntax for building a tree of objects. They are used for DOM-like API's, Ant tasks, Swing GUI's and more. Earlier in 2008 Vladimir Vivien decided to create a builder for the JMX API which works with Groovy 1.5 and Java 5 or newer.

The current version boasts the following features:

  • Domain Specific Language (DSL) for JMX API using Builder pattern
  • Simplified JMX API's programmability
  • Maintain the natural Groovy syntax
  • Declaratively expose Java/Groovy objects as JMX managed MBeans
  • Support class-embedded or explicit descriptors
  • Inherent support for JMX's event model
  • Seamlessly create JMX event broadcasters
  • Attach event listeners as inline closures
  • Use Groovy's dynamic nature to easily react to JMX events notifications
  • Provides a flexible registration policy for MBean
  • No special interfaces or class path restrictions
  • Shields developer from complexity of JMX API
  • Exposes attribute, constructors, operations, parameters, and notifications
  • Simplifies the creation of connector servers and connector clients
  • Support for exporting JMX timers

JmxBuilder is still relatively new and is currently at version 0.5. Vladamir anticipates releasing a 1.0 version later in 2009 after adding features such as the ability to query beans, Spring JMX Annotations and monitoring support.

One thing Vladamir pointed out is Groovy already has the GroovyMBean which allows you to query and interact with MBeans today.

JmxBuilder included in Groovy 1.6-RC-1 by Guillaume Laforge Posted Dec 22, 2008 9:31 AM
  1. Back to top

    JmxBuilder included in Groovy 1.6-RC-1

    Dec 22, 2008 9:31 AM by Guillaume Laforge

    The JmxBuilder was too good to be left alone: the Groovy development team decided to team up with Vladimir to get JmxBuilder integrated in the just recently released Groovy 1.6-RC-1. Great job, Vladimir!

Educational Content

Bindings, Platforms, and Innovation

This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.

Orchestrating Long Running Activities with JBoss / JBPM

This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.

Neo4j - The Benefits of Graph Databases

This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.

Realistic about Risk: Software development with Real Options

This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.

Communication Flexibility Using Bindings

This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.

Writing DSLs in Groovy

After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.

Scaling Agile with C/ALM (Collaborative Application Lifecycle Management)

IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.

Concurrent Programming with Microsoft F#

Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.