Your message has been sent.
This article has been saved to your account.
Go to my account
This article has been emailed to your Kindle.
Send this article
Complete the form below to send this article, Integrating Discussions, Wiki, and Blog with Oracle WebCenter, to a friend (or to yourself). We will never share your details (or your friend's) with anyone. For more information, read our Privacy Policy.
Oracle WebCenter Suite is the industry's most comprehensive enterprise portal platform designed for business users, unified with business applications, Enterprise 2.0 services, and social communities. It incorporates Web 2.0 content, collaboration, and communication services. However, without proper guidance on developing performance-critical enterprise applications, it is easy to make the wrong design and technology decisions.
In this article by Ashok Aggarwal, author of Web 2.0 Solutions with Oracle WebCenter 11g, we will do the following:
- Walk you through creating a custom WebCenter application that leverages the Discussions Service
- Present a handful of task flows
- Show you where to find key pieces of information required to configure your Discussions Service connection in your custom application
- Learn how to integrate a custom WebCenter application with the Wiki and Blog Services, specifically, using an IFrame and using the Web Clipping Portlet
(For more resources on Oracle, see here.)
The Oracle WebCenter Discussions Service provides a forum tool that can be used within the organization to share information and foster collaboration. Forums are one of the most popular information exchange mechanisms used on the Internet. We are all familiar with the power of forums to create user communities and disseminate information.
If you have used the Oracle Technology Network Forums, the WebCenter Discussions Service will look very familiar to you—both use the same powerful forum software.

(Move the mouse over the image to enlarge.)
Some of the common challenges we have found with implementing forums for the enterprise have been related to the following:
- Integration into the existing technology stack
- User and group administration using existing LDAP
- Support
- Cultural adoption
With Discussions, Oracle has successfully minimized the technical level of effort required during implementation by addressing the main technical challenges (numbers 1 and 2 above). And with formal support offered, as well as the general idea that forums integration using Discussions will not be unique for each implementation, organizations can feel more comfortable about viable long-term support. Given how well Discussions addresses the first three challenges, we now view the cultural adoption as the largest challenge, which can be overcome with effective training and strategic management decisions. Forums in general have become increasingly popular within organizations and Oracle has implemented an intuitive end-user approach.
The Discussions Server is installed as part of Oracle WebCenter installation. It can be accessed directly at the default location http://hostname:8890/owc_discussions. While Discussions in itself is a useful forum tool, the real power comes from the Discussions Service that enables us to embed, view, and interact with the forums as part of custom WebCenter applications where forums can be used as a means to obtain and share information by the enterprise from within the current application being used.
A Wiki is a website that allows a group of editors to easily create web pages in a collaborative manner using simple markup language. The markup language helps to organize and format the web pages. Many corporations use Wikis to create documentation internally. Each employee of the company has easy access to edit the information within the wiki, and can therefore incorporate new information for the entire community.
A Blog is a website that allows an individual author to post a stream of content for a community to view. The word "Blog" is derived from the contraction of "Web Log". Each item in the Blog stream can be viewed as an article. An article can be something as simple as a video or image posting, or something as formal as a newspaper article. It is up to the author to decide what content to post. Typically, authors allow members of a community to engage in dialog related to the blog article by allowing them to post comments on the article.
Both the Wiki Service and the Blog Service depend on the WebCenter Wiki and Blog Server. Both services use a single connection to the single backend server.
Discussions configuration
Our application is built with JDeveloper 11g and connects to the Oracle WebCenter Discussions Server. Ensure that the Discussions Server is running by connecting to the Discussions Server URL (http://hostname:8890/owc_discussions). It is a good idea to populate the Discussions Server with some example users, categories, and forums. The Forums Admin Console is used to create new users and forums. The admin console can be accessed at http://hostname:8890/owc_discussions/admin.
The default admin username is weblogic and the password is weblogic. This is irrespective of any username/password specified at installation time.
You can configure a wide variety of settings in the Admin Console, including but not limited to the following:
- Content Structure: Categories, Subcategories, Forums
- Users and Groups
- Permissions
- Filters and Interceptors
- Moderation
- User Interface (Colors and themes)
- Reports and Metrics
- System Settings (Cache, e-mail, locale, and so on)
- Plugins
The following is a screenshot of the admin console home page:

We will not focus on configuring all aspects of the forum, but instead the main pieces required to get started and integrated into WebCenter. Specifically, we will focus on users/groups, and the overall forum content structure.
Content structure
The general structure for Discussions is as follows:
- Categories: logical grouping of discussions content
- Subcategories: optional subgrouping(s)
- Forums: Lowest-level grouping where end users can create discussion threads
- Threads: Entries made by end users, which contain the original entry as well as replies
- Forums: Lowest-level grouping where end users can create discussion threads
- Subcategories: optional subgrouping(s)
Within the Forums Admin Console, you can define a structure that makes sense for your organization. The same principles that apply to other forum software will apply to Discussions content structure.
For the purpose of this demo, we have created a Marketing category and a Marketing Ideas forum.

The following is an image of that Category Summary that reflects the new Marketing Ideas forum that was just created:

User and group structure
We have worked on this Discussions Service as an independent service, and hence created our users and groups manually. In an enterprise solution, you will likely hook this into your LDAP (like Oracle Internet Directory) using Enterprise Manager. Following is a screenshots of the users we have configured within the Discussions administration:

As shown previously, we have added two users— amit and jimmy—with the appropriate privileges to post to the Marketing Ideas forum.
Integrating Discussions with WebCenter
During the remainder of this article, we will create a custom WebCenter application, which will integrate with the Discussions Server and in which we will expose a view of the forum that allows you to interact with the forum using task flows.
Oracle exposes multiple task flows for the Discussions service. We have listed all the out-of-box task flows in the following table and bolded the ones we will drop into our WebCenter application:
| Task Flow | Description |
| Discussions Forums | This task flow shows all the topics associated with a specified forum. Users can create, read, update, and delete topics based on their privileges. |
| Discussions - Popular Topics | Shows the popular topics under a given category ID or forum ID. |
| Discussions - Recent Topics | Shows all the recent topics under a given category ID or forum ID. |
| Discussions - Watched Forums | Allows users to see all their watched forums under a given category ID. |
| Discussions - Watched Topics | Allows users to see all their watched topics under a given category ID or forum ID. |
| Discussions - Sidebar View | This shows a combined view of the Popular Topics, Recent Topics, Watched Topics, and Watched Forums task flows. |
The main steps we will complete are as follows:
- Ensure the Discussions Server is running
- Create a WebCenter application
- Create a connection to the Discussions Server
- Create a JSF page
- Select appropriate Discussions Service Task Flow and embed it in the page
- Deploy, run, and test the application
Ensuring the Discussions Server is running
Before we start developing the application, ensure that the WebCenter Discussions Server is running. If the Discussions Server is not running then start the WLS_Services managed server. Using a browser, open the URL for Discussions (for example, http://hostname:8890/owc_discussions).
Log in with the newly created users and post some sample articles.

Creating a new WebCenter application
Using JDeveloper, create a new application, selecting the WebCenter application template.

Creating a JSF page
Next, we will create a JSF page to host the view for the Discussions Forum. In the Application Navigator, highlight the ViewController project, right-click on it, and from the context menu select New. In the New Gallery, select JSF Page to create a new JSF page.

In the Create JSF Page dialog, select a name for the page and create the page.

Creating a connection to the Discussion Forum
In order to use the Discussions Service in our application, we need to create a Discussions Forum connection to the Discussions Server. This connection will be used by the application to connect to the backend Discussions Server. Note that it is possible to modify the connection after the application is deployed to the WebLogic server by using the Enterprise Manager Fusion Middleware Control.
To set up the discussions connection, right-click on the Connections node in Application Resources pane and select New Connection | Discussions Forum.

Select a unique name for the connection such as MyDiscussions. Ensure that the Make this the connection default checkbox is ticked. Next, we have to set the property values for the forum.url and admin.user. The value of forum.url should be the URL of the Discussions server. The default admin user is weblogic. Click on Test Connection to ensure that the connection is set up properly. Click Finish to complete this step.

Click on the Resource Palette and open My Catalogs. You should now see the WebCenter Services Catalog. Expand the catalog to view the various task flows available.

In the task flows shown, you see the various discussions-related task flows such as the Discussion Forums, Discussions – Popular Topics, Discussions - Recent Topics, and so on. We will use these task flows in our application to create a view of the Discussion Forum.

(For more resources on Oracle, see here.)
Embedding a Discussions task flow in the JSF page
From the Resource Palette, drag the Discussions Forums task flow and drop it on to the JSF page. When prompted, select Region as the way to create the task flow.

In the Task Flow Binding dialog, enter the values for the categoryId and forumId. You can find the IDs using the Jive Forums Admin Console.

| Parameters | Description |
| categoryId | The category ID of an existing category in your WebCenter Discussions instance to which the view should be scoped. |
| forumId | The identifier for an existing forum within the specified category. You should make sure that the specific forum exists. |
| showRecursiveForums | Determines if only the forums in the specified category will be shown or all the subcategories as well. If set to false (the default value) then only the forums under the given category will be shown, otherwise all the forums under the category and the subcategories will be shown. |
| isCategoryView | If this is set to true then the task flow will list the forums grouped under the category. When it is set to false (the default), the topics associated with the forum will be shown. |
See the following screenshot to locate the categoryId:

See the following image to locate the forumId:

If prompted to add a library, click Add Library.

Next, we embed the Discussions – Sidebar View task flow to the page using the same procedure as for Discussions Forums.

Deploying, running, and testing
Now you can run the page by right clicking on main.jspx file in the Application Navigator and choosing Run from the context menu. The application will be deployed to the Integrated WebLogic Server and the default browser will be launched with the appropriate URL.

Integrating Wiki and Blog with WebCenter
There are three primary methods of integrating the Oracle WebCenter Wiki and Blog Server into custom WebCenter applications. They are as follows:
- Using an IFrame, which you include in a page in your custom WebCenter application.
- Using any portlet capable of consuming a URL such as the Web Clipping portlet.
- Using the Web Services provided, which requires a custom-built user interface. We will not cover this method in detail.
For details on how to use the Web Services interface to the Wiki and Blog Server, refer to the Oracle WebCenter Developer's guide.
Prerequisites
Before we start developing the custom WebCenter application to integrate with the Wiki and Blog Server, we should ensure that the WebCenter Wiki and Blog Server is running. If the Wiki and Blog Server is not running then start the WLS_Services managed server. Using a browser, open the URL for Wiki main page (for example, http://hostname:8890/owc_wiki).

Integrating Wiki and Blog using an IFrame
We will see how to integrate it as follows:
Creating a new WebCenter Application
Using JDeveloper, create a new application selecting the WebCenter Application template.

The defaults should be fine for this application, so click Finish to continue.
Creating a JSF page
Next, we will create a JSF page to host the view for the Wiki and Blog Server. In the Application Navigator, select the ViewController project, right-click on it, and from the context menu, select New to launch the New Gallery.

In the New Gallery, select JSF Page to create a new JSF page.

In the Create JSF Page dialog, select a name for the page and create the page.

Creating an IFrame to include the Wiki and Blog Server page
In order to integrate the Wiki and Blog Server pages into your custom WebCenter application, drag the Inline Frame component from the Component Palette onto the JSF page created.

Next modify Source property of the IFrame to point to the Wiki and Blog Server page that you want to embed in the application. The format of the URL is http://hostname:port/owc_wiki/page/show.jz?page=domain:wikiPageName. Here we have used the StartPage of the domain webcentech.

We are now ready to view the page. Right-click on the main.jspx file in the Application Navigator and click Run from the context menu. The Web Browser is launched and shows the login page for the Wiki and Blog Server. Use any valid username and password to log in to the Wiki and Blog Server.

Integrating Wiki and Blog using the Web Clipping Portlet
In the following sections, we will demonstrate how to add the Wiki and Blog Server to a custom WebCenter application using the Web Clipping Portlet. Oracle WebCenter Framework includes a Web Clipping Portlet that we can register with our custom WebCenter application. On running the application in the browser we can consume the Wiki and Blog Server URL using the Web Clipping Studio.
Adding a new JSF page to the application
Add a new JSF page to the application using the procedure described previously.

Registering the Web Clipping Portlet
From Application Resources, select Connections | New Connection | Oracle PDKJava Producer.

Next specify the connection details. The default URL for the Web Clipping Portlet is http://hostname:port/portalTools/webClipping/providers/webClipping. The defaults for the other configuration parameters are acceptable, so click Finish to complete the registration.

Once the Web Clipping Portlet is registered, you can see its entry under Connections.

Adding the Web Clipping Portlet to the JSF page
Drag the Web Clipping Portlet from Connections to the portlet.jspx page. This will add the portlet to the page.

Running the portlet page
Right-click on portlet.jspx page in Application Navigator and from the context menu select Run to run the page. The browser will be launched showing the Web Clipping Studio. Next, we need to customize the Web Clipping Studio and input the Wiki and Blog Server URL. Click on the dropdown at the top-right corner of the page to open the Web Clipping Portlet menu.

From the menu, select Customize. This will open the form to enter the URL location.

Enter the URL for the Wiki in the URL Location field. After entering the URL, click Start to view the Wiki and Blog page as seen in the following screenshot:

Enter valid user credentials to log in to the Wiki Server.

The Wiki pages are shown within the Web Clipping Studio.

Finally, you must select the areas you would like the Web Clipping Portlet to clip, and then save your settings.
This completes our demonstration of how to integrate Oracle WebCenter Wiki and Blog Server with custom WebCenter application using an iFrame and using a Web Clipping Portlet.
Summary
In this article, we have started on the path of integrating WebCenter services into our custom WebCenter application. We have demonstrated how the useful Discussion Forums Service can be used to create a view of the forum in our application.
We demonstrated simple ways to incorporate the Wiki and Blog Services into your custom WebCenter applications. Utilizing these services within your organization can lead to dramatically improved communications and productivity. Individuals can even benefit from leveraging these services. For example, a user can use a Wiki as a personal notepad, and a Blog as a personal diary.
Further resources on this subject:
- Oracle APEX 4.0 Cookbook [Book]
- Oracle Application Express 3.2 - The Essentials and More [Book]
- Oracle WebCenter 11g: Portlets [Article]
- An overview of Oracle Hyperion Interactive Reporting [Article]
About the Author :
Ashok Aggarwal
Ashok Aggarwal has been delivering web-based collaboration, document management, content management, and workflow solutions using Oracle's products before they were named Enterprise 2.0. As Oracle's offerings have matured and the market has grown, so has Ashok's involvement in the Oracle Fusion Middleware technology stack, leading to early adoption of Oracle WebCenter Suite 10g and 11g.
Since 2002, Ashok has delivered robust solutions by leading a highly talented implementation organization, M&S Consulting. Prior to co-founding M&S, Ashok focused on delivery of enterprise applications and integration solutions at Accenture in a variety of industry verticals.
Ashok has led innovative business transformation initiatives leveraging SOA, BPM, BI, Identity Management, and Enterprise 2.0 technologies as he works to solve today's most challenging business problems. He is a regular instructor and speaker at private and public events. Along with white papers and trade journal publications on Fusion Middleware, Ashok is co-authoring an Oracle SOA book and sponsoring technology and process publications for others on his team at M&S Consulting.
Ashok holds a B.S. in Biomedical Engineering and a Minor in Computer Science from The Johns Hopkins University.



Post new comment