This appendix describes how portlet data is managed by databases, and contains the following sections:
When a portlet’s data is loaded into the database, the portlet XML is parsed and a number of tables are populated with information about the portlet, including PF_PORTLET_DEFINITION
, PF_MARKUP_DEFINITION
, PF_PORTLET_INSTANCE
, PF_PORTLET_PREFERENCE
, L10N_RESOURCE
, and L10N_INTERSECTION
.
PF_PORTLET_DEFINITION
is the master record for the portlet and contains columns for properties that are defined for the portlet, such as the definition label, the forkable setting, edit URI, help URI, and so on. The definition label and web application name are the unique identifying records for the portlet. Portlet definitions refer to the rest of the actual XML for the portlet that is stored in PF_MARKUP_DEF
.
In the Development phase, you use Workshop for WebLogic to create portlets and place them onto a portal. In the Staging phase, you use the Administration Portal to add portlets to portal desktops. Each time you add a portlet to a desktop, you create an instance of that portlet. Portlet instances allow for multiple variations of the same portlet definition.
The following four types of portlet instances are recorded in the database for storing portlet properties:
PF_PORTET_INSTANCE contains properties for the portlet for attributes such as DEFAULT_MINIMIZED, TITLE_BAR_ORIENTATION, and PORTLET_LABEL.
If a portlet has portlet preferences defined, those are stored in the PF_PORTLET_PREFERENCE table.
Finally, portlet titles can be internationalized. Those names are stored in the L10N_ RESOURCE table which is linked using L10N_INTERSECTION to PF_PORTLET_DEFINITION.
If a portlet is removed from a newly deployed portal application and it has already been defined in the production database, it is marked as IS_PORTLET_FILE_DELETED in the PF_PORTLET_DEFINITION table. It displays as grayed out in the WebLogic Administration Portal, and user requests for the portlet, if it is still contained in a desktop instance, return a message indicating that the portlet is unavailable.
During the development phase, the .portlet
files for portal web projects are stored as XML in the portal web application. As a developer creates new .portlet
files, a file polling thread monitors changes and loads the development database with the .portlet
information. When a portlet’s data is loaded into the database, the portlet XML is parsed and a number of tables are populated with information about the portlet. Changes that you make using the WebLogic Portal Administration Portal are directly reflected in the database.
This section contains the following sections:
Separate database tables store information about portlet resources, including the following:
Tip: | The tool you use to manipulate these resources varies according to the resource, and the phase of development you are in; for example, you can change portlet preferences using either Workshop for WebLogic or the WebLogic Portal Administration Portal, but you must use the Administration Portal to create portlet categories. |
When a portlet is loaded into the database, the portlet XML is parsed and a number of tables are populated with information about the portlet, including PF_PORTLET_DEFINITION
, PF_MARKUP_DEFINITION
, PF_PORTLET_INSTANCE
, PF_PORTLET_PREFERENCE
, L10N_RESOURCE
, and L10N_INTERSECTION
.
PF_PORTLET_DEFINITION
is the master record for the portlet and contains rows for properties that are defined for the portlet, such as the definition label, the forkable setting, edit URI, help URI, and so on. The definition label and web application name are the unique identifying records for the portlet. Portlet definitions refer to the rest of the actual XML for the portlet that is stored in PF_MARKUP_DEF
.
PF_MARKUP_DEF
contains stored tokenized XML for the .portlet
file. This means that the .portlet
XML is parsed into the database and properties are replaced with tokens. For example, the following code fragment shows a tokenized portlet:
<netuix:portlet $(definitionLabel) $(title) $(renderCacheable) $(cacheExpires)>
These tokens are replaced by values from the master definition table in PF_PORTLET_DEFINITION
, or by a customized instance of the portlet stored in PF_PORTLET_INSTANCE
.
The following four types of portlet instances are recorded in the database for storing portlet properties:
PF_PORTET_INSTANCE contains properties for the portlet for attributes such as DEFAULT_MINIMIZED, TITLE_BAR_ORIENTATION, and PORTLET_LABEL.
If a portlet has portlet preferences defined, those are stored in the PF_PORTLET_PREFERENCE table.
Finally, portlet titles can be internationalized. Those names are stored in the L10N_ RESOURCE table which is linked using L10N_INTERSECTION and PF_PORTLET_DEFINITION.
If a portlet is removed from a deployed portal project, and it has already been defined in the production database, the portlet is marked as IS_PORTLET_FILE_DELETED in the PF_PORTLET_DEFINITION table. The portlet displays as grayed out in the Administration Portal, and user requests for the portlet (if it is still contained in a desktop instance) return a message indicating that the portlet is unavailable.
For detailed information about the content of WebLogic Portal database tables, refer to the Database Administration Guide.