Skip to main content
View by: Most Recent | Topic | Community | Webloggers   
Monthly Archives:    

Blogs by Community: Open JDK

• Adopt a JSR  • Embedded  • GlassFish  
• Global Education and Learning  • Identity Management  • IoT  
• Java Communications  • Java Desktop  • Java Enterprise  
• Java Patterns  • Java Tools  • Java User Groups  
• Java Web Services and XML  • JavaFX  • JCP  
• JDDAC  • Jini  • JXTA  
• Mac Java  • NetBeans  • Open JDK  
• Portlet  • Robotics  • Sun Grid  
• Sun RFID and Sensor  • [no association]  


Open JDK

The JDK 5.0 (Tiger) and JDK 6.0 (Mustang) binary images include the source and binaries of quite a few demo Java Virtual Machine Tool Interface (JVM TI) agents (native libraries) in the demo/jvmti directory. The more curious people might be interested in the detailed description in my blogs.sun.com site on using VM agents. Certainly writing VM Agents is not something that we want thousands of...
on Aug 23, 2005
Delivering Web Services is one of the primary themes for Mustang (Java SE 6). Our goal is that JSE will provide reasonable support for ease of development for the web services stack. This will primarily be client-side focused with a lightweight server to support callbacks. The main specifications are the Java Architecture for XML-Web Services (JAX-WS) 2.0 (formerly known as JAX-RPC) and Java...
on Aug 8, 2005
The consistently excellent Brian Goetz has written a new article in his Java Theory and Practice series entitled "Be a good (event) listener". Since listeners are an important part of the JMX API, here's how his advice applies there. There are really two sets of recommendations, one for event generators and one for event listeners. In the JMX API, events are instances of Notification, event...
on Jul 29, 2005
With a Standard MBean, you define the management interface of the MBean using a Java interface. Getters and setters in the interface define attributes, and other methods define operations. But the only information extracted out of the interface is the names and types of the attributes and operations, and just the types of the operation parameters. Although the JMX API allows...
on Jul 25, 2005
Yesterday I talked about how you can use WeakReference to allow a resource to be garbage collected even if it is referenced by another object, a JMX MBean in the case in question. In fact, you can use dynamic proxies to provide a more general framework for this sort of situation. In the specific situation I was discussing before, you have a resource such as a...
on Jul 21, 2005
Suppose (to take my favourite example), you have some sort of cache, and you want to be able to control it via an MBean. You might have something a bit like this: public interface CacheControlMBean {    public int getSize();}public class CacheControl implements CacheControlMBean {    public CacheControl(Cache cache) {      ...
on Jul 20, 2005
One of the changes we made in version 1.1 of the JMX API, way back in early 2002, was to modify the serialization of certain classes. Because remote access was not part of the API at this time, this aspect had been a bit neglected in version 1.0, with the result that certain classes had underspecified or inefficient serial forms. Other implementations of the API could and did have incompatible...
on Jul 19, 2005
The short answer is: you can, but you probably shouldn't. Here's why. To be clear, here's the sort of thing I'm talking about: CacheControlMBean mbean = new CacheControl(thingyCache);mbeanServer.registerMBean(mbean, objectName1);mbeanServer.registerMBean(mbean, objectName2); This will work, and the same MBean will be accessible through both objectName1 and objectName2. So why...
on Jul 16, 2005
JavaOne is always a huge buzz, and this year was no exception. Of course the technical sessions are very worthwhile, so it's great news that slides and audio for all of them will be available free online. In previous years you had to pay a small subscription fee to access them. But the biggest plus of JavaOne, like any conference, is meeting people with common interests. I brought back a...
on Jul 13, 2005
This article by D J Walker-Morgan covers how to use JConsole to see VM information, and especially how to write an MBean and attach JConsole to check it out. The only weird thing is the idea of calling a class WatchMeMBean and the corresponding MBean interface WatchMeMBeanMBean. I think I'd have used WatchMeManager and WatchMeManagerMBean.
on Jun 17, 2005
Sun has recently submitted the Java Module System JSR to revise the Java packaging architecture. This is an area that has been long overdue for an overhaul, and the goal is to make it easier to bundle, distribute, and deploy Java applications and Java extensions (aka optional packages).I am very exciting to announce that the JCP has begun voting on this JSR! For more details, please check out...
on Jun 14, 2005
We've posted a detailed set of guidelines for using the JMX API, the result of several years' experience with it. Starting from the JMX Technology Home Page at http://java.sun.com/jmx, you can now find a link "JMX Best Practices" in the navigation bar at the left, leading you to the detailed best practices document. This covers many basic and advanced topics, such as how to name MBeans, how to...
on Jun 14, 2005
Yow, it's been more than a month since my last blog! I intended to write a blog once a week, but, well, finishing up table sorting, JavaOne and Matisse have kept me unbelievably busy in the past month:( I'll blog later about table sorting and other Mustang goodness. In the mean time I wanted to blog about Matisse. Matisse shows work that the NetBeans and Swing teams have been deeply involved...
on Jun 10, 2005
I'm the Specification Lead for Java Management Extensions (JMX) technology and I expect to be talking about it quite a bit in this blog. The JMX API is part of the core Java platform as of Tiger (5.0). It was defined by JSRs 3 (for the local part) and 160 (for the remote part), and continues to evolve through JSRs 255 (JMX API 2.0) and 262 (Web Services Connector for JMX Agents). What does all...
on Jun 8, 2005
I am very pleased to announce that Sun has released a new license for the JDK called the Java Internal Use License (JIUL or "jewel"). This license lets developers easily make changes to the JDK for internal deployments. It's free, click-through and should be easy-to-read by non-lawyers. JDK 5.0 source is available now under both the JIUL and the Java Research License at the tiger project in...
on May 27, 2005
When I was given the assignment of converting the old JDK 1.4.2 HPROF agent library from the experimental JVMPI to the new "JVM TI" in JDK 5.0, it was with the understanding that this new HPROF profiler needed to do bytecode instrumentation (or sometimes called "bytecode injection" or "bytecode insertion") to capture method entry, method exit, object allocation, and object free events. I remember...
on May 13, 2005
Starting last fall Sun sponsored a handful Java 2 Standard Edition (J2SE) projects on java.net to involve those outside of Sun in the ongoing development of the J2SE. Along the way java.net forums specific to the projects were added and in the spring the jdk-collaboration project was started allows external developers to collaborate with Sun on the mustang release. Today I am pleased to...
on May 10, 2005