Tuesday, October 30, 2012

Oracle 11g Portal: Deploy a Portal Page Filter to achieve a certain look and feel

Oracle Portal 11G

Deploy a Portal Page Filter to achieve a certain look and feel


Our client had rigid requirements on a common look and feel for the portal pages. In order to achieve that, we have developed a servlet filter, which works on the servlet responses. The servlet filter program is packaged into 2 jars:
..Filter.jar containing the filter java, regx code
..Antl.jar containing the required libraries

Where should this page filter jars be deployed?
We have 3 servers in our Oracle Portal Midtier:
(1)Admin Server
(2)WLS_Portal, where Oracle Portal 11g is deployed. This server is installed and configured via Oracle Fusion Middleware 11G installer.
(3)WLS_WSRP, where our portlets are deployed and hosted; serves as a WSRP producer.

The filter should be deployed onto (2)WLS_Portal server.

How could we deploy this filter jars?
In the oc4j (the old Oracle appServer) world, we can simply place the two filter jars under the proper WEB_INF/lib inside Oracle Portal, and update the web.xml (under WEB_INF) to include necessary filter definition, and under want conditions the filter program should work.

In the Oracle Portal 11g (deployed on WLS 10.3.6 server), placing the two jars and web.xml under some WEB_INF folder (under userdomain/users_project/server/tmp/.../WEB_INF) did not work.

Note that Oracle Portal application (the 11g portal) is deployed in WLS_Portal server. Oracle Portal 11G does not have an elegant solution for handling this situation. Oracle Portal Webcenter does.

(1)We first copied the entire Portal server into a backup folder.
(2)We then exploded the Portal.ear and the *.war inside into folder: oracle/portal/portal.ear
(3)We then added the 2 filter jars into the WEB_INF/lib of the expended portal.ear; and updated web.xml under WEB_INF

We then restarted WLS_Portal sever. It did not work, some error upon starting of the WLS_Portal server.

We then release that by re-deploying the Portal app, some configuration that linked the Portal app with the rest of the environment were lost.

We then copied over the four configure files from our WLS_Portal backup. and restarted WLS_Portal. It worked!

Then I thought of another more elegant way of deploying this filter into the Oracle Portal. This will be discussed in a later post.

No comments:

Post a Comment