Due to the JCP (Java Community Process) specifications, mainly JSR 286, JSF, and the 329 Portlet Bridge, a portlet can be moved to different portals and application servers.
Each portal has its own extensions in order to deliver better features and greater performance.
In this chapter, we will look at the process through which portlets can be migrated, using simple examples.
Note
Remember, in order for an enterprise application to be highly portable it is important to use Java APIs defined by the Java specifications. Only when you are sure that your application will never be migrated should you decide to use the extensions.