Portlet development with spring portlet MVC and WebSphere portal V7

Motivation and Justification IBM WebSphere Portal is an industry leading Portal solution that is ranked as worldwide market share leader in the Portal products and user interaction tools enterprise software segment. Built upon enterprise-class WebSphere software, with added administrative and scalability features, It contains the widest range of portal technologies that help you develop and maintain first-class B2C, B2B and B2E portals and offers a complete set of portal services necessary to aggregate applications and content, such as: • Advanced usability features, as such drag & drop customizations and semantic tags that enable smart mark-ups and dynamic menus • Advanced tooling needed to build flexible, SOA-based solutions with unmatched scalability required by any size organization. • A "one click" site management application featuring rollback and versioning capabilities to simplify moving portals from staging to production • A Page Builder that simplifies page creation, making it easy for business users to create pages and add content to pages • A site wizard that allows users to create and deploy independent virtual portals • A Template Page capability that speeds page creation by allowing portal pages to act as templates when creating other new portal pages • A Web application integrator that enables you to easily embed existing Web applications into your portals • Blog and Wiki capabilities supported via out-of-box content templates, making it easy to add popular social capabilities • Enhanced tagging and rating within the Page Builder theme, allowing users to easily organize and evaluate content without leaving the page they are viewing • Flexible access to existing enterprise data and applications, as well as to external news feeds or Web data • Unified user experience in which information and functions made available to each user can be customized based on the user or a role that the user has • Support for the Java Portlet 2.0 Standard and to the first Java Portlet Specification, the Java Portlet 1.0 Standard. • Support for Web Services for Remote Portlets (WSRP) 2.0 • Site layout support that enables you to incorporate existing static HTML, built with familiar HTML and PHP development tools, opening up the platform to additional content sources On the other hand, there is no doubt that Spring is the most complete lightweight Java/JEE container that is used widely in Java development software workshops. With a powerful dependency injection engine at its core and established software engineering practices such as interface-oriented design and Aspect oriented programming, Spring combines the enterprise application power with the simplicity of plain-old Java objects to bring about increased productivity and ease of testing. The Spring Portlet "Model View Controller" framework is a truly unique one compared to other frameworks because it is exclusively designed for developing portlets, leaving behind the limitation(s) that comes with providing portlet development support in an existing web framework. A web framework is based on servlet technology, which doesn't have a concept of lifecycle phases; therefore it ends up hiding the different lifecycle phases of a portlet. But, with Spring Portler "Model View Controller" framework you get a full featured Portlet Framework which preserves the lifecycle phases of Portlet With Data access being the requirement for most enterprise applications, Spring provides not only JDBC abstraction framework but also integration with "Object Relational Mapping" (ORM) Solutions such as Java Data Objects (JDO), Hibernate and Java Persistence API (JPA) on a variety of Platforms including WebSphere Application Server. With Transactions coupled tightly with Data access, Spring provides an abstract layer on top of different transactions management APIs both declaratively and programmatically. As an application developer, you can use Spring's transactions management facilities without having to know much out the underlying transaction management APIs. Combining two of the best solutions (WebSphere Portal and Spring), that are not only based on but also promote software engineering best practices, provides software practitioners with an exceptional opportunity to focus on the problem at hand and to have their development cycle reduced considerably.