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

In my last entry, I mentioned that I had reimplemented the RMI registry portably, before discovering that there was a much simpler solution to the security problem I was addressing. Here's the reimplementation for what it's worth. It allows you to go further than the socket factory hack. And if you ever need to understand gory details of the RMI protocol, this...
on Jan 11, 2007
Among the questions about my property proposal and its implementation. One can be answered easily. Why don't provide property change support ? Because there are several ways to implement a property change support depending on what you want. I've try to categorize them, conbinations are possible: Listener and event can be at least the following couple:...
on Jan 8, 2007
Happy new year everyone. Since my last post, i've done some homeworks :), and i'm please to present you a new version of the prototype java compiler which includes property support. First, why properties ?, we have already fields and any IDE have a menu item that can generate getters and setters, so why do, we need properties ? Why do we write getter and setter ? The...
on Jan 5, 2007
I haven't blogged for a while, but I have plausible deniability. We just got twins. Today, I discovered the JavaScript console in JDK6. From a command shell, run jrunscript (assuming, of course, that you have $JAVA_HOME/bin on your path). You get a JavaScript interpreter that lets you script Java classes. For example, try this little program: importPackage(Packages.javax....
on Jan 3, 2007
Update for 1/23/2007, just a very short note on windows. The findbugs target needs to add vmlauncher="false", so the line: <exec executable="findbugs" failonerror="true"> changes to <exec executable="findbugs" failonerror="true" vmlauncher="false"> It's not exactly clear why this is necessary, but this allows the findbugs target to work on windows, and also works...
on Jan 3, 2007
It is suggested that the preferrred way of creating the information for a Java package, such that the javadoc tool recognizes it as such, while creating the javadoc documentation. I decided to take this advice and immediately landed into problem of inconsistency with it. I could not create this file as a Java source file, using the NetBeans IDE because it is not a proper java class name! So...
on Dec 31, 2006
If you've had occasion to use the RMI registry seriously, you may have encountered some of its shortcomings. Chief of these is that anybody on the local machine can modify the registry. There are only a few things you can do about that, of which the craziest is to reimplement enough of RMI to code your own compatible version of the registry. I did that, and write...
on Dec 29, 2006
We have been requested to use static imports sparingly. I like that advice. Use your judgment to actually use this support. But frankly, articles, presentations I have seen use the stdout, the "out" field of java.lang.System as imported statically. But, the following program does not compile: class Format { public static void main(final String[] args) { out.format("Hello, World!"); } }...
on Dec 23, 2006
A multihomed computer is one that has more than one network interface. Problems arise when you export an RMI object from such a computer. Here's why, and some ways you can work around the problem. A typical example of a multihomed computer is a laptop with both Ethernet and WiFi interfaces. If you look closely at such a computer, you'll...
on Dec 22, 2006
I'm writing this in what I used to think was the world's nastiest airport, where I have a five-hour stopover. I'm somewhat revising my opinion of the airport because I discovered a "Quiet Seating Area" with real seats and real quiet. A bit like a business-class lounge but for the plebs. So I'm sitting there typing this, with my laptop on a table and the...
on Dec 18, 2006
Since my last post, i've played with javac enought to be able to provide a patch that enables to let the compiler infers the type of local variables. Life is a matter of choices If you have already read the last Peter Ahé's blog entry you know that, at least, two proposed syntaxes compete. The first one suggested by James Gosling and named 'Algol' in the prototype use...
on Dec 17, 2006
JDK6 Build Cheat Sheet Just thought I'd list a few ways that the JDK can be built. These apply to JDK6 and JDK7, JDK5 building is a little different but has some of the same settings. The gnumake used here is the GNU make 3.78.1 or newer. On Solaris systems with the Companion CD installed, it can usually be found with the name gmake in /usr/sfw/bin/ or /opt/sfw/bin/. On Linux just use...
on Dec 15, 2006
I have just listened to Laurie Tolson talk about OpenJDK and now Mark Reinhold is talking about JDK 6. This is the official announcement of JDK 6, here in London. Since this morning, you can download the final version of the new version of the Java Platform. Interesting times we are right now. In the last few weeks, we had the announcement of NetBeans 5.5, then Sun announced OpenJDK and now JDK 6...
on Dec 11, 2006
For an average duke, the big difference between a language like PHP, Python and Java is that you have to declare the type of the variables. In general, it's not a big beal for a statement like this one   foo=new Foo(); to declare the type and so write it like that   Foo foo=new Foo(); The advantage of declaring the type Foo is that the compiler won't let you use foo in...
on Dec 11, 2006
Earlier this year, Australia made changes to their time zones that required a completely new JRE. Then, the US announced time zone changes for 2007 that required a completely new JRE...unless of course you don't mind reporting incorrect time during the affected periods. I expected there might be some grumbling about the fact that you had to update an entire JRE just to update some exchangeable...
on Nov 26, 2006
Now that we've open source'd Duke, it's possible to use the Duke Mascot (technically Duke isn't a Logo but a Mascot, as I understand it) for any aspect of the Java ecosystem. Way back in the mysts of tyme, in the 1.2.2 and 1.3 timeframe, I helped to put the java.awt.Robot class into the platform. In 1.2.2 we had a private class, and in 1.3 we upgraded it to a real honest-to-goodness class for...
on Nov 24, 2006
I recently wanted to add some performance measurements to an application. To avoid duplicating code everywhere I needed to make measurements, I coded up a small helper class. What I wanted to measure was the amount of time taken by various operations within the application. For each operation, I wanted to know various statistics about it: how many times it was...
on Nov 23, 2006
IBM has been requesting an open source Java for years. Back in early February 2004, IBM started sending its open letters to Sun. Those letters generated lots of discussion, and Sun's commitment to open source was questioned.  We know what "open letters" are, right? Open letters are the equivalent of sending email to a coworker and cc'ing the boss just to make sure there's a little extra...
on Nov 22, 2006
The closure proposal specifies a new type java.lang.Undeclarable that can be used as a return type of a method to indicates that this method never returns. All instructions after a call to a method that returns Undeclarable is unreachable, by example :   Undeclarable throwAnIOException(String message) throws Exception {    throw new IOException(message);  }...
on Nov 21, 2006
What Sun finally did this week by releasing Java under GPL was a historic event. Using the GPL instead of yet another Sun license certainly makes adoption that much easier. But why did it take so long and why the change now? I left Sun in 2004 after 8 fun years at Javasoft. Open Source Java was a annual discussion at Sun and in many conversations with open source advocates and companies. Many of...
on Nov 15, 2006