Skip navigation links
SAP NetWeaver 7.50 SP 13 KMC

Package com.sapportals.wcm.rendering.base

Contains interfaces for flexible rendering of explorer controls.

See: Description

Package com.sapportals.wcm.rendering.base Description

Contains interfaces for flexible rendering of explorer controls.

Package Specification

Purpose
Detailed Concept
Configuration
Implementation Notes

Purpose

The KM framework provides a number of renderer packages that allow a highly flexible representation of explorer controls. The explorer controls enable the end user to navigate through repositories and perform basic operations on resources. They are the main point of access to the KM repositories and therefore play a central role in the application. For this reason it is important that they can be customized and adapted in different ways to meet the requirements of different types of users. This flexibility is achieved with the functions of the renderer and layout service packages which make it possible to adapt the controls in appearance, behavior and complexity to suit different individuals or groups. For example, an administrator can be presented with a complex browse control that provides meta-information about resources and mass actions. A casual user can be presented with a simple control that has an attractive appearance, a few essential commands and an easy intuitive form of navigation.

The classes and interfaces of the renderer package provide the framework that make customization of the behavior and appearance of controls possible. Essentially, customization is controlled by defining values for parameters that influence appearance and behavior of rendering components that "understand" these parameters. 

The way in which objects within the rendering environment are instantiated and configured is controlled by the rendering framework. For this reason, the four factories LayoutControllerFactory,ResourceRendererFactory, CollectionRendererFactory and UICommandFactory have to be used to get correctly instantiated and parameterized instances of ILayoutController, IResourceRenderer, ICollectionRenderer, ICommand and IMassCommand.

The configuration is used by the factories to retrieve the correct instance of an interface. This allows the implementation of new classes, that can be mapped in the configuration and then used for the rendering process.

Detailed Concept

At the package level, the base package provides the fundamental functions required to customize rendering. In this package the AbstractProxyControl class plays a central role.

An AbstractProxyControl object represents an outer container that knows how to handle events that are triggered by htmlb-Components  that are dynamically rendered at runtime. Assuming a customized version of the explorer control includes a number of additional commands to manipulate a particular resource type, then the AbstractProxyControl responds to the events that are fired when a user activates these commands. It calls the UICommandFactory, and receives the ICommand encoded in the received event. The command is then executed and is responsible for the logic and screenflow. The AbstractProxyControl therefore acts as an intermediary that can interpret events from the most diverse types of classes and pass them on to the right instance for execution. It ensures the correct processing of events that are fired by commands, regardless of the way in which the commands are rendered on the screen at runtime.

In addition to the above, the AbstractProxyControl is also responsible for finding the correct ILayoutController for the given resource, user and iView. It calls the ILayoutControllerto do the rendering.. The AbstractProxyControl provides access to the URL parameters of the iView for inner classes.

The interfaces and classes for rendering customized controls belong to the collection and resource packages. The collection package is responsible for defining the way a collection of resources is rendered. The resources can either be the children of a parent folder or a non persitent list such as a search result. The resource package is responsible for rendering single resources, including ICollection objects, in different ways. Different implementations of the ICollectionRenderer and IResourceRenderer interfaces are able to represent folders and resources in different ways in accordance with the customization.

Configuration

As mentioned above, the different factory classes are responsible for reading the configuration of all classes they instantiate. See the configuration information in the subpackages for details. All configuration options in the render package can be found in the Configuration Framework under Content Management->User Interface.

Implementation Notes

Commands and renderer classes can be used for repositories or in environments that do not fulfill all prerequisites needed for the classes to function properly. To ensure that end-users can still use their iViews, even if the configuration of the user interface is faulty, we suggest you write error-tolerant programs to avoid the display of exceptions on the screen. Detailed logging for the administrator should be used instead.

Skip navigation links
SAP NetWeaver 7.50 SP 13 KMC

Copyright 2018 SAP AG Complete Copyright Notice