Over 100 advanced recipes to secure, support, manage, and administer Oracle WebCenter
An enterprise portal is a framework that allows users to interact with different applications in a secure way. There is a single point of entry and the security to the composite applications is transparent for the user.
Each user should be able to create their own view on the portal. A portal is highly customizable, which means that most of the work will be done at runtime. An administrator should be able to create and manage pages, users, roles, and so on. Users can choose whatever content they want to see on their pages so they can personalize the portal to their needs.
In this article, you will learn some basics about the WebCenter Portal application. Later chapters will go into further details on most of the subjects covered in this chapter. It is intended as an introduction to the WebCenter Portal.
Preparing JDeveloper for WebCenter
When you want to build WebCenter portals, JDeveloper is the preferred IDE. JDeveloper has a lot of built-in features that will help us to build rich enterprise applications. It has a lot of wizards that can help in building the complex configuration files.
You will need to install JDeveloper before you can start with this recipe.
JDeveloper is the IDE from Oracle and can be downloaded from the following link: http://www.oracle.com/technetwork/developer-tools/jdev/downloads/index.html. You will need to download JDeveloper 188.8.131.52 Studio Edition and not JDeveloper 11.1.2 because that version is not compatible with WebCenter yet. This edition is the full-blown edition with all the bells and whistles. It has all the libraries for building an ADF application, which is the basis for a WebCenter application.
How to do it…
- Open JDeveloper that was installed.
- Choose Default Role.
- From JDeveloper, open the Help menu and select Check for updates.
- Click Next on the welcome screen.
- Make sure all the Update Centers are selected and press Next.
- In the available Updates, enter WebCenter and select all the found updates.
- Press Next to start the download.
- After the download is finished, you will need to restart JDeveloper.
You can check if the updates have been installed by opening the About window from the Help menu. Select the Extensions tab and scroll down to the WebCenter extensions. You should be able to see them:
How it works…
When you first open JDeveloper, you first need to select a role. The role determines the functionality you have in JDeveloper. When you select the default role, all the functionality will be available.
By installing the WebCenter extensions, you are installing all the necessary jar files containing the libraries for the WebCenter framework.
JDeveloper will have three additional application templates:
- Portlet Producer Application: This template allows you to create a producer based upon the new JSR286 standard.
- WebCenter Portal Application: Template that will create a preconfigured portal with ADF and WebCenter technology.
- WebCenter Spaces Taskflow Customizations: This application is configured for customizing the applications and services taskflows used with the WebCenter Spaces Application. The extensions also include the taskflows and data controls for each of the WebCenter services that we will be integrating in our portal.
Creating a WebCenter portal
In this release of WebCenter, we can easily build enterprise portals by using the WebCenter Portal application template in JDeveloper. This template contains a preconfigured portal that we can modify to our needs. It has basic administration pages and security.
For this recipe, you need the latest version of JDeveloper with the WebCenter extensions installed, which is described in the previous recipe.
How to do it…
- Select New from the File menu.
- Select Application in the General section on the left-hand side.
- Select WebCenter Portal Application from the list on the right.
- Press OK.
The Create WebCenter Portal Application dialog will open. In the dialog, you will need to complete a few steps in order to create the portal application:
- Application Name: Specify the application name, directory, and application package prefix.
- Project Name: Specify the name and directory of the portal project. At this stage, you can also add additional libraries to the project.
- Project Java Settings: Specify the default package, java source, and output directory.
- Project WebCenter settings: With this step, you can request to build a default portal environment. When you disable the Configure the application with standard Portal features checkbox, you will have an empty project with only the reference to the WebCenter libraries, but no default portal will be configured. You can also let JDeveloper create a special test-role, so you can test your application.
- Press the Finish button to create the application.
You can test the portal without needing to develop anything. Just start the integrated WebLogic server, right-click the portal project, and select Run from the context menu.
When you start the WebLogic server for the first time, it can take a few minutes. This is because JDeveloper will create the WebLogic domain for the integrated WebLogic server. Because we have installed the WebCenter extensions, JDeveloper will also extend the domain with the WebCenter libraries.
How it works…
When the portal has been started, you will see a single page, which is the Home page that contains a login form at the top right corner:
When you log in with the default WebLogic user, you should have complete administration rights.
The default user of the integrated WebLogic server is weblogic with password weblogic1. When logged in, you should see an Administration link. This links to the Administration Console where you can manage the resources of your portal like pages, resource catalogs, navigations, and so on.
In the Administration Console you have five tabs:
- Resources: In this tab, you manage all the resources of your portal. The resources are divided into three parts:
- Structure: In the structure, you manage the resources about the structure of your portal, such as pages, templates, navigations, and resource catalogs.
- Look and Layout: In the look and layout part, you manage things like skins, styles, templates for the content presenter, and mashup styles.
- Mashups: Mashups are taskflows created during runtime. You can also manage data controls in the mashup section.
- Services: In the services tab, you can manage the services that are configured for your portal.
- Security: In the security tab, you can add users or roles and define their access to the portal application.
- Configuration: In this tab, you can configure default settings for the portal like the default page template, default navigation, default resource catalog, and default skin.
- Propagation: This tab is only visible when you create a specific URL connection. From this tab, you can propagate changes from your staging environment to your production environment.
The WebCenter Portal application will create a preconfigured portal for us. It has a basic structure and page navigation to build complex portals.
JDeveloper has created a lot of files for us.
Here is an overview of the most important files created for us by JDeveloper:
The default portal has two page templates. They can be found in the Web Content/oracle/Webcenter/portalapp/pagetemplates folder:
- pageTemplate_globe.jspx: This is the default template used for a page
- pageTemplate_swooshy.jspx: This is the same template as the globe template, but with another header image
You can of course create your own templates.
JDeveloper will create four pages for us. These can be found in the Web Content/oracle/Webcenter/portalapp/pages folder:
- error.jspx: This page looks like the login page and is designed to show error messages upon login.
- home.jspx: This is an empty page that uses the globe template.
- login.jspx: This is the login page. It is also based upon the globe template.
By default, JDeveloper will create a default resource catalog. This can be found in the Web Content/oracle/Webcenter/portalapp/catalogs folder.
In this folder, you will find the default-catalog.xml file which represents the resource catalog. When you open this file, you will notice that JDeveloper has a design view for this file. This way it is easier to manage and edit the catalog without knowing the underlying XML.
Another file in the catalogs folder is the catalog-registry.xml. This is the set of components that the user can use when creating a resource catalog at runtime.
By using navigations, you can allow users to find content on different pages, taskflow, or even external pages.
By defining different navigation, you allow users to have a personalized navigation that fits their needs.
By default, you will find one navigation model in the Web content/oracle/Webcenter/portalapp/navigations folder: default-navigation-model.xml. It contains the page hierarchy and a link to the administration page. This model is not used in the template, but it is there as an example. You can of course use this model and modify it, or you can create your own models.
You will also find the navigation-registry.xml. This file contains the items that can be used to create a navigation model at runtime.
With the page hierarchy, you can create parent-child relationships between pages. It allows you to create multi-level navigation of existing pages. Within the page hierarchy, you can set the security of each node. You are able to define if a child node inherits the security from its parent or it has its own security.
By default, JDeveloper will create the pages.xml page hierarchy in the Web Content/oracle/Webcenter/portalapp/pagehierarchy folder. This hierarchy has only one node, being the Home page.