Posted by editor
on August 22, 2005 at 6:09 AM PDT
I18N, L10N, and T9N. Also:
Spotlight: Open Language Tools
Weblogs: LGPL, desktop startup performance, and Open Media Commons
Also in Java Today: Java Data Objects and bytecode manipulation
Projects and Communities: JXTA Kitchen and Jini meets JMX
Forum Postings: Mustang RowSorter design and fast NIO http connections
I18N, L10N, and T9N
The Java mindset usually seizes on internationalization in terms of ensuring that code behaves correctly in different locales, which means being flexible about currency and time conventions, being able to display two-byte Unicode characters, and reading and displaying localized text instead of hard coding it into the source.
Which is great, but who's doing the localization? Who's responsible for all that translation?
An I18N project that makes perfect sense from the developers' point of view may be completely impractical for everyone else. Throwing a huge
ResourceBundle over the wall -- or 100 little ones -- and hoping to get back a working localization is wishful thinking indeed. The effort is not as easy as it might appear.
Fortunately, there's some Java help for this too. In this week's Spotlight , we introduce the Open Language Tools project. Their philosophy is that
"we believe that computers are tools that can help people - in our case, we want computers to help translators. Anything that can be done to help translators improve the quality of their work, or reduce the amount of time it takes to do translation is definitely within the scope of this project." The project currently has two major efforts:
an XLIFF translation editor, and a number of XLIFF file filters to handle working with documentation file formats (HTML, JSP, OpenOffice.org, etc.) and software formats (Java properties and ResourceBundles, among others).
An open letter from Rich Unger kicks off today's Weblogs
Sun's inconsistent attitude towards the LGPL , he writes:
Both proprietary software companies and many OSS projects (including NetBeans) won't touch LGPL'ed libraries. Whether their concerns are valid or not (I think they are), we're left in the ridiculous scenario where one Sun OSS project (NetBeans) cannot make use of other Sun OSS projects.
Java Client Group architect Chet Haase is looking for some feedback to help improve desktop app startup performance. In
Persistent Questions , he asks,
"how do you persist your app preferences? In our search to tune startup performance, it would be helpful to know what developers need us to optimize."
John "jbob" Bobowicz says Open Media Commons turns the tables on DRM :
"When Jonathan Schwartz talked about the 'Age Of Participation' back during Java One 2005, he wasn't kidding. Now it seems that Java sits squarely in the middle and has it's sights set on Digital Rights Management with the announcement of the Open Media Commons initiative."
In Also in
Java Today ,
the Java Data Objects (JDO) specification, Java Specification Request (JSR) 12, defines an API for a standard way to transparently persist plain Java technology object and database access. Using JDO, Java application developers can write code to access the underlying data store without using any database-specific code. JDO is designed to work in multiple tiers of an enterprise architecture including the Java Platform, Standard Edition (Java SE, formerly known as J2SE), web tier, and application servers. The article Getting Started with Java Data Objects covers the essentials of JDO and offers sample code to give a flavor of the effort involved in using JDO to persist your Java technology objects.
"The ASM bytecode manipulation framework is written in Java and uses a visitor-based approach to generate bytecode and drive transformations of existing classes. It allows developers to avoid dealing directly with a class constant pool and offsets within method bytecode, thus hiding bytecode complexity from the developer and providing better performance." In Introduction to the ASM 2.0 Bytecode Framework , Eugene Kuleshov shows what's new in the 2.0 version of ASM, looks at its support for J2SE 5.0 features like annotations and generics, and shows a sample application to analyze the class dependencies of any JAR file.
In Projects and
members of the JXTA Community may want to save the dates of September 26-27, which is when the JXTA Kitchen is being held on Sun's Santa Clara campus. The event allows you to hear from the JXTA team, work on your code with JXTA experts, and have a one-on-one with a JXTA team member.
An announcement on the
jini-users list proclaims the availability of version 1.1 of the Flavio project, which provides Jini service management based on Java Management Extensions (JMX). Flavio 1.1 is released under the Apache License (v2) and provides a Jini-based JSR-160 JMX connector.
In today's Forums ,
zixle is reconsidering Mustang design thoughts
Re: RowSorter and related classes :
"On the way home for work I was thinking this one through and had another thought. I'm not sure that visually adding/removing a column should in anyway change the filters. Consider the case where the developer has widgets outside the scope of the table controlling the filter. For example, I choose to see all email messages that have a status of important. Even if the status column isn't visible I expect the filter to still apply."
In another interesting point from the Performance forum,
tmarble shares more Java EE postings (reprised) :
"In the past, most appservers have either used traditional I/O (which drastically limits their scaling) or have used a C-based HTTP interface (which gives them good scalability but eliminates their portability). Sun's 9.0 appserver (available now through GlassFish as an open source project through Sun's CDDL) will use NIO to achieve scalability *and* portability by relying solely on Java code. In our tests so far, we've out-scaled all C-based HTTP connectors that we've been able to test."
In today's java.net
News Headlines :
Registered users can submit news items for the
href="http://today.java.net/today/news/">java.net News Page using our
form . All submissions go through an editorial review before being
posted to the site. You can also subscribe to the
href="http://today.java.net/pub/q/news_rss?x-ver=1.0">java.net News RSS
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
I18N, L10N, and T9N