Skip Headers
Oracle® Collaboration Suite Deployment Guide
10g Release 1 (10.1.1)

Part Number B14479-02
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Master Index
Master Index
Go to Feedback page
Contact Us

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

13 Deploying Oracle Workspaces

This chapter contains the following topics:

Understanding the Oracle Workspaces Architecture and Functionality

This section provides an overview of Oracle Workspaces and explains the application's architecture and functionality.

Overview

Oracle Workspaces is a collaborative application that captures information from other Oracle Collaboration Suite applications including Oracle Calendar, Oracle Content Services, Oracle Discusssions, Oracle Mail, and Oracle Real-Time Collaboration and makes this information persistently available to members of a project team within the context of the project. For example, a project development team can have its own project workspace from which its members share documents, start discussion topics on specific development problems, schedule team meetings, and send each other messages. All project collaboration information is captured and made persistently available to all team members who access the workspace.

Oracle Workspaces Architecture

Oracle Workspaces is built upon other Oracle Collaboration Suite applications including Oracle Calendar, Oracle Content Services, Oracle Discusssions, Oracle Mail, and Oracle Real-Time Collaboration. The following figure illustrates the Oracle Discusssions architecture and functionality:

Figure 13-1 Oracle Workspaces Architecture and Functionality

Oracle Workspaces Architecture and Functionality
Description of "Figure 13-1 Oracle Workspaces Architecture and Functionality"

Applications Tier

The Applications tier contains the following components:

  • Web Cache: Web client requests are process through Web Cache and then forwarded to the Oracle HTTP Server.

  • Oracle HTTP Server: First it sends an HTTP or HTTPS requests Oracle Internet Directory to perform single sign-on authentication, and then sends an HTTP or HTTPS request to the OC4J container.

  • OC4J Container: Oracle Workspaces is deployed as a J2EE application in an OC4J container. The application comprises the following:

    • Workspaces Web Application Logic: The Workspaces Web Application Logic contains the Web application which enables users to interact with Oracle Workspaces. The Web application enables users to create and manage workspaces as well as workspace content such as files, meetings, tasks, discussions, and web conferences. It also provides access to additional workspace features such as views, links, and notifications. The Workspaces Web Application is built on the Oracle Workspaces Java SDK APIs.

    • Oracle Workspaces Server: The Oracle Workspaces Server contains the following:

      • Workspaces Services: The workspaces services are discussed in the following table.

        Table 13-1 Oracle Workspaces Features

        Oracle Workspaces Feature Definition

        Workspaces Management

        Enables the creation and deletion of workspaces as well as the editing of the metadata that describes a workspace.

        Subscriptions

        Allow users to receive e-mail that is sent to the workspace inbox service in a push-style fashion.

        Views

        Allow users to group disparate items within a workspace into logical, named containers for convenient access.

        Administration

        Enables users with sufficient privilege to administer workspaces and application-level settings. These include workspace creation policies and defaults, recovery of damaged workspaces, application role assignment, template management, and service status management.

        Notifications

        Each workspace settings allow workspace administrators to set up automatic e-mail notifications when members are added or removed from a workspace. In addition, many common operations within a workspace support convenient single-click manual notification of members.

        Templates

        A template defines the skeletal structure of a workspace, including the content in its associated services. A workspace with a specified set of properties and initial service content can be created in a single operation using a template. In addition, an existing workspace can be used to define a template.

        Policies

        Policies at the application level govern which users can create workspaces, whether notification features are enabled, the format and content of notification e-mail messages, and the default template to use in workspace creation.

        Relationships

        Most service content in a workspace, including files, folders, meetings, tasks, discussion forums, discussion topics, and discussion messages, can be related to other content. A relationship is a logical link between the two items. Such links can have descriptions and can be viewed with the properties of an item. Relationships provide a powerful way to realize semantic connections between items.

        Auditing

        Whenever a workspace or a content item within a workspace is modified, the user performing the modification and the time of modification are stored. These properties are presented in the user interface. In addition, login and logout times of users are stored, which enables workspaces to determine whether any new activity has taken place. An icon is presented in the user interface to indicate new activity.

        Search

        Users may search for content both within a workspace or across all workspaces to which they have access. The search can be for a specified content type or for all supported content types. Users may also search for workspaces based on their names and descriptions.

        Membership Management and Authorization

        Members may be added to or removed from workspaces; they are given the role of reader, writer, or administrator in each workspace to which they belong. The workspace role of a member determines which workspace actions are permitted.


      • Oracle Collaboration Suite Resource Adapters: Each resource, or service, is presented through the workspaces user interface in addition to its own native interface. The adapters present the disparate service content within a single logical entity, the workspace. Each adapter has an associated Java API which can be used to programmatically manipulate service content within a workspace. The Java APIs for different services follow the same design guidelines and share the same class hierarchy.

      • Metadata Management: In addition to exposing service content, the workspaces user interface enables users to manipulate workspaces and workspace metadata. This is built upon a Java API for workspace metadata management, which together with the set of resource adapters APIs, comprises a single unified Java API for programmatically interacting with workspaces and workspace content.

      • Mail Java SDK: The Mail Java SDK is used by Oracle Discussions, which in turn is a dependency of Oracle Workspaces. This enables discussion forums within Oracle Workspaces to be viewed as IMAP shared folders from standard email clients.

      • Discussions Java SDK: The Discussions Java SDK is used by Oracle Workspaces to interface with the Discussions product and provide workspace-centric forums and inbox capabilities.

      • Calendar SDK: The Calendar SDK is used by Oracle Workspaces to interface with the Calendar product and provide workspace-centric meetings, tasks, and web conferences. Note that Calendar SDK internally depends on the RTC Proxy Java API to provide web conferencing features.

      • Content Services Web Services Proxy Java API: The Content Services Web Services Proxy Java API is used by Oracle Workspaces to interface with the Content Services product and provide workspace-centric file and folder management.

      • Real-Time Collaboration Proxy JAVA API: The Real-Time Collaboration Proxy Java API is used by Oracle Workspaces to provide presence information for workspace members. It is also used indirectly by Workspaces through the Calendar SDK, which depends on the Real-Time Collaboration Proxy Java API.

Oracle Collaboration Suite Applications

Oracle Workspaces uses the earlier referenced APIs to capture information from other Oracle Collaboration Suite applications including Oracle Calendar, Oracle Content Services, Oracle Discusssions, Oracle Mail, and Oracle Real-Time Collaboration. Once this information is captured from these applications, Oracle Workspaces makes it persistently available to members of a project team within the context of the project.

Infrastructure Tier

The Infrastructure tier contains the following components:

Oracle Internet Directory

Oracle Workspaces authorization information is stored in the Oracle Internet Directory. The Oracle Workspaces Web Application is designed so that permissions are checked through on Oracle Internet Directory lookup before performing any write operation, such as creating and managing workspaces.

Oracle Calendar Repository

The Oracle Calendar repository contains Oracle Calendar data. Oracle Workspaces takes calendar data and makes this information persistently available to members of a project team within the context of the project.

Oracle Content Services Repository

The Oracle Content Services repository contains Oracle Content Services data. Oracle Workspaces takes content from Oracle Content Services and makes this information persistently available to members of a project team within the context of the project.

Oracle Discussions Repository

The Oracle Discusssions repository contains Oracle Discusssions data. Oracle Workspaces takes content from Oracle Discusssions and makes this information persistently available to members of a project team within the context of the project.

Oracle Mail Repository

The Oracle Mail repository contains Oracle Mail data. Oracle Workspaces takes e-mail messages and makes them persistently available to members of a project team within the context of the project.

Oracle Real-Time Collaboration Repository

The Oracle Real-Time Collaboration repository contains Oracle Real-Time Collaboration data. Oracle Workspaces takes content from Oracle Real-Time Collaboration and makes this information persistently available to members of a project team within the context of the project.

Oracle Workspaces Functionality

Oracle Workspaces is built upon other Oracle Collaboration Suite applications including Oracle Calendar, Oracle Content Services, Oracle Discusssions, Oracle Mail, and Oracle Real-Time Collaboration. If some of these applications are not deployed with Oracle Workspaces, then it still functions properly but the content type supported by those applications is not available through Oracle Workspaces.

User Verification and Authentication

Web browser clients send an HTTP request to the Web cache which forwards the request to Oracle HTTP Server. Oracle HTTP Server performs single sign-on authentication against Oracle Internet Directory and then forwards the request to the OC4J container that contains the Oracle Workspaces Web application logic and server.

Figure 13-2 Oracle Workspaces User Verification and Authentication

Oracle Workspaces User Verification and Authentication
Description of "Figure 13-2 Oracle Workspaces User Verification and Authentication"

Membership Management and Authorization

The membership management and authorization service connects to Oracle Internet Directory using JNDI. It then provisions the Oracle Workspaces repository with members and membership roles using the Directory Integrated Provisioning.

Figure 13-3 Oracle Workspaces Membership Management and Authorization

Membership Management and Authorization
Description of "Figure 13-3 Oracle Workspaces Membership Management and Authorization"

Interaction with Other Oracle Collaboration Suite Applications

The Oracle Collaboration Suite resource adapters present data from Oracle Collaboration Suite application through Oracle Workspaces in addition to the native application interfaces. Each Oracle Collaboration Suite resource adapter has a corresponding JAVA API that can be programmed to manipulate target application data to appear within the Oracle Workspaces user interface. The Oracle Mail and Oracle Discusssions applications share the same repository.

Figure 13-4 Oracle Workspaces Interaction with Oracle Collaboration Suite Applications

Oracle Workspaces Interaction
Description of "Figure 13-4 Oracle Workspaces Interaction with Oracle Collaboration Suite Applications"

Planning for Oracle Workspaces Deployment

This section discusses Oracle Workspaces deployment planning issues. Oracle Workspaces provides system properties for controlling application sizing and performance.

Sizing and Performance Tuning

Oracle Workspaces provides system properties to control application sizing and performance tuning. For information on configuring these properties, see Oracle Collaboration Suite Administrator's Guide.

Oracle Workspaces Deployment Configurations

This section discusses Oracle Workspaces deployment configurations.

Multiple Computer Configurations

Oracle Workspaces supports all of the multiple computer deployment configurations supported by Oracle Collaboration Suite. Oracle Workspaces need no additional configuration to support any of the Oracle Collaboration Suite multiple computer configurations.

See Also:

For information regarding all Oracle Collaboration Suite deployment configurations, see Chapter 3, "Deploying Oracle Collaboration Suite".

Multiple OC4J Deployment Cache Issues

Oracle Workspaces caches some information in-memory, and when deployed in a multiple OC4J Containers scenario, each container has its own cache. As a result, a user accessing Workspaces from one OC4J Container may not immediately see changes made by a user accessing Workspaces from another OC4J Container.

Figure 13-5 Cache Update Delay in an Oracle Workspaces Multiple OC4J Deployment Scenario

Cache Update Delay
Description of "Figure 13-5 Cache Update Delay in an Oracle Workspaces Multiple OC4J Deployment Scenario"

Figure 13-5 illustrates the results of cache update delays in an Oracle Workspaces multiple OC4J deployment scenario. In this figure the Oracle Workspaces user interface can be accessed by one of three OC4J containers. Data changes in one of the OC4J containers to either user properties, recent activity, or discussion forums, however this change is not immediately updated in the other two OC4J containers. As a result, a user accessing the workspaces user interface from the OC4J in which the change has occurred can see the change. Users accessing the workspace user interface from the other OC4J containers do not see the change until the update occurs.The expected delay times for different types of data are described as follows.

User Properties

User properties are cached in memory for thirty minutes. If user properties are updated in Oracle Internet Directory, then provisioning is used to propagate those changes to the workspaces repository. The changes may not be reflected in the workspaces application for up to 30 minutes due to the in-memory caching, and may be reflected in one OC4J Container before they are reflected in a different OC4J Container.

Recent Activity

Recent activity is shown when you enter a workspace on the workspace home page. This data is cached in memory for thirty minutes, but with some additional rules. Any time an operation occurs which modifies workspace content, the cache is invalidated (so that changes made in the same OC4J Container appear instantly). Note that changes made in a different OC4J Container do not cause the cache to be invalidated. For this reason, a conditional TTL (time to live) is also used in the cache. If a cached item is more than five minutes old, then a check is made to see whether any item in the workspace was updated since the item was placed in the cache. This check uses data stored in the database, and so will capture any changes that occurred in different OC4J Containers. This means that it will take at most five minutes for changes from one OC4J Container to be seen in another OC4J Container.

Discussion Forums

The list of discussion forums is also cached in memory for each workspace. The caching scheme used is identical to that used for recent activity, so any changes made in one OC4J Container will take at most five minutes to propagate to other OC4J Containers.

Adding Oracle Collaboration Suite Applications to Oracle Workspaces as Required

If Oracle Workspaces is initially installed without a particular service such as Oracle Calendar, Oracle Content Services, Oracle Discusssions, Oracle Mail, and Oracle Real-Time Collaboration, then the service can easily be added later and subsequently can be used by existing workspaces.

Figure 13-6 Adding Features to Oracle Workspaces as Required

Adding Features to Oracle Workspaces
Description of "Figure 13-6 Adding Features to Oracle Workspaces as Required"

Figure 13-6 illustrates how new services can be added to Oracle Workspaces. In this figure Oracle Calendar, and are already up and running as Oracle Workspaces features. These features are illustrated as yellow boxes inside Oracle Workspaces. Oracle Content Services, Oracle Mail, and Oracle Discusssions are illustrated as grayed out boxes in Oracle Workspaces to indicate that they are inactive features. Yellow-box versions of these features are indicated later the Oracle Workspaces application with arrows pointing toward the grayed out version of these features in Oracle Workspaces. This indicates that the features will be added to Oracle Workspaces. New features can be integrated as follows.

Reinitialize only that Feature

After verifying that the newly-installed feature is up and running, an application administrator can access the Administration tab, then the Services subtab, and reinitialize only the newly-installed feature. Reinitializing the newly-installed feature will establish or re-establish a connection with the service so that it can be used in by Oracle Workspaces. The workspaces server remains up and functional throughout this process.

Bounce the OC4J Container

An alternative to reinitializing the newly installed service is to take down the OC4J Container which contains the workspaces application and bring back up. The same initialization steps occur as the ones that take place when reinitializing the feature.