Core J2EE Patterns

View: [ 2009 | 2008 | 2007 | 2006 | 2005 | 2004 | 2003 | 2002 | 2001 ]

Articles
Examples
  Links
Tips
  

Articles:
  • Redirect After Post 2. Implementing Redirect-after-Post pattern using Struts by Michael Jouravlev   - [Clicks: 277]
    This article demonstrates the benefits of Redirect-after-Post pattern using a simple web application. See my previous article " Redirect-after-Post pattern in web applications" for the discussion of the concept.
    [Includes source code]
    http://www.theserverside.com/articles/article.tss?l=RedirectAfterPost2 - Nov, 2004
  • Foundations of JSP design patterns: The View Helper pattern by Andrew Patzer   - [Clicks: 80]
    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.
    http://www.javaworld.com/javaworld/jw-11-2004/jw-1101-viewhelper.html - Nov, 2004
  • Eliminate caching in service locator implementations in J2EE 1.3 by Bobby Woolf   - [Clicks: 87]
    This article shows how implementations of the Service Locator pattern that include a resource cache can cause code to run incorrectly in J2EE 1.3 and later versions. While the Service Locator pattern itself is still useful, this article will show how caching with this pattern is harmful rather than helpful, why it should be eliminated from service locator implementations, and offer some practical alternatives.
    http://www-106.ibm.com/developerworks/websphere/techjournal/0410_woolf/0410_woolf.html - Oct, 2004
  • Using Rational XDE Developer and WebSphere Studio for large scale component development with consistent J2EE patterns by Ritchie Hale, Erich Rueede, Daniel Peter   - [Clicks: 50]
    The ability to access non-Java enterprise applications through J2EE application servers is becoming a common requirement for large enterprises. This article provides a means for generating large numbers of similar components that conform to standard patterns using a model driven development approach with Rational XDE Developer and WebSphere Studio Application Developer.
    http://www-106.ibm.com/developerworks/websphere/techjournal/0410_hale/0410_hale.html - Oct, 2004
  • Cleaning the Service Locator's Cache by Krishna Patil   - [Clicks: 81]
    The Service Locator pattern provides many benefits, but its caching facility can cause errors. Learn an approach that examines the cache and repairs errors caused by invalid services.
    http://www.ftponline.com/javapro/2004_09/online/kpatil_09_15_04/ - Sep, 2004
  • Redirect After Post by Michael Jouravlev   - [Clicks: 73]
    All interactive programs provide two basic functions: obtaining user input and displaying the results. Web applications implement this behavior using two HTTP methods: POST and GET respectively. This simple protocol gets broken when application returns web page in response to POST request. Peculiarities of POST method combined with idiosyncrasies of different browsers often lead to unpleasant user experience and may produce incorrect state of server application. This article shows how to design a well-behaved web application using redirection.
    http://www.theserverside.com/articles/article.tss?l=RedirectAfterPost - Aug, 2004
  • Designing the Business Service Layer by Nalla Senthilnathan   - [Clicks: 102]
    Follow this article and learn a design technique that identifies the business service layers of a Web application through use cases. This identification opens the way to an uncluttered development process while also enabling simplified testing and maintenance.
    http://www-106.ibm.com/developerworks/web/library/wa-bsvlayer/ - Jul, 2004
  • Awaken the Service Locator by Paulo Caroli   - [Clicks: 45]
    How do you avoid critical client application delays from service-initialization errors? Try empowering the service locator pattern with an exception-awareness mechanism.
    http://www.ftponline.com/javapro/2004_04/online/j2ee_pcaroli_04_21_04/ - Apr, 2004
  • Search business objects in enterprise applications using J2EE by Rajesh Manickadas   - [Clicks: 37]
    Along with the main line transaction-handling component, searching is a needed application component for any distributed enterprise application. This component searches across complex business-object relationship hierarchies involving large result sets. Search provides better control over the result sets to design the presentation/view, tight security, and quicker response time (distributed systems). This article presents a detailed overview of what search is, J2EE design patterns for search, and discusses those patterns best for adding search to distributed enterprise applications.
    http://www.javaworld.com/javaworld/jw-04-2004/jw-0405-search.html - Apr, 2004
  • The COR Pattern Puts Your J2EE Development on the Fast Track by Lara D'Abreo   - [Clicks: 29]
    Find out how the Chain Of Responsibility pattern can rein in your beans and facades to meet evolving business requirements. Route client requests transparently to EJB server components without hardwiring client/server interactions or worrying about low-level plumbing issues.
    http://www.devx.com/Java/Article/20300 - Mar, 2004

[Top]

Examples:
  • Design Pattern Sample Application - Session Facade   - [Clicks: 182]
    In a J2EE application clients need access to business objects represented by EJBs to fulfill their responsibilities and to meet user requirements. If EJB clients access entity beans directly over the network, they must make numerous remote calls leading to increased network traffic and reduced performance . A session facade solves such problems by presenting client objects with a unified interface to the underlying EJBs. Client objects interact only with the facade ( a Stateless Session Bean), which resides on the server and invokes the appropriate EJB methods.
    [Includes sample application]
    http://www.oracle.com/technology/sample_code/tech/java/j2ee/designpattern/businesstier/sessionfacade/readme.html - Dec, 2004
  • Design Pattern Sample Application - Service Locator   - [Clicks: 162]
    J2EE uses the JNDI tree to lookup, access and invoke business services on passing a unique registered JNDI name. If the service is used by various clients, then the code for looking up the object gets duplicated in various forms which makes it difficult to maintain the application. This pattern is used to address this issue by storing the lookup values for all services in a single place and provide it on request.
    [Includes sample application]
    http://www.oracle.com/technology/sample_code/tech/java/j2ee/designpattern/businesstier/servicelocator/readme.html - Nov, 2004
  • Design Pattern Sample Application - Value List Handler   - [Clicks: 151]
    The Value List Handler pattern provides an efficient way to retrieve large amounts of data from data sources. Typically, when an application retrieves a large list of data, transmitting the whole list to a client results in poor performance due to latency of response and need for a large memory footprint. Using the scenario of Order Entry, this sample application demonstrates the effective use of the value list handler pattern.
    [Includes sample application]
    http://www.oracle.com/technology/sample_code/tech/java/j2ee/designpattern/businesstier/valuelisthandler/readme.html - Aug, 2004

[Top]

Links:
  • J2EE Design Patterns - Business Tier Pattern Samples   - [Clicks: 51]
    These business tier patterns tackle problems occuring in an application resulting from the presentation tier accessesing distributed business services, network performances degradation due to multiple calls between client and server, memory impact due to retrieval of a large list of data, and so on. The patterns demonstrated here focus on and solve design problems occuring in the middle tier of a J2EE application.
    http://www.oracle.com/technology/sample_code/tech/java/j2ee/designpattern/businesstier/index.html - 2004

[Top]

Tips:
  • Improving Designs with the MVC Design Pattern by Mark Johnson   - [Clicks: 23]
    Most applications contain code that handles input, output, and logic. Input code retrieves (or at least receives) data, output code presents data, and logic code decides what the application should do next. Small applications typically contain a mix of instructions that perform these activities. For example, a single program loop might read a value, decide what to do with it, and print a result.
    http://java.sun.com/developer/EJTechTips/2004/tt0324.html#1 - Mar, 2004

[Top]