SpringSource launches app server
Next-generation application server platform based on Spring, OSGi, and Tomcat snubs Java EE.
Chris Kanaracus, April 2008

Asynchronous HTTP and Comet architectures
There's a lot more to asynchronous, non-blocking HTTP than Comet. Get an overview of the programming techniques and servlet container extensions that are breathing new life into HTTP on the server side, with or without the support of the Java Servlet API.
Gregor Roth, March 2008

Asynchronous HTTP Comet architectures
There's a lot more to asynchronous, non-blocking HTTP than Comet. Get an overview of the programming techniques and servlet container extensions that are breathing new life into HTTP on the server side, with or without the support of the Java Servlet API.
Gregor Roth, March 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

REST easy with the JavaBeans Activation Framework
Find out what makes the JavaBeans Activation Framework a perfect vehicle for RESTful data transmission, then put JAF to work in a sample Web application that tracks requests and responses through a Java Servlet-based system.
Jeff Hanson, October 2007

SIP programming for the Java developer
In this article, Wei Chen introduces the basic concepts of Session Initiation Protocol and SIP servlets. He reviews the steps involved in developing SIP servlets and presents a complete example for developing, deploying, and running a SIP servlet on SIPMethod Application Server.
Wei Chen, June 2006

New features added to Servlet 2.5
In this article, Jason Hunter reviews the changes included in the latest version of the Servlet specification. This maintenance release includes support for annotations, several web.xml conveniences, a handful of removed restrictions, and some edge case clarifications. (2,600 words; January 2, 2006) Editor's note: Article updated March 6, 2006.
Jason Hunter, January 2006

Servlet-based Google Earth tours
Google Earth is an amazing client that has mass-market appeal and affects how we visualize location information and geographically related search results. This article describes how to use XML in combination with an elementary servlet to create tours. Many opportunities exist to expand on the examples given in this article to provide truly rich services.
Alan M. Berg, November 2005

All aboard for more efficient Web applications
In this article, author Edward Salatovka introduces a design architecture he calls Train. Train allows the simple grouping of multiple user requests into a single database or network query, thereby boosting application performance and eventually reducing hardware requirements. The paradigm's benefits are proven by a load test against the real implementation.
Edward Salatovka, April 2005

A Java proxy for MS SQL Server Reporting Services
Generating high-quality print output from a Web application is often difficult because browsers provide only limited control over a document's layout. Adjusting page margins or positioning document elements at a precise location on the page proves impossible when printing from the browser. When preprinted forms are being used or when page flow must be controlled tightly, you must use a server-based document generation engine. Many such technologies and products are available. A solution should provide good report development productivity, a GUI report designer, be highly scalable, perform well (especially when rendering PDF documents for concurrent sessions), and come with an attractive price tag. We tested and benchmarked several products and settled for Microsoft SQL Server Reporting Services (RS). RS can easily be integrated and deployed in a Microsoft-centric environment, but making it accessible to a Java Web application requires some work. This article provides some guidance in integrating RS with your Java Web application.
Christian Donner and Ilia Papas, January 2005

The Chain of Responsibility pattern's pitfalls and improvements
The classic Chain of Responsibility (CoR) pattern requires the individual chain node classes to decide whether the next node should be called to fulfill the chain's responsibility. This is a design flaw because, in practice, such a call can be easily forgotten. In this article, CoR implementations of Microsoft Windows global hook and Java servlet filter framework are used as examples to demonstrate that flaw. A solution is proposed, and an action chain that allows multiple actions to handle an HTTP request in the Struts framework is discussed.
Michael Xinsheng Huang, August 2004

Write thread-safe servlets
You finished your Web application, thoroughly tested it, and it's now deployed. You're feeling bullet proof and 10-feet tall, and then it happens...the customer-support calls start coming in: "We're seeing some strange things. A customer is seeing someone else's information!" As your professional career flashes before your eyes, you scan for any possible scenarios that you may have missed. "Did I test it under load? Could that make a difference? I haven't run into this kind of problem before. Why now?" Well, if you're a Java programmer and developing Web applications, then thread safety is an issue you must contend with regardless of your application type or project size. Your servlet and JavaServer Pages code is subject to thread safety issues due to the way your servlet container uses it. This article presents thread safety in simple terms and explains why it can be an issue for your servlets. You also learn how to avoid writing non-thread-safe servlets and how to make servlets thread-safe.
Phillip Bridgham, July 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

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

All

Web services test code generator
Klaus Berg has recently released a test-code generator for JUnit-based Web service clients. If you're developing Web services using Axis2 and XMLBeans this wizard could turn your JUnit test client coding into a powerful code generation process. It also has uses for those using GUI-based testing tools like soapUI.

Newsletter sign-up

Sign up for our technology specific newsletters.

Enterprise Java
View all newsletters

Email Address: