Protocol to access Portlet repositories

I recently come across this new project Portlet Repository Protocol(PRP). The project is about able to establish a standard way in which various Portal Administrators can search, download and deploy the portlets from Portlet Repository. This furthur stresses the need of a vendor indpendent Repository Source, where one can find many readily available portlets on various Portals. Here is the link if you want to know more about PRP


Is portal going to keep Java a float ?

There is a discussion going on TSS, about a comment made by Tim Bray about how Php, RoR is more scalable then Java.

Even before RoR(Ruby on Rails), the simple websites were build over Php then on Java. This is because trying to build a small dynamic website on Java is more complex and time consuming, not to mention that to host Jsp website is more expensive then PHP. Thus its right, when we try to compare PHP and RoR and Java with respect to small websites and say, Php and RoR are better choices then Java/JSP.

But still when it comes to bigger applications, where authentication, Security, better architecture, is required Java is still way ahead of both RoR and Php. Now with Portal applications coming up in Java, I guess Java web-application development for bigger applications have taken a big lead. Portal provides the authentication, integration, security, personalization, customization facilities to the web-application with not a big effort. RoR success is because it automate many things and time to develop websites is greatly reduced. Portal also does similar thing for bigger web-applications. It provides SSO, Authentication…etc which are heart of any big application with lesser efforts.

But yes in near future we are about to see much development in RoR for small dynamic websites. So isn’t portal is the edge, that can keep Java a step ahead of all others. :)


Can Mashups be exploited more with Portals?

There have been quite a number of posts on Mashups now. Recently, Sun have released a sample implementation of Mashups with Portals. The sample code is good and it uses the Yahoo Map Api to develop the mashup. The Personalization features provided by portal can furthur enhance what mashups can do. They provide the RSS feed that one can add, to be displayed on yahoo maps.

This just shows a glimpse of how Portal can exploit power of Web2.0 and mashups. The end user can select his own mashups and personalize it to his own use. Though in this example the Ajax based api was used, it would be even more beneficial if Rest Protocol is used through Java. Take for example if we have Portlets for Google Calendar. We can have various such portlets which works on Rest Protocol and also uses the Power of Portals to personalize the things. There could be a way to single sign on, by storing important information in user preference data.

The above approach is to use Web2.0 content inside portals. The other examples in this regard would be use of wiki forums blogs with portals.

But the other approach is exporting the Portal data in form of Web2.0. I guess BEA Project Runner is based on such a concept. Its still under developement and we have to see what the end result will be. But this will allow the normal web-applications to be able to work with Portals applications.

Plus, we might wanna see the feature of allowing the portal to adapt itself according to the user interaction with the portal. Something like Tags etc.

Overall, i believe that Portal is truely the first step towards SOA, with Soap or with REST.

Your comments are appreciated.


Sample Implementation of Mashup Portlet on SUN Portal

Just a few days back i had posted an interesting article Portal Prospective:Mashups . I had talked about how the Mashups are different from Portal and how portals need to adapt to Web 2.0 technologies. Here is one of the sample implemetation of Mashup Portlet I found on Sun portal.

One more OS Portal with Ajax Framework -- Light Portal

There is yet another Open source portal, "Light Portal". Light Portal is under Apache License. Here is the short description

"Light is an Ajax and Java based Open Source Portal framework which can be seamlessly plugged in to any Java Web Application or as an independent Portal application. One of its unique features is that it can be turned on when users need to access their personalized portal and turned off when users want to do regular business processes."

Website Link= Light Portal


Jboss Portal 2.4 Released

Jboss released its Jboss Portal 2.4. It has included features for better WSRP implementation. Here is the link to article JBOSS Portal 2.4GA Released


The Seven Secrets of SOA Success

Here is one of the interesting article on SOA implementation The Seven Secrets of SOA Success


BEA Acquires SOA Repository Flashline

In a trend to capture the SOA market, bigger firms are in spree of buying several SOA domain players. One more such aquisition happened last week. BEA acquired SOA Repository Flashline.

The new acquisition will boost BEA AquaLogic(TM) Service Registry and will provide a complete metadata management solution.

Here is the Link


BEA Releases BEA Weblogic 9.2

Bea has released its version of weblogic 9.2. The central points are :
  • It does not include the Plumtree Portal Server.
  • The Emphasis is on Service oriented architecture
  • Better support for Ajax and WSRP
  • Standards-based portlet federation, based upon the WSRP standard, with support for syndication of portal books and pages, personalized delivery, performance optimization and service lifecycle governance.
  • A new community framework, as part of portal business services that is designed to simplify portal membership, management, and end user production of community portals.
  • Portal lifecycle management capabilities including the new release of BEA Workshop for WebLogic which provides an Eclipse-based development environment for Java, portal, Web, and service-oriented applications. Also, portal propagation is included to help simplify the IT management for moving portals through staging from development to production.

For more information visit Weblogic press release

Oracle's Whitepaper on Portal & SOA

Just a few days back i had blogged about BEA Survey result as how Portal market is going to get a boost by SOA. Here is another whitepaper sponsered by Oracle this time. It explains as how SOA and Portal gel together. It gives an overview of SOA and its benefits and how it can readily be used with Portal. It quotes a Gartner Paper "A Portal May Be Your First Step to Leverage SOA," September 22, 2005 and supports its finding.

One can have a look on this paper at Portals: The Face of
Service-Oriented Architectures


Peoplesoft Designer

Hi, got a chance to work with Peoplesoft CRM. Found it great. I liked the Designer Module, one can sketch the skeleton of the whole process. I am not sure if it uses BPEL at backend?????? I guess not though.


Portal Perspective: mashups

There are new trends coming up as Web 2.0 is becoming more popular. The newer among them is of providing the customized web solutions(composite applications) through combining two or more Lightweight Services. These are seen in implementations of “Mashups”.

The definition of “Mashups” as on Wikipedia is “A mashup is a website or Web 2.0 application that uses content from more than one source to create a completely new service. This is akin to transclusion.”
Content used in mashups is typically sourced from a third party via a public interface or API. Other methods of sourcing content for mashups include Web feeds (e.g. RSS or Atom) and JavaScript.

One can see many examples of using Mashups on Google Map Apis. There are also many websites which maintain a list of mashups and also API’s. Thus these are faster to develop and information can be extracted and displayed in an innovative way.
Sometime back a few friends came to me and ask me if Mashups can provide Page level integration, why do we need Portal? They were exited seeing on some website serveral Windows on the same page using Ajax and other API’s.

The mashup provides lighweight composite applications. Portal also does gives a Presentation Level Integration of applications, but it does much more then just that. There are other features like SSO, Personalization, Authentication, and so on that are part of portal. For implementing Web Serivices Portal uses WSRP its based on SOAP.But on the other hand Portal require some infrastructure to begin with. But Mashups can be built easily.

The Portal Vendor’s have realized some of the important features of Web 2.0 that should be incorporated in Portal too. The Ajax functionality will be part of JSR 268 specification. The ajax can be beneficial in various ways for Portal. I did made Blog entry on that quite some time back Ajax in Portlets. Wikipedia, Blogs are already implemented by some portal vendors.

Now the Portal vendors are working on providing the Mashups functionality. Liferay is a leading OS Portal vendor and its already working on implementation of Mashups. BEA is working on Project “Runner” for mashups. More portal vendors would also doing a similar implementations.


When to use Customization & Personalization in Portals?

I recently came across the question of whether to use the Personalization or customization feature. I realize many people who are new to portal, face similar dilemma. So here is the question “if we have some users (roles) who want to see different content when logged in to the portal? Which technique to use, the Personalization approach or Customization approach?”

The solution can be that we develop a portlet for each role. Lets say there are 3 roles, dealer, retailer, and customer. So we develop a separate portlet for each such role. Now we can “customize” the view of each user by placing appropriate portlet on appropriate pages and showing the user a particular portlet or page on log in.

The other approach is having just one portlet. Now based on the logged in user role, a different JSP file or content rendered. That is we have personalized the data depending on the logged in information.

In my view the former approach of having 3 different portlet is better at most of the times.

One should always try to develop the application seeing the future needs and flexibility to change the application easily. Suppose we do change the Re-direct JSP to another JSP depending on the user role, this will work in this scenario. Tomorrow the Role Name might change or some new roles might be added. The new role may want to have the combination of view what we have for our current roles. We will then require to change the code to fit to changed scenario. This kind of technique is what we use in normal J2EE applications. This technique I guess is not fully exploiting the potential of portal.

Now let us look at the second approach. Have 3 portlets for 3 roles. The administrator who will deploy portlet application to the Portal server will need to create Page Views depending on the Login of each Role. He will just need to add the corresponding Portlet on those pages. If suppose the ROLE name changes or new Role is created, then there is no need to change the code. Just what portlets should be displayed to this role, will be added to the page by administrator.

The central idea is to create as many small independent information blocks as one can in form of portlets. And then combine them together to have final Content to be displayed to the end user.

The personalization features should be used when user himself is given the right to modify it or change it according to his own needs. Like changing of color and changing the number of records to be displayed are classic examples.


Portals getting boost by BPM and SOA market

The portal market will see a new boost as BPM and SOA market picks up. The SOA and BPM are complimentary technologies and the Portal provides presentation integration, security and other features on it. The above are the findings of a survey done by BEA. Here is the link to read more LINK


Business Process Management Systems (BPMS)

One of the newer concepts in business-application development is Business Process Management (BPM). Any task that provide some substantial output for the business are business processes. They can be small processes having just a user interacting or may be bigger and more complex workflow systems where many user are involved in completing one process. The process can be short lived, like user gives a request and system processes the request and process ends there. Or it can be a longer process, may require even months to complete one process. Example if we consider an ordering system as a business process, then the order is taken, it is sent to production section, the produced item is then sent to dispatched section, from where it is dispatched. Thus involving many Users, and days to complete the whole cycle.

Business process management (BPM) addresses how organizations can identify, model, develop, deploy, and manage their business processes, including processes that involve IT systems and human interaction.
The main goals behind BPM are :
1. Automating the processes
2. Increase flexibility in changing the processes as the business needs changes
3. Reducing development costs
4. More effectively providing Separation of Concerns between the Business Analysts and IT department. The business users can model the process and then IT department can provide that functionality in real domain.

Business Process Management Systems provides the technology to implement BPM. Typically a BPMS should provide the following :

Process Modeling
The BPMS provides with process model tool. Its used by Business Analysts to define business process. It’s a GUI, where BA can drag and drop various fragments to represent their business processes.These processes are then given to IT department to develop the code to implement this process.

Process Execution
The process models are typically defined using WS-BPEL* ( Business process execution language). It’s the BPMS engine that has the responsibility of reading these process models and then execute and manage them.
*WS-BPEL is an XML language for defining business process behavior based on Web services.

Process Monitoring
The Business users can monitor various tasks. Like they can have reports, summaries etc. The Process Monitoring provides various GUIs to help achieve it.
BPM suites include process execution engines that import the process models (typically defined using WS-BPEL) and then execute and manage as many instances of the business process as necessary for supporting the organization's operational requirements.
The Open Source BPMS is provided by JBOSS. It has also provided a demo of its BPM System at demo


View on Ajax

Here is the ARTICLE I read about a view on ajax.

The article is quite good but still I have a few concern about it. The article suggest that one should replace the web browsers all together. Well …….Do you really want to do it? Easy to use and interoperability of web browsers have give the fire to the Internet revolution. The focus should not be on replacing the thin and so much interoperable clients by something else as a Swing applications or may be VB Desktop applications. ( Even Applets have the problem of higher download time.) The focus should be as to how to make these browsers as more Rich in Content and Interactivity. I guess Ajax has played an important role in it.

I agree working on Javascripts is always a tough job. But then there are various frameworks which are coming out each day to help make that job easier.

I do agree that one should realize what kind of application they want to develop and will Ajax will really helpful. Take for example Google Calendar. I can on work on it as if I am working on my desktop application that too on a dial up connection. Such of functionality is only possible through technology Ajax. The applications where the interactivity of the user to the page is a lot and the content of the page is also more, in such situations Ajax can be really useful.

Well yes, its true Ajax is not the new concept its just that it has got a new name. XMLHTTPRequest object has been there from quite sometime. But its now that we are realizing how effectively can it be used.



Java Server Faces JSF, is fast replacing Struts Framework in web applications. The JSF is component based, event driven architecture. The various elements of html pages are shown in form of components. Many IDEs are providing drag and drop functionalities for adding the components to the Web pages.

The event, which is triggered by each component, have a listener, which can take the appropriate action. JSF and portlets seems to form a good combination. Sun have already used this technology in their Sun Portal Server. They are providing Ajax support with JSF Portlets. The Sun Studio can develop the JSR168 portlets using JSF. It should be possible that each component of the JSF is able to be rendered independently through Ajax in future.


What is Google Upto?

Google had come with a bang, when it released GMAIL. Since it provided larger storage space with higher user interactivity using AJAX , Gmail became an instant hit. It surely must have made other Email Service Providers a bit nervous. Microsoft is still working on coming up with new Hotmail version, through its Windows Live Mail system. Google has been able to come up with newer technologies regularly, which include GOOGLE MAP API’s, Enterprise API’s among others.

Recently, Google has come up with its new syndication protocol called GData. It is XML based syndicate RSS or ATOM and it provides extra functionalities of Queries, Authentication and Optimistic Concurrency. So what Google is actually aiming to achieve? Well what I guess, Google is trying to bring Collaboration to Web ( or to GOOGLE ;)). Sharing knowledge and forming collaboration in teams has always been a key factor in Enterprise Applications. With Blogs and XWikis this has taken a new dimension. I call it - “Lightweight Collaboration Solutions”. IBM is already coming up with QEDWiki which uses AJAX, ATOM and RSS feeds.

Google has already come up with its implementation of GData in form of Google Calendar Data Api. It provides calendar functionality, which is essential for collaboration. The organization can use these APIs to develop light weight collaboration suites. But yes, this will require sending huge amounts of data to Google. But in that case, Security will be an important concern for the organizations.

We are bound to see exciting development in this area, in not so far future!


AOP Aspect Oriented Programming in Portlets

Aspect-Oriented Programming (AOP) complements OOP by providing another way of thinking about program structure. While OO decomposes applications into a hierarchy of objects, AOP decomposes programs into aspects or concerns. It is usefull when the system has cross cutting concerns, for example in trasaction and security.

Aspect-oriented software development (AOSD, another name for AOP) helps you design applications in which you implement a single concern (requirement) in one artifact only, known as an aspect, even if the concern is crosscutting (affects multiple artifacts). Here is an article on usage of AOP with jsr168 portlets.
Article Link


Can AJAX help Portlets?

I have been posting a lot of stuff on AJAX and portlets. There are a few short comings of portlets technology. A few of them can be answered by AJAX or similar technology in future. I have already posted about how AJAX can help in increasing the user interactivity in portals and it can reduce the amount of content to be transferred on the page. This has already been incorporated by some portal servers such as Sun Portal Serverand Stringbeans.

One of more debated topics of Portlets have been the inter-portlet communication. I have been asked questions like can AJAX be used in inter- portlet communication. Well, I don’t think AJAX can play very important role in IPC as it is the Portal Implementation specific. The common IPC scenario is where there are two portlet windows on the same page, on action from window should change content on the other portlet window. Now, can this be achieved through AJAX ?? It means that in this case the whole page need not be rendered and only the content of those portlets can be rendered. Hmmm ….well possible, may be if you are keeping both portlets listening to the server thru AJAX after every short span of time. But to achieve this I guess a new AJAX support to portals should be incorporated.

One of the other sought after topics for Portlets was can we show the other documents like excel, doc, pdfs etc on a portlet. And the answer to that is no because to show the different documents we need to change the content type of page. I GUESS this can be solved by AJAX Linking and Embedding ALE technique being shown by Zimbra. It says that instead of embedding objects that are backed by installed desktop applications (e.g. a spreadsheet or drawing application), within the ALE world the embedded objects are AJAX components that are embedded into an editable HTML document. This might give us the solution of maintaining some excel work on one portlet and doing some other work on another portlet like seeing some charts or reports etc.

I will appreciate any more feed backs as this is a lesser explored issue.


Live Clipboard – Next step from Ajax

We have seen ajax importance in developing RIAs and faster applications. Where user can play with various drag and drop functionalities, faster response time and flashy displays on the same web page. Google have kind of lead the way with its Gmail and more recently Google Map Ajax apis.

But have you ever thought of communicating between two separate web-pages. Like copying from one website and pasting to another…..Well yeah that’s what Microsoft’s new early draft specifications is all about. Its called Live Clipboard. We see now RSS implementation & support sign on various sites, we might also see a Live Clipboard support by sites in near future.

Microsoft Chief Technical Officer Ray Ozzie gives more information about it.
Link. Also check out the Example of Live Clipboard


Red Hat acquires JBoss for $420m

Its JEMS portfolio currently includes JBoss AS, Hibernate, and the JBoss Portal, jBPM, Rules, Cache, Transactions, Messaging products, as well as a JBoss branded version of the open source Eclipse IDE.

Read more

Exo V2 released portal 1.1

The exoplatform one of the well known OS portal server has released their new version of portal. Here are the features of new product release. They also have a plan of adding more feature full product range. Below are links from where u can find the download link for the portal.

That new version comes with a huge set of new functionnalities

* Enhanced Portal Navigation and pages customization: Drag & Drop functionality of portlets
* Advanced Security: LDAP support and each portal, navigation tree or
page can be configured with a set of permissions allowing members of
group to see them or not.
* Enhanced Portal Navigation and pages customization:
* Collaboration and Information sharing: according to who you
are but also to the role you have in a group you can get the
information that is relevant for your intesrest and work. Version 1.1
comes with and enhanced community concepts which allow a fine
priority selection on the communities.
* Web Content Accessibility : most of the rendering HTML and css
has been rewriten to fulfill the WCAG 1.0 specification and to allow
the product to be used in federal and public organizations.
* Enhanced Monitoring Capabilities:it is now possible to monitor
portlet, page and portal accesses thanks to chart and efficient arrays.
* High performance and scalability

Download link



Jackrabbit 1.0 JCR, JSR 170 released

Apache has announced the release of Jackrabbit 1.0, an implementation of the Java Content Repository (JCR, JSR-170).Read More


Inter Portlet Communication IPC

Inter portlet communication, is not that well defined in JSR 168 specifications. The only way to achieve it is to put the shared data in application scope session of portlets. No specifications were given for a Portlet to communicate to another portlet which is not placed on the same page. Different vendors have implemented the IPC in different ways. Here are some links to the articles which can be very interesting to be read esp. for IPC.

Comparing Various Vendors Implemetation of IPC

Tip Java.net


Jboss-Recurring IPC

IPC Sun Portal

i will be adding more links and sites to his postings as an when more things happens. I appreciate comments to suggest more links.


Oracle Launches Business Intelligence Tools

A few days back Oracle launched its business intelligence tools. Here is the article:


Are we over-emphasizing Ajax Frameworks?

I have been an ardent supporter for Ajax technology. It can be very useful for websites where data loaded at a time is quite huge and we can break it up into smaller groups which can interact with Server independently and asynchronously. One of the prime example for this could be Enterprise Portals.

But now a days we have so many Ajax Frameworks being developed, some of them wants to totally eliminate javascript usage. I don’t know how far these frameworks will really ease the implementation of Ajax. I have implemented Ajax in few of our projects, and thankfully there were not many Frameworks available at the time. If there had been so many framework available, I would have never understood that how easily I can achieve the task I wanted by just using Asynchronous requests through Javascript. The framework adds to the learning curve, and unless some standardization is achieved one should thing twice before using these Frameworks.

Some frameworks have very good functionalities relating to higher user experience or good GUI like Drag and Drop, move around components etc. Using some library functions and Api’s provided by such frameworks can ease the developer task, but it should be seen as a supplement to javascript rather then completely replacing javascripts. Plus I don’t thing Ajax should be seen as tool for developing Flashy websites (this can be seen as added advantage). I guess the soul of Ajax is its high user interactivity with the Server and should be used for the same. For Flashy stuff there are other things like Flash (and ya, macromedia is coming up with its own version of Ajax though, have to wait and watch for its reponse-;)).

The other issue is how well these Frameworks are adapted for new technologies? Can they be used in Enterprise Portals where each portlet window can have same Ajax implementation frameworks and hence clashes of names, actionURL etc could be possible. Plus in portals the response is not send to the portlet at all. Can the framework adapt to such changes?

In my view if someone just wants to use Ajax for faster user interactivity, one should directly use Javascript and follow some good structure instead trying to modify and learn new Ajax frameworks.


Alfresco Released 1.2 version JSR170 level 2 complaint

One of the major player in Open Source Content Management world, Alfresco has released its1.2 version. The new added features added here are

• Administration – LDAP Support, Document Level Permissions exposed in web client, Upgrade Administration, Export/Import Permission support, Guest Access
• Standards Support – JSR 170 Level 2, RSS
• Customization – Web Services Starter-Kit
• Content Contribution – CIFS URL to access web client
• Team Collaboration – Forums/Threaded Discussions on a document or a space
• Advanced Search – Multiple Category and Object Type support. Saved Searches.
• Other – JBoss portal 2.2 and Firefox 1.5 support
To read more about the release go to


The some other major player in Open Source Content Management JSR170 complaint are:

Exo JCR- portal implementation


Sun Portal 7 supports Ajax portal container

The Sun Portal 7 got released in December'05. The enterprise system support Ajax Portal Container and SOA. Its part of FREE Sun Java Enterprise System.

Read more about it at:




WSRP Participation with Portals

As Portlets is coming to its full swing, people around big web-applications are discussing about porting to Portlet technology. I was recently working analysing the efforts required to port an existing web-application to a propritery portal server. Such issues are appearing in greater numbers now. One of the alternative is to rebuilt the whole applications from scratch (reusing some components if possible, which ruled out if the backend is not in Java). But one approach could be to use WSRP support to use the existing applications in portal and add over it what ever new functionality we need as portal application.

As i am not much into WSRP, I am not sure how far this idea is implementable. Secondly, Peoplesoft Portal 8.9 and Oracle Portal supports JSR168 specifications but through WSRP. Is this the right way to do so? Wont it have an affect in efficiency of the portal application? Is it not better to provide the JSR168 support as a part of developement environment (without using WSRP) as is done in IBM,BEA and open sources like eXo, Liferay etc?