Skip to main content

Beauty Knows No Pain

Posted by editor on October 20, 2005 at 7:04 AM PDT

Whatever happened to desktop JavaBeans anyway?

One of the remarkable things in the title of today's Feature Article, Accessing a PDF Document with the Acrobat Viewer JavaBean, is the word JavaBean. When was the last time you saw anyone talking about beans not in the EJB context, but in the original GUI context of "a reusable software component that is written in Java programming language [and] can be visually manipulated in builder tools"?

But as described by author Deepak Vohra, that's exactly what the Adobe Acrobat Viewer JavaBean provides: create a Viewer object, plop it into a GUI, and you have an instant PDF display. The host program doesn't even need to provide controls, as the viewer widget offers its own toolbar, zoom buttons, and pop-up menu. That said, Deepak shows how you can duplicate these commands with calls from your own code, such as your own buttons or menu items.

Philosophically, this still has an oddly-appealing code smell to it. While many Java hand-coded GUIs start with the model and then instantiate a widget, the paradigm here seems to be to put the widget into your GUI and then wire it up to the PDF document (effectively the model) that you want to display. Want to show a different PDF? Leave the widget where it is and just make an "open" call to wire it up to the new PDF file or URL. That seems a lot more typical of the workflow of visual GUI builders, something that have never really caught on in the Java space... a pity too, because it's a really pleasant way to work once you get your head around the concept.

The BeanBox is long gone, but will this style of Java desktop development catch on again? How does Matisse do it? Or is there another GUI builder that's worth tracking?


Kirill Grouchnikov brings a much-admired Mac GUI concept cross-platform with his L&F in today's Weblogs
In
Providing visual indication of changed contents in Swing frames, he writes:
"Have a Swing editing application and wish to provide visual indication that contents of some internal frame (or the main frame itself) have changed? Here's how you can do it, and not only on Mac."

"Forget the 'PC' as we know it for $100, but why not a new, more ubiquitous gadget?" Bruce Boyes thinks the embedded space is right for
The $100 PC in another guise?

Rich Unger reports
I just ported V-Builder to NetBeans Platform 5.0:
"A few folks have asked how you move an application from the cluster build harness on 4.x to the 5.0 platform. The way I did it was to create a new module using the IDE, and just copy my source code in. Then use the IDE's facility for adding module dependencies based on what doesn't compile right away."


In Also in
Java Today
,

Jim Waldo bites off a huge question in the Artima blog What Is XML? "The time has come to face the demons and answer the question. Let me tell you what I think the role of XML is going to be in all this...or at least start what will no doubt be a series of posts trying to make it clear what I think of XML, what I think the role of XML should be, and other assorted subjects. Those of you who know me, or have heard me speak, or have read some of what I have written in the past, may have the impression that I don't think much of XML. There is a sense in which that is true, but like so much in this world, the whole story is much more complex than that."

Frank Teti digs further into security issues in The Power of JAAS: Security System Alternatives, a follow-up to an earlier TheServerSide article. "That article identified key interfaces within a J2EE compliant application server that need to be configured in order to build secure applications focusing on RBAC, which is an integral part of Identity Management. However, the article did not discuss, in detail, alternatives to using LDAP directly for Java Authentication and Authorization Service (JAAS) security, such as a Trust Association, one of the more popular system alternatives. Essentially, the power of JAAS is in its ability to use almost any underlying security system. One of those approaches is to use a Trust Association Interceptor (TAI) instead of direct LDAP access."


The Projects and
Communities
section has a major announcement
from the Ninth Jini Community Meeting: the Jini Technology Starter Kit has been released under the Apache License 2.0. The new JTSK 2.1 is available from starterkit.jini.org, and is based on work done in the Porter project. New features include JavaSpaces extension, Ant build support, a graphical installer, a runtime environment validity checker, and more.

Linux magazine has posted Jacques Surveyer's review of NetBeans 4.1, praising NetBeans' GUI organization builder before digging in more deeply to investigate its support for J2EE development. He criticizes the difficulty of using non-default application servers, but concludes "I find that working in NetBeans is fast and the Ant rebuilds are both smart and quick"


kamg has an important warning about Mustang builds in
today's Forums.
In Build problems on Solaris 10 sparc, he writes:
"Just wanted to give everyone a heads-up. Starting with build 56, anyone who builds the server VM on older or unpatched versions of Solaris 10 may come up against a build error due to a bug in dtrace. If it happens a pretty detailed explanation should be displayed in the build output, but the long and short of it is that you'll need to either disable dtrace probes in that build by setting the environment variable HOTSPOT_DISABLE_DTRACE_PROBES, or make sure to use an updated or patched OS. I believe Solaris 10 update 1, build 15 and later will work, but if you have an earlier one, try to apply these patches: 118822-19 and 118844-19."

eduardomartins offers some architectural designs for Mobicents in
Re: Presence Service for Mobicents:
"Ok, I made a new diagram regarding Ivelin's ideas, which breaks the Presence Service to 3 *components*. You can check it out here. This possibility for the final architecture is close to what I first thought but some people argue that one service should have *only* one Root SBB. The way I see is this are 2 services, the generic presence service and the specific presence protocol translator, the first can be reached from SLEE directly and from network, using the service the second provides. Please tell us your opinion."


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
news submission
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
feed.


Current and upcoming Java
Events
:

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
site.


Archives and Subscriptions: This blog is delivered weekdays as
the Java
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 href="http://today.java.net/today/archive/">java.net Archive.

Whatever happened to desktop JavaBeans anyway?