In this second article of his four-part "JSF for nonbelievers" series, Rick Hightower introduces the major phases of the JSF request processing lifecycle. Using a sample application, Rick walks you through the five phases of a request process. Along the way, he shows you how to combine JSF with JavaScript for immediate event handling and completes your introduction to the JSF component model, with a first look at many of the components that ship with JSF.
JUnit lets you test software code units by making assertions that the intended requirements are met, but these assertions are limited to primitive operations. IBM Software Engineer Tony Morris fills the gap by introducing Assertion Extensions for JUnit, which provides a set of complexassertions that execute within the JUnit framework. Follow along as the author shows you how using this new package from alphaWorks can increase the reliability and robustness of your Java software.
Software engineers are notoriously obsessed, sometimes excessively, with performance. While sometimes performance is the most important requirement in a software project, as it might be when developing protocol routing software for a high-speed switch, most of the time performance needs to be balanced against other requirements, such as functionality, reliability, maintainability, extensibility, time to market, and other business and engineering considerations. In this months "Java theory and practice," columnist Brian Goetz explores why it is so much harder to measure the performance of Java language constructs than it looks.
A comprehensive unit-test suite is a necessity for a robust program. But how can you be sure that your test suite is testing everything it should? Jester, Ivan Moores JUnit test tester, excels at finding test-suite problems and provides unique insights into the structure of a code base. Elliotte Rusty Harold introduces Jester and shows how to use it for best results.
You may know that Eclipse is a framework meant for building other tools. You may also know that you can build your own plug-ins for Eclipse. But did you know that Eclipse comes with seven different plug-in templates to get you started? This tutorial starts you off with a start-to-finish look at building a plug-in using the "Hello, World" template, and then introduces you to the other templates, such as "Plug-in with an editor" and "Plug-in with perspective extensions".
Spring is a layered Open Source Java/J2EE application framework. The three articles in this series assist developers on how to use the Spring framework and explain the principles behind inversion of control design strategy used by the Spring framework. This series will assist developers and architects on how to build powerful J2EE-based open source frameworks. Part 1 analyses and introduces the Framework, its features and principles.
The Java 3D team has announced the open source release of the j3d-core and vecmath subprojects on java.net under the GPLv2 license with the CLASSPATH exception. This applies to all source code in the javax.media.j3d and javax.vecmath packages. Read the LICENSE.txt and README-FIRST.txtfiles in the top directory of each projects source code repository for details on what the license allows you to do.You may notice that the web page and various README files now refer to the "3D Graphics API for the Java Platform" in many places. This is the official name for the open source version of the Java 3D API. Other than the name, there are no differences (and, in fact, we will build the binary version of Java 3D 1.5.2 from the same sources).The name change was done for the same reason that OpenJDK chose a different name than "Java" for their release: namely, Java 3D is a trademark of Sun Microsystems, and we want to make it clear that: A) we are not giving away rights to use that name, and B) the binaries built from these (possibly modified) sources are not "Java 3D" from Sun.Subject to the terms of the GPLv2 license, you may modify the j3d-core or vecmath sources, but you may not call it "Java 3D".
Configuration management has proven to be a valuable tool in coordinating and tracking changes within a development environment. It is most often applied to such program components as program source code and dependent program products. In this article, youll learn how to apply that configuration management to the database environment plus get some suggestions on how to track and record database versions and change information.
While the constructs of multithreaded application programming in the Java language arent difficult to learn, many developers struggle with applying them correctly. As a result, multithreaded programs are often far more prone to subtle errors than we would like them to be, leading some developers to avoid them at all costs, even when concurrency and parallelism would clearly yield the most elegant design. In this three-part article, Senior Technical Architect Abhijit Belapurkar sets you on the path to overcoming your fear of multithreaded programming for once and for all, starting here with an overview of the most common issues involved: race hazards, deadlocks, livelocks, resource starvation, and more.
IBM is launching a revamped developerWorks Open source zone, which will deliver more articles, resources, tools, and tutorials that support major industry open source initiatives, including Linuxâ„¢, Apache, Derby, Globus, and Eclipse. Learn how you can benefit.
This tutorial shows how to build a Web service using the Eclipse Web Tools Platform. The Web service interacts with a Cloudscape (Apache Derby) database and is deployed to Apache Tomcat.
Hibernates formula element has been limited in previous versions of the popular object-relational mapping framework, but in Hibernate 3, your formulas can be used in many new ways that will simplify and empower your programming. Dai Yifan shows you whats new.
BFO breaks new ground with its PDF Library now able to Pre-flight PDFs to the PDF/X standard, providing the ability to create, verify and repair documents to the PDF/X-1a:2001 and 2003 standards.
java.net is no longer posting a separate "news" section, which previously had been used to link to off-site news stories, largely version updates of open-source and commercial software. If youre looking for a similar service, Steve Mallett collects many Java-related news and blog feeds at the http://www.planetjava.org/ site. If you are receiving this message via an RSS feed, you should unsubscribe to the feed.
Leonid Reiman, Russia's Minister of Information Technologies and Communications, outlined what he termed a "comprehensive" new government program to make Russia a leading player in the global IT market. Speaking in London, Reiman said that "the program is an integral part of the government's strategy to shift Russia away from dependency on fuel exports toward a knowledge- and service- based economy."
Joshua Marinacci, coauthor of Swing Hacks, shows you six undocumented features, classes, and properties that let you hack into Swing. From how to hide a frame from the Windows task bar to how to make Mac OS X windows truly transparent, these undocumented hacks can add a level of polish that will make your apps stand out from the rest.
During the GlobusWORLD conference in Boston, developerWorks, together with writer Hal Hensley, had an opportunity to sit down with Ken King, vice president of IBM Grid computing. We engaged in a wide-ranging discussion regarding the state of grid computing and IBMs current activities, positions, and ideas on this front.
BFO announce the release of version 2.4.3 of their PDF Library. The PDF Library adds support for XFA forms, Acrobat 7 encryption, PDF417 and QR Code barcodes. QR Code or two-dimensional bar codes are being used to convey detailed information across a variety of industries from manufacturing to innovative marketing companies.
The reason .NET "presses a lot of the right buttons," writes Duncan Mills, is that: "It's a Meta-Framework - a one stop shop."In the J2EE world, on the other hand, while there is no doubt that there are a lot of fantastic point solutions and frameworks out there, as standalone islands of functionality they have a much harder sell in the corporate market. "Are fully fledged meta-frameworks possible in the open standards J2EE space?" Mills asks, then goes on to show why in his view the answer is yes.
froglogic GmbH has announced the initial public release of Squish/Java. They write in, "Squish/Java is a new edition of the powerful, platform-independent testing framework Squish. This new edition features the automatic creation and execution of tests for Java Swing, AWT, SWT and RCP/Eclipse applications."
BFO builds on its current success with the release of the Big Faceless Java PDF Viewer. The PDF Viewer is a set of Java components for displaying and printing PDF documents or converting them to TIFF, which works in conjunction with BFO’s PDF Library.
Someone forwarded me a link to this discussion this morning. Things started with a blog post about component enabling strategies:
setEnabled strategies
The crux of Morten’s problem is he has a ton of Swing controls whose enabled state needs to be managed, but no good solution for grouping these controls together into logical chunks that can be managed as a group.
This post has made its way to the Spring-Rich forums. Keith Donald comments on two ways that Spring Rich addresses this problem:
1. We have a "Guarded" interface, consisting of setEnabled(boolean), that almost all "control factories" implement--allowing the easy enablement of compound controls in one call. A control factory is any object thatencapsulates the creation of one or more swing controls: things like dialogs, wizards, forms, commands, etc (we much favor composition over inheritence.) There is a "GuardedGroup" helper which makes it easy to adapt any logical group of JComponents to the Guarded interface.
2. Our "command" framework, which adds considerably more power to Swing's action concept, has two major constructs: ActionCommands and CommandGroups -- both "Guarded", and both factories for the underlying gui controls (the former, producing actionable buttons, menu items, check boxes, or radio buttons---the latter, producing menus, button bars, tool bars, status bars, and popups) Calling setEnabled(boolean) on a root command object automatically updates the enabled state for all controls bound to that command. Some of the design here was notably inspired by the work ofAndrew Pietsch’s GUI Commands, a quality project that also greatly improves on Swing’s base action framework.
Check out the complete thread for more detail. Spring-Rich: Enabling Strategies