Welcome!

Java Authors: Loraine Antrim, Walter H. Pinson, III, Jason Dolinger, Miko Matsumura, Liz McMillan

Related Topics: Java

Java: Article

Java/J2EE: Are Portals the 'Magic Bullet' of Web Application Development?

The many advantages to utilzing portal software

Do I need a CMS or a Portal?
The line between each is a blurry one. Portals tend to offer CMS capabilities, in general, on par with all the features traditional content management systems do. The main differentiator between a "pure CMS" and a portal is adherence to the portlet specification, or allowing JSR 168-compliant portlets to be deployed within the container. So you see, a portal can have CMS capabilities, but not all CMSs are portals. Aside from this one dissimilarity, most CMS offer the same feature set as portals.

We will also say that we are cautious of traditional CMS that later cobble in support for the portlet specification. Having our own JBoss Nukes CMS, we can attest to the difficulties inherent in performing such a refactoring of the core architecture. Sure, it cost us in terms of time-to-market, but starting from scratch with a new portal architecture bought us endless flexibility and scalability. Cutting corners is not an option and we would be wary of any CMS-vendor-turned-portal-vendor for this reason.

Wouldn't retraining my staff to develop portlets nullify all economic gains compared to creating our own Web application with existing competencies?
If your developers are savvy enough to tackle SSO, personalization, internationalization, caching, clustering, etc.... and make it all accessible via servlets and JSPs, they are more than able to absorb all the technical knowledge found in the portlet specification in a short amount of time. After all, the portlet specification is extremely comparable to the servlet specification. The main differences between the specifications are:

  • Portlets are not tied to specific URLS, making use of the API to create URLs that are parsed through the portal server and eventually execute within a specific portlet.
  • Many instances of portlets can co-exist on any assigned page.
  • Portlets leverage Portlet Modes and Window States, allowing for different content to be rendered depending on a user's desire.
  • Portlet generate content fragments.
  • Portlets are written to the javax.portlet package.
There are close to a dozen major portal players in the market. Which one should I choose?
Being JBoss Portal developers, it would be seen as biased for us to evaluate the different players and furnish a result on which you should choose to go with, but there are a few items to investigate when choosing which is best for your business.

Is the portal JSR168 compliant? (Does it pass Sun's TCK?)
For reasons of portability and future maintenance, it would not be wise to develop to a proprietary API. The portlet specification continues to advance and knowledge-sharing by the community is extremely active. For these reasons, vendor lock-in should be avoided.

Are you considering open source or proprietary?
Open source and proprietary portals share essentially the same features currently, with one exception: some of the proprietary vendors supply smooth integration with other applications and systems they offer. For instance, a proprietary portal can be bundled with an existing CRM or e-commerce tools offered by the same company. If the need and budget exists to have a portal tightly integrated to other proprietary information systems, you should consider the proprietary offerings. On the other hand, we have seen a trend recently where businesses deploy open source portals and then custom develop the portlets that aggregate data from the proprietary systems in the back end. In many cases, the cost savings were immense, even when custom portlet development was outsourced to a third party as opposed to having paid the licensing and consulting costs from the proprietary vendors. In addition, a business may find the ROI acceptable for many more projects using an open source portal instead of an expensive proprietary portal. The open source portal will save a lot of developer time and reduce project risk because the presentation architecture is standards based and community tested where the in-house custom presentation infrastructure is not.

Does the portal vendor offer reliable support services for its products?
As with any piece of software, reliable support is extremely important. This is especially true with portals, as there is often a diverse set of components sitting under the hood managing a myriad of operations. Although some open source portals are backed by proven and professional support services, some of them will leave your development team at the mercy of a mailing list or a message board. Proprietary or not, you should ask who/what/when will be answering your support questions and only contract support from an organization with demonstrated high-quality support and customer satisfaction.

Conclusion
As you can see, there are many advantages to utilizing portal software. The essential decision that will take place will require evaluating whether a portal, CMS, or custom Web application is the path to proceed on. The case for the use of portal software is not cut and dry, but there are numerous advantages in adopting it like leveraging existing technology to perform the heavy lifting associated with Web application development, numerous open source and proprietary vendors backing their products with support services, and a shallow learning curve for JEE developers with regards to the portlet specification and existing MVC frameworks.

About Julien Viet

Julien Viet is lead developer at JBoss Inc.

About Roy Russo

Roy Russo is a developer at JBoss Inc.

Comments (2) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
Subbu Allamaraju 10/25/05 03:34:29 PM EDT

The article is full of spin with few new ideas or material.

Portals are not new. They have been around for quite a while. Even the Java Portlet API is now two years old. These authors seem to have woken up to portals and portlets just now.

The authors claim that "portals have been touted as the magic bullet of web application development" for "scalable, flexible, and pluggable software components". This is an over-statement, and things like scalability and flexibility are not automatically achieved by just emplyoing any arbitrary portal.

Although the authors say that you "must have a solid understanding" of portals and the underlying technologies, they don't do much to provide such a "solid understanding".

Java Developer's Journal News Desk 10/22/05 06:15:29 PM EDT

Java/ J2EE: Are Portals the 'Magic Bullet' of Web Application Development? When speaking of Web application development today, it's difficult to ignore the overwhelming influence of the Portlet Specification (JSR-168). Even before the specification was formally finalized by the expert group, the Java world saw older CMS application implementing it and new portal software arrivals in the market. The proverbial 'gold rush' to develop new applications as portlets, refactor existing applications to comply with the specification, and deploy new Web sites on portal software is not without good reason. The Java community was lacking a unifying specification in the Web tier, where all previous work could be brought together and leveraged, removing the tedious tasks developers once had to endure when creating most common Web applications.