Posted by editor
on February 19, 2007 at 10:00 AM PST
Aspiration and inspiration for projects... also:
Spotlight: java.net @ JavaOne 2007 and Community Corner wiki pages
Java Today: Mac Java updates, NetBeans podcast, and desktop features in Java SE 6
Forums: Memory issues in JAI applets, inconsistent CPU usage, and does Windows Java hurt Linux?
Weblogs: Testing command-line apps, mobile internationalization, and code builders and L&F platform fidelity
Aspiration and inspiration for projects
So, on Friday, I was pining for time over the weekend to work on a project of mine. But instead, I ended up blowing off editing for a few hours in the afternoon and banging out some code. It went pretty well. What I'm working on is putting a Java wrapper around the Mac OS X QTKit framework, for reasons I'll make clear in a later personal blog (the Java Posse got confused again last week about where QuickTime for Java ends and my various QT projects begin, so I'll need to do a big reset for everyone on that).
Anyways, it was time well spent. I did manage to create a
CocoaComponent that wraps a QTKit
QTMovieView , and thus displays QuickTime content in a heavyweight Java component:
The fun part, which I got working a few weeks ago, was building all the native code with an Ant task. As you can see, it creates a "universal binary" library, meaning it can be used on PowerPC or Intel Macs:
So, this is the beginnings of a new project for me, called Keaton . I haven't checked in the code yet, because right now the file selector and
QTMovie creation is being done on the native side, and I want to get that moved over to Java before I check in, so that Java-based callers at least have the basic ability to create a movie and get an onscreen component for it, all in Java.
Anyways, why am I indulging this much space in the editor's blog about a proto-project that doesn't even have any public code yet? Because I wanted to get it real enough in time to serve another purpose, and that's as an example of signing up for mini-talks at the java.net booth during JavaOne 2007 . If you've been by our booth (or listened to the podcasts from last year), then you know what these are: 20 minute presentations from members of the java.net community about their projects, JUG's, communities, etc.
This week's Spotlight section links to the java.net wiki pages for JavaOne. The
java.net Community Corner wiki is where you can check out the posted mini-talks, or sign to present your own mini-talk, providing a title, speaker, and abstract. The latter is important, because we'll copy-and-paste it into the podcast feed, meaning it'll help listeners around the world decide which talks to listen to.
So that was one of the reasons I wanted to get my project sufficiently real that I could at least know that it was doable, that I'd be able to have something interesting to discuss by JavaOne, and could grab the name and reserve a time and let it serve as an example of how to sign up for a mini-talk.
You might also notice from the screenshot above that the proper package convention for java.net projects is
org.jvnet.projectname and not
net.java.projectname, but let's get into that another day.
Also on the wiki, check out our overall JavaOne wiki page , in which we'll be keeping track of technical session and BoF's presented by java.net members (once they're announced), along with other java.net activities during the week.
Speaking of Java on the Mac, in Java Today , the Mac Java Community page notes that
a pair of updates have just been released for Java on Mac OS X 10.4 (Tiger) and 10.3 (Panther). The Java for Mac OS X 10.4 Release 5 "adds support for the latest Daylight Saving Time (DST) and time zone information as of January 8, 2007, and delivers improved reliability and compatibility for Java 2 Platform Standard Edition 5.0 and Java 1.4 on Mac OS X 10.4.8 and later. This release updates J2SE 5.0 to version 1.5.0_07, Java 1.4 to version 1.4.2_12 and improves SWT compatibility for J2SE 5.0." The Java for Mac OS X 10.3 Update 5 updates Java 1.4 to 1.4.2_12 and "addresses a problem where some Java applications fail to launch."
Java SE 6 was the first release in a while to offer a significant number of new features explicitly for the desktop developer. In the SDN article New and Updated Desktop Features in Java SE 6, Part 1 , Robert Eckstein starts to look at some of these in depth, including splash screens,, access to the system tray, a fix to the "gray rect" problem, sub-pixel anti-aliasing on LCD displays, look-and-feel improvements, and more.
In episode 24 of the NetBeans Podcast , Roumen Strobl interviews Geertjan Wielenga, a technical writer on the NetBeans team, based in Prague. Topics include the various NetBeans platform tutorials , Geertjan's update center , and his upcoming NetBeans book .
A thread in the Forums started recently, in response to a two-year-old blog that makes the argument that making Java available on Windows hurts Linux and therefore Sun should stop making Java for Windows.
podlesh rejects the argument in
Re: Java has harmed Unix but helped Windows win :
"Sorry, I think you are just wrong. I understand the feeling, I'm UNIX guy too (although younger one, almost the "linux" generation). Windows and their environment is something new, strange, different, sometimes just twisted. Unfortunately, most people out there consider Windows as THE operating system and environment. This "new linux thing" is just "new", "strange", "different" for them. And most decision makers are from this category. Removing Java from Windows would be just major blow to UNIX. Programmers will NOT rush to install Linux/Unix on their PC to continue working: they will be forced to install Windows."
Marco Sambin is dealing with applet-only memory issues in
[JAI] JAI, memory usage and Java applets :
"I am experiencing some stange memory problems with my JAI and JIIO - based Java applet. This applet is able to load, display and process sets of medical images. Within a single execution of my Java applet, everything's working really fine: I am able to load very large sets of images (thanks to JAI's pull model), even multiple times in the single execution without problems. The problems begin when I exit from the applet without closing the web browser (for instance, I browse to another web page), then I return back to the applet and load another set of images. If I do this 4 or 5 times, then upon loading a given set of images I get an "out of memory" exception."
pepe reports a curious case of
inconsistent cpu use :
"I am testing multiple platforms for support of the application i am currently working on. I get very inconsistent results from one to an other. For example: on a P-IV D 2.8Ghz (dual core, cores enabled), geforce7300 GS, CPU is around 18% at 50hz. on a p-IV 3Ghz (hyperthreaded, HT enabled), intel 82945G (!!!), cpu is around 0-4%.. Both machines have latest drivers, both run flawlessly and cycletime is set at 20 on both. This is very troubling."
In today's Weblogs , AlexeyÂ Popov discusses
Testing Command-Line Applications using Golden-File approach :
"The story describes our experience of using JavaTest harness in a quality test suite."
Getting started with Mobile internationalization API. Part 2 , TomasÂ Brandalik says
"I'm back to finish this tutorial which started here. So let's have a look at internal structure of a resource file and explain how to work with resources in JSR238."
What's the big deal? KirillÂ Grouchnikov just has some
"Random musings on "Hello I'm Java, Hi I'm Mac"."
Current and upcoming Java
Registered users can submit event listings for the
href="http://www.java.net/events">java.net Events Page using our
href="http://today.java.net/cs/user/create/e">events submission form.
All submissions go through an editorial review before being posted to the
Archives and Subscriptions: This blog is delivered weekdays as
Today RSS feed . Also, once this page is no longer featured as the
front page of java.net it will be
archived along with other past issues in the
Aspiration and inspiration for projects