JPA 2.0 shaping up
Among the most welcome features of Java EE 5.0 and EJB 3.0 was the Java Persistence API, which not only offered a nice alternative to EJB's container-managed persistence, but also stood alone as a general-purpose object-relational mapping framework. In fact, it's even suitable for use in desktop applications, as Josh Marinacci demonstrated in his article, An Introduction to Java Persistence for Client-Side Developers.
So what's new? Linda says it will take two blogs to hold it all, starting this time with JPQL improvements:
The functionality added in the Early Draft to support element collections, nested embeddable classes, embeddables having entity relationships, generalized maps, and ordered lists necessitated some changes to the JPQL syntax to make queries over these mapping types easy to write. Further, we've also added some other requested (and much needed) functionality to the language.
Embeddables with dot notation, maps, ordered lists... lots of interesting stuff to chew on in this preview. The Aquarium post adds, "the expert group is soliciting feedback at jsr-317-pdr-feedback at sun dot com. Linda promises a follow-up blog entry describing the changes to the Criteria API, and she also gave a fast (10m) presentation as part of the GFv3 Prelude launch (details, replay, slides)."
Also in Java Today, Van Riper points out a free Java community event during QCon San Francisco. "QCon San Francisco has invited bay area Java Developers to a Java Community Event on Thursday November 20th, 2008. This free event will be a one-hour long panel on the State of Java with well known Java luminaries and QCon SF speakers. Although free, an advance RSVP is required and space is limited. The registration page also lists who has already signed up to attend this event at the bottom of the page."
Sun recently released a new version of its open-source Java application server. GlassFish V3 Prelude targets the Web tier, and is based on a modular architecture that ties optional plug-in modules into a small kernel via OSGi. In a new Artima interview, John Clingan, Sun's GlassFish Group Product Manager, and product management director Paul Hinz, describe the latest GlassFish features most relevant to developers, including rapid deployment, and working with Rails applications.
In today's Weblogs, Kohsuke Kawaguchi discusses the hazards of and solutions for Compiling with JDK6 and running on JDK5. "It's common for a Java project to compile with later versions of JDK than it minimally requires. But when you do this, there's a danger that you have accidental dependency that breaks your software when run in earlier JDKs. So I wrote a tool to verify this."
In Ease of development in the Java EE 6 Platform, Roberto Chinnici offers "an overview of ease of development features in the Java EE 6 platform."
Got Merb? In
TOTD #52: Getting Started with Merb using GlassFish Gem, Arun Gupta writes, "GlassFish Gem 0.9.0 was recently released. It can run any Rack-compatible framework such as Rails and Merb. The gem is even extensible and allows to plug any of your favorite Ruby framework using -apptype switch (more on this in a future blog). This blog shows how to install the gem and use it for running a Merb application."
Marking the beginning of a new contest, this week's Spotlight is on the Project Darkstar Developer Challenge, looking for the best applications and utilities for Project Darkstar written by independent developers and students. The contest offers some enticing awards: grand prize winners get a 2009 Game Developer Conference (GDC) pass and an opportunity to show their work in a GDC presentation, plus cash for travel and a feature on the Project Darkstar site. Entrants must be members of the Project Darkstar community, and must submit their entries between November 17, 2008 and January 19, 2009.
In today's Forums,
navinkjha is perplexed by a Problem with auto complete combobox and JTable. "I use table.setSurrendersFocusOnKeystroke(true) to allow user to start typing in the cell of the JTable. The cell editor is a combobox with auto complete. The problem I am seeing is that when the editor comes on, the existing value shows up instead of a value matching the first character typed. How do I achieve this?"
Bill Kocik has a big-picture followup question in the thread
Re: Remote deployment of Rails app. "That actually raises another question. I'm aware of Warbler (and Goldspike, for that matter), and it's very cool - but I thought one of the advantages of GlassFish v3 is that you no longer have to package your app into a war file to deploy it. The question is: Why is that an advantage? I've never been really sure where to ask that question."
Ryan de Laplante asks
Can SIP servlets be used to create a menu based phone system? "I've only done a tiny amount of reading about Sailfin, SIP servlets, JSR 116 and 289. It's not clear what kinds of systems I can write with this. Can I write a system that people phone into, enter a user ID and password, and follow voice prompts to interact with our systems? Can I respond to an application event by phoning someone and playing a recorded message or using text-to-speech?"
cowwoc tests the limits of Java archeology in
Re: Tracking Java Versions using Google Analytics. "I believe deployJava.js will detect Java versions at least all the way back to Java 1.4.2, and I suspect even earlier. The only thing that is not clear is whether it will work for non-Sun JDKs back to those versions but we can ask Sun for clarification on this point (in fact, I just filed a BugParade issue asking for explicit documentation)."
Current and upcoming Java