Skip Headers
Oracle® WebCenter Framework Building a WebCenter Application Step by Step
10g (10.1.3.2.0)

Part Number B31073-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

1 Introduction to the WebCenter Suite Example

This chapter introduces you to the Oracle WebCenter Suite, its features, and an overview of the scenario used in this book.

In this chapter, you will discover answers to these key questions:

After you read this chapter, you'll be ready to start creating your own WebCenter application.

What is Oracle WebCenter Suite?

As key technologies like Wiki, RSS, and blogs change the landscape of the Internet by empowering individuals across the globe, user demand for applications that simplify transactions becomes more pronounced. One way to simplify transactions is to provide everything the user needs to support a given task within the application itself. Consider the example shown in Figure 1-1.

Figure 1-1 Sample Application

Sample content-rich application
Description of "Figure 1-1 Sample Application"

In this example, a user who is new to the company is working with an application that enables him to add dependents to his company insurance policy. Notice that the transaction itself is surrounded by additional context that helps the user, including the following:

Until Oracle WebCenter Suite, building this kind of application was a rather tedious process. To gain access to the beneficiary scenarios, for example, used to involve creating a portlet to gain a view into the JCR 1.0 Java Content Repository (JSR 170)--if the application programming interface (API) required to do so was available. Oracle WebCenter Suite reduces the front-end labor historically required to bring necessary business components to the user by capitalizing on the notion of Service Oriented Architecture (SOA). Thanks to Oracle WebCenter Suite's commitment to SOA, as well as to the JCR 1.0 Java Content Repository (JSR 170) and other industry standards, you get a wide range of plug-and-play products, tools, and services that make it easy to build the applications your users need. Figure 1-2 shows what Oracle WebCenter Suite providesFoot 1 :

Figure 1-2 Oracle WebCenter Suite

Oracle WebCenter Suite
Description of "Figure 1-2 Oracle WebCenter Suite"

Let's examine these building blocks in more detail.

Oracle WebCenter Framework

Oracle WebCenter Framework augments the Java Server Faces (JSF) environment by providing additional integration and run-time customization options. In essence, it integrates capabilities historically included in Oracle Application Server Portal (OracleAS Portal) products directly into the "fabric" of the JSF environment. This eliminates artificial barriers for the user and provides the foundation for developing the kinds of context-rich applications depicted in Figure 1-1.

Building and Consuming Portlets

Portlets help you bring data from the Web, database, and so on, into your application. Using Oracle JDeveloper, you can create your own standards-based portlets to be consumed by any JSR 168 or WSRP-compatible portal. The Oracle Application Server Portal Developer Kit (PDK) has been enhanced to support extended portlet capabilities as defined by WSRP 2.0 within the structure of the Java Portlet Standards APIs. From a WebCenter application, you can consume JSR 168, WSRP 1.0, WSRP 2.0 or Oracle PDK-Java portlets all within the same application, or even within the same page.

Several prebuilt portlets are available for use through a preconfigured Oracle Containers for J2EE (OC4J) that is automatically available to you through JDeveloper. Two such portlets, OmniPortlet and Web Clipping, help empower users to gather their own data, while the Rich Text portlet enables users to publish their own announcements and bulletins. You can make these portlets available to users by dropping them on your page, or you can use them yourself to create the specific portlets your users will need.

  • OmniPortlet: A portlet that enables users to easily publish data from a variety of sources, using a variety of layouts. Users can base an OmniPortlet on almost any kind of data source, such as spreadsheets (character-separated values), XML, Web Services, and even application data from an existing Web page. Once the data has been obtained, they can format it using layouts such as bulleted lists, charts, HTML, and so on.

    As a developer, you might want to use this tool to gather and format the data for your users--for example, to create an employee directory--then place it on your page for user consumption. Once you do so, the portlet becomes available through JDeveloper's Component Palette for others to use in their applications.

  • Web Clipping: An extremely easy-to-use wizard that requires no technical expertise whatsoever. Users simply locate the Web content they want to "clip", then use the wizard to grab it and display it within their application. If the Web content on the original site is updated, then so is the user's associated Web Clipping.

  • Rich Text portlet: A tool that enables users to publish their own announcements and broadcasts. When you place a Rich Text portlet on a page, during run time, authorized users can access all the rich-text editing tools needed to insert, update, and format display text.

Customizable Components

WebCenter Framework provides new JSF components that enable developers to make any of their applications customizable. These new components act as containers into which developers can drop another Faces view component or a portlet. With these capabilities in place, administrators can customize virtually any JSF page by minimizing or maximizing, hiding or showing, or moving any component on the page.

Content Integration

Suppose you have data in a content management system such as Oracle Content DB, OracleAS Portal—or even on your file system—that you want to make available to your application. WebCenter Framework provides you with the JCR adapters you must access that content. Using JDeveloper, you can then build JCR data controls to grab the content and drop it onto your page in a variety of display modes. WebCenter Framework also comes with Oracle Drive, through which you can represent the contents of your OracleAS Portal repository as a tree-like structure, right on your desktop.

Securing Your Application

With the Oracle ADF extensions provided in WebCenter Framework, you can define security for an entire application, a page within the application, or for individual actions provided by customizable components. This manual contains an illustration of how to create a publicly accessed login page that allows users to enter their credentials and thus gain access to various pages or components within a page. Examples are also provided for how to create login/logout links and how to associate privileges with various roles.

In many cases, it is desirable to leverage existing applications that have their own authentication mechanism, such as e-mail. WebCenter Framework provides the means to embed those applications through the use of the External Application wizard. See the Oracle WebCenter Framework Developer's Guide for more information.

Managing Your Application Throughout the Life Cycle

WebCenter Framework reduces the time required to build, deploy, and migrate your applications through the use of several tools as follows:

  • Development framework: Oracle JDeveloper and Oracle ADF provide the tools and framework you must build and update your application. Adding portlets, content, and customization capabilities to your WebCenter application is simply a matter of dragging and dropping the appropriate objects in either a source or WYSIWYG environment. To simplify the test and debug phases, WebCenter Framework includes a deployment profile (WebCenter Application WAR) that packages and migrates your portlet customizations, content, and page customizations to any J2EE container (such as the standalone OC4J provided) so you can test and debug your application before deploying it to a production server.

  • Enterprise deployment: When you're ready to deploy your application to a production environment, Oracle WebCenter Framework's Predeployment Tool packages and migrates your portlet customizations to your production location, changes the pointer to your content repository, and ensures that the application points to your production Metadata Services location. When the Predeployment Tool completes its work, you get a target EAR file that you can then deploy to the final location using Enterprise Manager.

  • Standards-based administration: Browser-based tools enable administrators to deploy, configure, and manage WebCenter applications. In addition, tools built on industry standards-based JMX methods offer administrators granular control and monitoring mechanisms for health status, performance, and popularity. Tools for obtaining historical performance and status reporting over time (within a single Oracle Application Server context) are also provided. WebCenter application metrics are delivered using the familiar Application Server Control monitoring and management interface.

Oracle WebCenter Services

Oracle WebCenter Services offer a variety of content management, search, and communication services, including the following:

  • Oracle Content Database (Oracle Content DB), the default content repository for Oracle WebCenter Services. Oracle Content DB is a full-fledged content management system that enables users to manage content through the Web or from desktop applications. A rich library of ready-to-use Web services is provided to content-enable your enterprise in a service-oriented environment. With Oracle Content DB, you can do the following:

    • Improve the productivity of individuals and teams with secure access to the right content in the context of business processes

    • Reduce risk associated with content, including information loss and legal discovery

    • Facilitate adaptability of business processes

    • Reduce Information Technology (IT) and administrative costs through content consolidation

    Oracle Content DB bridges the gap between limited capability file servers and the specialized, expensive, and complex content management applications that are so widely available.

  • Oracle Secure Enterprise Search is a crawler-based service that can search a multitude of sources, structured and unstructured, in a variety of file formats, indexed or real-time. With Oracle Secure Enterprise Search, you can reduce the time spent finding relevant documents on your company's information repositories.

  • Communication Services, which help you better connect people and facilitate communication. These services include the following:

    • Instant Messaging: Lets users freely exchange ideas through audio and video feeds, file exchange, and a range of other capabilities.

    • Presence Server: Presence provides information about a person's availability to every person or application that subscribes to that person's status. Chats and other real-time services can be initiated from the associated user interface.

    • Discussion forum: An interactive message board for sharing information, questions, and comments.

  • Wiki is server software that enables users to freely edit and create Web page content using a Web browser. This ease of interaction and operation makes Wiki an effective tool for collaborative communication.

Oracle JDeveloper

Oracle JDeveloper is an integrated development environment (IDE) for building service oriented applications using the latest industry standards for Java, XML, Web services, and SQL. Oracle JDeveloper supports the complete software development life cycle, with integrated features for modeling, coding, debugging, testing, profiling, tuning, and deploying applications. Oracle JDeveloper's visual and declarative approach and Oracle ADF work together to simplify application development and to reduce mundane coding tasks. For example, code for many standard user interface widgets, such as buttons, list of values, and navigation bars, are prepackaged for you. All you have to do is select the appropriate widget from the Component Palette and drop it into your application.

As you work through this guide, you will become more familiar with Oracle JDeveloper and the advantages it offers. For more information about Oracle JDeveloper, access one of the many educational aids from the Oracle JDeveloper Start Page (Figure 1-3), accessible from Oracle JDeveloper's Help menu.

Figure 1-3 Oracle JDeveloper Start Page

Oracle JDeveloper Start Page
Description of "Figure 1-3 Oracle JDeveloper Start Page"

What Will I Create in this Example?

The steps in this manual show you how to add portlets, integrate existing content, and add customization to your application, as well as create interactivity. Such interactivity includes portlet-to-portlet communication and ADF Faces component-to-portlet interactivity. You will also learn how to allow administrators to customize pages at runtime.

In this manual, you will take an existing ADF application for tracking customer service requests and add portal capabilities to the application without altering the existing application. This service request application enables customers, technicians, and managers view information about service requests all from the same interface. The three scenarios are:

Customer

The customer logs into the application and can view current announcements, his existing service requests, and details about these requests, as shown in Figure 1-4. He can also view information about the products he has purchased, as well as a list of his current contracts with the company providing the services. He can also submit feedback on existing service requests.

Figure 1-4 Customer View of the Service RequestApplication

Description of Figure 1-4 follows
Description of "Figure 1-4 Customer View of the Service RequestApplication"

Technician

The technician logs into the application and views the service requests assigned to him, as shown in Figure 1-5, and can update existing service requests.

Figure 1-5 Technician View of the Service Request Application

Description of Figure 1-5 follows
Description of "Figure 1-5 Technician View of the Service Request Application"

Manager

The manager logs into the application and, at runtime, can update the announcements that the customer views. He can also modify the page at runtime using content in the content repository. For example, if a new service is now available to customers, the manager can add information about this new service at runtime. The manager can also review the feedback the customer has returned and add his own notes. He can also view site statistics through a dashboard page, which shows the current service request volume, the most active customers, and so on, as well as customize this dashboard page. The manager also has access to general site administration from a single page, where he can change the look and feel by switching skins and customize the login. Figure 1-6 shows the manager's view of the application.

Figure 1-6 Manager View of the Service Request Application

Description of Figure 1-6 follows
Description of "Figure 1-6 Manager View of the Service Request Application"

How Do I Get Started?

Before you begin, download and set up the sample application and supporting files. The sample files associated with this manual are located on the Oracle WebCenter Suite Documentation page on Oracle Technology Network (OTN) at http://www.oracle.com/technology/products/webcenter/documentation.html. Download and extract the file SRDemo_App_Download.ZIP, then follow the instructions in the install.html file. After you have set up the files, you can view the completed demo, as described in the next section, or continue to Chapter 2, "Building Your Portlets" to start building the application.

How Do I Navigate the Completed Demo?

After you install and set up the sample files, you can view the completed, working version of the demo so you can see what you are going to build in the following chapters. This section describes the demo and how to use the demo at runtime.

Running the Demo

To run the demo:

  1. In your browser, go to the following URL:

    http://localhost:8888/SRDemo/faces/app/SRWelcome.jspx
    

    Note:

    The application uses portlets that already have a hostname for its URL or DB connection. You will need to modify the hostname for the application to be fully functional.
  2. Log into the application using the following login information:

    User ID: sking

    Password: welcome

  3. The first page that displays is the welcome page for the Service Request application. The page is visible to the public (unauthenticated) users, and contains a Help and About page. There are two components on the welcome page: a Rich Text portlet and HTML content from a content repository.

    • The Rich Text Portlet provides an easy way for site administrators to provide new announcements, text, and other HTML updates at runtime directly from the running application. Users who are not logged in can only view and refresh the portlet.

    • The images and text for the welcome page is HTML content located in a file-based content repository.

  4. Click the My Acme tab to set up and view some of the other components in the application.

  5. On the My Acme page, click the Schedule On-Site Service sub-tab to access the Web Clipping portlet.

  6. Click Customize. Then, you can follow the steps in Step 11: Adding the Schedule On-Site Services Portlet to select the Web page for the portlet.

  7. Next, you will need to set up the database connection for the OmniPortlets in the demo, so that you can run them. Click the SR Information sub-tab.

  8. Next to the Service Request History portlet, click Customize.

  9. On the Source tab, click Edit Connection, then enter the database connection details. The database connection information should be the same as the information you entered when you installed the sample files.

    Note:

    Once you edit the connection of one OmniPortlet instance in the demo, all OmniPortlet instances should use the same connection information (for example, all the portlets on the My Dashboard page should now work properly). You can always customize each OmniPortlet if you find they do not use the same connection.
  10. Click Finish. You should now be able to use the portlets in the application.

Viewing the Demo as a Customer

There are three different types of users built into the application: customer, technician, and manager. To view the application from a customer's perspective, log in using the following information:

  • User ID: dfaviet

  • Password: welcome

As the customer you can view the status and history of your service requests. Click the MyAcme tab and then select a service request to view more details.

Viewing the Demo as a Technician

To view the application from a customer's perspective, log in using the following information:

  • User ID: ahunold

  • Password: welcome

As the technician, you can also view customer service request status and histories. Click the My Acme tab and select one of the open service requests to view the latest information about that service request. You can modify that service request on the My Service Requests tab.

You also have access to additional components that a customer is not able to see. On the My Acme page, on the Product Information sub-tab, a new component (JSR 168 portlet) lets you view product details about the specific washers, dryers, and so on.

Finally, you have access to the Schedule On-Site Service sub-tab where an external application enables you to view the next available on site service that can be scheduled.

Viewing the Demo as a Manager

To view the application from a customer's perspective, log in using the following information:

  • User ID: sking

  • Password: welcome

As the manager, you see all tabs available within the application. Click the Management tab, then click the Dashboard sub-tab to see information about service requests within the application. You can view the following details:

  • Search for customer contracts. For example, type "df%" and click Search to view the contact for the customer dfaviet.

  • View details of the most active customers. For example, click Urman to view the customer details for Jose Manul Urman.

  • View the service volume over a specified time period.

The manager is also the Site Administrator. Click the Management tab again, then click Site Administration. You can modify the skin of the application by selecting one of the available skins.



Footnote Legend

Footnote 1: Some components shown are not available in the initial release of Oracle WebCenter Suite: Presence/IM, Discussions, and Wiki. This chapter provides a description of components relevant to this release of Oracle WebCenter Framework.