Spring into Seam, Part 2: When stateless and stateful collide
You say adding stateful behavior to Spring beans is too much work? Maybe all you need is a little extra muscle from JBoss
Seam. (Excerpted from Seam in Action, forthcoming from Manning Publications.)
Dan Allen,
April 2008
Spring into Seam, Part 1: Build a Spring-Seam hybrid component
Who says adopting Seam means giving up Spring? In this first installment in a three-part series, Dan Allen shows you how to
build hybrid components that benefit from both Seam and Spring container functionality. Excerpted from Seam in Action, forthcoming
from Manning Publications.
Dan Allen,
April 2008
Is Tomcat an application server?
Whether Tomcat is an app server depends in part on how you're using it, but that's not all. Jeff Hanson explains the formal
differences between app servers, Web servers, and Java EE containers, and also explores usage scenarios where Tomcat is --
and is not -- appropriate as an application server.
Jeff Hanson,
January 2008
Acegi Security in one hour
If you've been itching to try Acegi Security, here's your chance for a hands-on introduction. Learn how to set up Acegi's
authentication and authorization services for any Java-based Web application, using both standard components and custom implementations.
ShriKant Vashishtha,
October 2007
From Java EE security to Acegi
Application security as an enterprise-level concern needs to be carefully addressed by developers. This article compares the
security services defined in Java EE and Acegi to help developers select the appropriate security services and program security
from an enterprise-wide view.
Dr. Xinyu Liu,
March 2007
The year head: The shift to scripting and agility
Enterprises will spend too much this year creating monolithic apps. Most would be better off using scripting languages, Web
services, and SOA (service-oriented architecture) to weave together browser-based apps that leverage existing assets.
Alan Zeichick,
January 2007
Leverage Spring Web development with Offspring
This article introduces Offspring, a Spring-based Web framework
extension. It accelerates and simplifies the design and
implementation of Web applications by reusing aspect-oriented
modules, thereby separating the responsibilities of the software
components and hiding the Java Spring specifics from the
development process. Extreme flexibility is achieved by combining
the generic framework with specialized modules called executors.
Examples from the real Website www.whowillbethere.com, which was built on
the principles of Offspring, illustrate this proof of concept.
Edward Salatovka,
March 2006
Getting around JSF: The role of JSP
In this excerpt from JavaServer Faces in Action (Manning,
November 2004), author Kito Mann explains how JavaServer Pages fits
with JavaServer Faces.
Kito D. Mann,
December 2004
Foundations of JSP design patterns: The View Helper pattern
This article, an excerpt from Foundations of JSP Design
Patterns (Apress, 2004), describes the View Helper pattern and
shows how to build a few useful view helpers that you can add to
your own toolkit.
Andrew Patzer,
November 2004
Solving the logout problem properly and elegantly
Properly handling the logout process in a password-protected Web
application requires more than just calling the
invalidate() method on the HttpSession
object because most modern browsers, with the Back and Forward
buttons, allow users to go back or forward on a page. If the Back
button causes the browsers to display stale pages from their caches
after the logout process, users of these inadequately-developed
applications can become confused, lost, and wonder what has or
could have happened to their personal data. Many Web applications
put up a page threatening users to close their browsers completely,
thus, in effect, preventing them from clicking the Back button.
Others use JavaScript, which is not always active on clients'
browsers. Most of these solutions are either awkwardly implemented,
fail to work 100 percent of the time under all circumstances,
require too much training on behalf of users, and/or compromise the
user experience.
This article presents solutions for properly handling the logout
problem along with sample programs. Author Kevin Le starts by
describing an ideal password-protected Web application. He then
uses sample programs to illustrate how the problems manifest
themselves and discusses the solutions required to fix the
problems. By centering the discussion on JavaServer Pages (JSP),
the article presents the concepts that can be easily understood and
adopted for other Web-tier technologies. Le concludes his
discussion by showing how building Web applications with Jakarta
Struts can more elegantly solve the logout problem. Sample programs
for both JSP and Struts Web applications are included.
Kevin H. Le,
September 2004
Struts best practices
Multiple options are available for solving problems with Struts.
When deciding among these alternatives, the choice must be based on
parameters such as the scale of work and availability of time.
However for large applications and the best quality-of-service
needs, every decision becomes crucial and extra efforts are
required to choose the appropriate solution. To help you make these
decisions, Puneet Agarwal discusses some of the best practices for
developing Struts-based applications.
Puneet Agarwal,
September 2004
Servlet and JSP performance tuning
In this article, Rahul Chaudhary describes performance-tuning
techniques (PTT) that can be used to improve the performance of
servlets and JSP pages, thus improving the performance of your J2EE
applications. The author assumes the reader has basic knowledge of
servlets and JavaServer Pages.
Rahul Chaudhary,
June 2004
Multibyte-character processing in J2EE
Most J2EE servers can support multibyte-character languages (like
Chinese and Japanese) very well, but different J2EE servers and
browsers support them differently. When developers port some
Chinese (or Japanese) localized applications from one server to
another, they will always face multibyte-character problems. In
this article, Wang Yu analyzes the root causes of problems related
to multibyte characters and provides some solutions and guidelines.
Wang Yu,
April 2004
Art of Java Web development: WebWork
In this article, an excerpt from his book Art of Java Development, Neal Ford
introduces the WebWork open source development framework. He
discusses its architecture, configuration, and key concepts.
Neal Ford,
March 2004
Isolate server includes' runtime context
Dynamically included JavaServer Pages (JSP) pages and servlets
offer simple, but limited means for frontend code encapsulation and
reuse. A dynamically included resource often relies on runtime data
(request parameters, JSP-scoped attributes), and this restricts the
runtime context from which it can be included. This article shows
how to achieve true black-box reuse of frontend logic in the form
of JSP pages or Java servlets, by wrapping the servlet request
object and effectively creating a local runtime context for an
included resource.
Borislav Iordanov,
December 2003
Some reader favorites:
EJB fundamentals and session beans
Create a scrollable virtual desktop in Swing
Wizard API updated!
Tim Boudreau has released a new version of the Swing Wizard library (version 0.997) that fixes the WizardException bug reported in JavaWorld's recent Open Source Java Project profile. The article's examples have been reworked to test out the new, improved WizardException. Thanks, Tim, for this helpful fix!
Open Source Java Projects: The Wizard API
Free Download - 5 Minute Product Review. When slow equals Off: Manage the complexity of Web applications - Symphoniq
![]()
Free Download - 5 Minute Product Review. Realize the benefits of real user monitoring in less than an hour. - Symphoniq