We have a requirement to configure external resource bundle in our Webcenter portal. This is needed as it will be shared between multiple applications and services. Can you please let me know how we can do this in the Webcenter portal app.

The external resource bundle is already implemented?. Are there more applications consuming it?.

Can be modified in Runtime and the changes should be taken without re-deploy?.

With this information I can elaborate a better answer for your requirement.

Based on my experience I created multiple solutions as:

Resource Bundle managed in a DB Table. Applications loads during the start up the labels and maintain them in applicationScope to be accessed. We add a reload strategy for Runtime changes and an ADF UI Application to manage the labels.

Create your own implementation to retrieve the labels from a Resource Bundle from a given path configured as JVM parameter.

I am not sure what is the exact difference between Webcenter portal and Framework portal, as i am new to webcenter. But to elaborate more, we have built Portal using webcenter framework, with JSR portlets which are deployed on the weblogic server as Remote port lets. We consume these portlets in our webcenter pages. We also have deployed some Java applications on the same weblogic server which are exposed as services to other external applications. These services are built using Spring so they have the ability to dynamically load the properties at run time. Now we need some properties to be shared between our portlets and the services which are exposed and we want the dynamic loading of these properties in our portlets as well (As it happens in the Spring app).

For the third question you have asked, yes our requirement is to be able to change these properties at run time and changes should be taken without a re-deploy.

Currently we are trying to put in a Jar file and place the jar file in the shared library configured for both the Portlet application and Services. But with this approach we cannot edit the properties at runtime and we have to build the jar file every time and then restart the application.

We are not very inclined to the DB based approach due to some constraints.

Add a JVM parameter to the managed servers of WC_CustomPortal, WC_Portlets and where your applicaitons are running to know where is the path of the properties file. For exampel -Dtranslation.properties=/opt/translations

Use the Apache Commons Configuration Library who provides an API to read and add a reload strategy to the properties files.

Create your own Helper class to make an easier way to manage the properties and deploy it in a common shared-lib to be used by all the applicaitons.