"We" are having planning and discussion about how to handle Sun's Java implementation as open source. I've seen several articles and blog postings from the folk directly involved in the discussions, and it's all very interesting. What I'm most puzzling over is, what should the quality team do or publish etc in this environment?
In my past reading it was most enlightening to learn that one of...
on Jul 30, 2006
After reading the John O'Conner Blog about scripting, i want to share some thoughts.
First, embedding script in a desktop application is not new, Mozilla Firefox, Open Office Writer/Calc (Microsoft Word/Excel) already provide a scripting environment to their end users since years.
While i'm not convinced by the fact that
applications fully written with script are easy to maintain,
on Jul 28, 2006
this is my first blog entry, so champagne!!
Ok, you have perhaps notice it, the signature of
the SwingWorker's process method change in the last beta (b92),
and you can blame someone for that ... me.
I'm proud to have reported this bug (6432565)
even if for patch it, the interface of SwingWorker has been
changed. After all the JDK is still in beta.
SwingWorker is used to publish...
on Jul 26, 2006
Recently I've seen several people ask what the cost of enabling
JMX monitoring on an application is. If I run with
-Dcom.sun.management.jmxremote and connect
jconsole, how much will that affect the performance of my app?
Here are the results of some highly unscientific
Here's the quick answer for people who look at the answers in
the back of the...
on Jul 21, 2006
There was a little "discussion" about the inclusion of Java DB into the JDK. I was on vacation and didn't read it too deeply.
At least a) it's only in the JDK, and it's the JRE download size that's more of an issue than is the JDK download size ... b) it's not in rt.jar but instead a separate directory in the JDK ...
What struck me, though, is the idea that a database is only suitable for...
on Jul 18, 2006
I often want to test that my MBeans work correctly when accessed remotely. For example it's easy to accidentally introduce non-serializable objects in them. It's a pain to set up a real remote connection, but you can make a loopback connection in the same JVM to test most of the same things. Here's how.
import javax.management.*;import javax.management.remote.*;...MBeanServer mbs = ......
on Jul 7, 2006
MBean proxies allow you to access an MBean through a Java
interface, writing proxy.getFoo() instead of
mbeanServer.getAttribute(name, "Foo"). But when you create a
proxy, there is no check that the MBean actually matches the
interface you specify, or even that the MBean exists. Why is
that, and what can you do about it?
Here's a more concrete example. Suppose you...
on Jul 6, 2006
The last few months have been exciting for Java SE with the many JavaOne activities and presentations, our announcement to open source the JDK, and getting beta 2 out the door. Let me tell you, it's kept us all very busy here at Sun! Things aren't slowing down either, so I'd like to give you a brief update as to what's going on.
Feature work on Mustang has been completed. We have a few...
on Jun 27, 2006
MXBeans include a way to handle inter-MBean references
conveniently. You can use this to build an MBean hierarchy that
is simple to navigate.
In a previous
blog entry, I described MXBeans. User-defined
MXBeans are a new feature in the Mustang (Java SE 6) platform.
They define a type mapping, so you can use arbitrary
types in the Java interface that defines your...
on Jun 21, 2006
I was thinking the other day - what with the Visual Basic compiler for Java, it would make sense for there to be a COBOL compiler for Java. That way we could draw on yet another large body of software to run on top of the Java runtime.
Okay, so I get strange thoughts occasionally.
Of course the first step would be a grammer to parse the language .. the next step then would be a compiler to...
on Jun 18, 2006
Java DB and Apache Derby have been following the progress of the JDBC 4.0 specification very closely and have implemented many of the JDBC 4.0 features in the 10.2 alpha release. Rick Hillegas has done a great job of leading the team implementing the JDBC 4.0 features.
Another key JDBC feature that has been added in the 10.2 release is support for updatable scrollable cursors.
You can find the...
on Jun 15, 2006
Why only customers can use Web2.0 applications? And the Developers? Ok, We have access to Gmail, Flick, box.net, a lot of really cool geeks apps, but we can turn our JavaDocs, much more impressive then we have nowdays.To do that use Docwrench Doclet (http://www.docwrench.com/). The Following Image shows how look your future Docs:
on Jun 14, 2006
The Java compiler doesn't save parameter names in the class files it generates. This is a problem for Standard MBeans, because we'd like to show those names in management clients. I talked about this in an earlier blog entry, where I suggested using a @PName annotation on each parameter to specify its name redundantly. Here's another approach, using annotation processors, which will work...
on Jun 13, 2006
Mustang (Java SE 6) includes the ability to give additional
information about MBeans to management clients via
Descriptors, as I described previously.
But what if you are not yet able to migrate to the Mustang
platform? As I hinted in that previous entry, all is not
lost. You can still use Descriptors, though it's more work.
We often hear from developers that they'...
on Jun 8, 2006
Started this right after JavaOne, then got distracted... hopefully someone gets something useful out of it.
for the complete scoop on JavaOne 2006.
What a week, I'm tired, my feet hurt, and I think I have a headache from the after dark speaker system.
I must be getting too old for this, but I'll be back next year, what am I? Nuts?
Why do people inflict...
on Jun 6, 2006
JDK 5.0 allows you to make an application monitorable without
writing any extra code, using command-line properties such as
-Dcom.sun.management.jmxremote. But what if the behaviour
obtained using these properties isn't exactly what you want?
Monitoring available out of the box
JDK 5.0 (codenamed Tiger) introduced support for management and
monitoring through three...
on Jun 5, 2006
ellioth's blog entry on upgrading to Dapper Drake (ubuntu 6.06) makes it sound safe and simple to do, so maybe I'll take the dive. However he talks about installing Sun's Java on the system.
As he mentions, and as we pointed out on the jdk-distros site getting the JRE there is pretty trivially done. Getting the JDK installed is a little less trivial, just poke around in the synaptic package...
on Jun 4, 2006
With few exceptions (Web
Start and Beans
Persistence) there have been very few desktop related JSRs. Well,
we're going to change that. Beans Binding, or JSR
295, has just passed inception ballot and the expert group is now
A big part of what we, desktop developers, have to write every day is
component wiring code, or glue code. Glue code is the code that
on May 23, 2006
We have been accepting code contributions, for bug fixes, from the public for over a year. The program is described on the mustang.dev.java.net project page. Essentially the idea is, if there's a bug you see that you want fixed, rather than wait for a Sun engineer to make the fix that you do it yourself.
At Java ONE three of the contributors were interviewed and a recording of that interview...
on May 20, 2006
I have some web sites that I publish for myself. There's some history to this, but last year I chose the Drupal content management system. It has a great featureset and a large community surrounding it. It is written using PHP and works pretty well.
So... Caucho (the makers of Resin) recently came out with PHP support, and I just ran it through a quick test. Caucho provides a couple tiny...
on May 19, 2006