Spring into Seam, Part 3: Persistence for two
Who says Web application frameworks can't learn to share? Find out how Spring and Seam can collaborate on persistence tasks
in complex,
database-oriented applications. (Excerpted from Seam in Action, forthcoming from Manning Publications.)
Dan Allen,
May 2008
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
Recent top five:
Let's talk about exceptions ...
How do you handle exceptions? Do you think upfront about the type of exceptions that you want to catch or do you just let
the outside world handle it?
-- Jeroen van Bergen in JW Blogs