Customizing the LiveCycle Contentspace (Deprecated) User Interface

Adobe LiveCycle Contentspace (Deprecated) is a web application that allows users to interact with LiveCycle Content Services (deprecated). Contentspace is built using the Spring Framework, an application framework, and JavaServer Faces, a user interface framework that defines a core architecture for an event-driven component-based model for web application development.

Note: Adobe is migrating Adobe® LiveCycle® Content Services ES customers to the Content Repository built on the modern, modular CRX architecture, acquired during the Adobe acquisition of Day Software. The Content Repository is provided with LiveCycle Foundation and is available as of the LiveCycle ES4 release.

To customize the Contentspace user interface, you should be familiar with the following technologies and languages:

  • The Spring Framework

  • JavaServer Faces

  • Web development

  • Java Server Pages

  • XML

  • Managed beans

  • Cascading Style Sheets

  • HTML

You may want to customize the appearance of Contentspace, which is often referred to as skinning or branding. To customize Contentspace, you modify various files from the Content Services (deprecated) EAR file. Before you can modify the files from the EAR file, you must extract the EAR file to your computer. (See Setting Up to Customize LiveCycle Contentspace (deprecated).)

Details on customizations to these elements are provided:

After you are done customizing Contentspace, you must repackage the Content Services (deprecated) EAR file and deploy it to the application server. (See Deploying a Customized Contentspace (Deprecated).)

View full size graphic
A.
Custom logo

B.
Custom file type images

C.
Custom view icons

D.
Custom background colors

E.
Custom header fonts

F.
Custom space icons

G.
Custom configuration icon

Understanding the Contentspace architecture

LiveCycle Content Services (deprecated) is built using the Spring Framework, which is a full-stack Java application framework that aims to make J2EE easier to use. The Spring Framework promotes good development practices by enabling a POJO (Plain Ordinary Java Object) programming model.

Contentspace is a web application that allows users to interact with Content Services (deprecated) and is packaged in the Content Services (deprecated) EAR file. The Contentspace design is based on JavaServer Faces, which is a user interface framework that defines a core architecture for an event-driven, component-based model for web application development. One of the JavaServer Faces goals is to make applications easier to customize without rewriting significant portions of the code. JavaServer Faces is a standard specification (JSR-252) developed by the Java Community Process with a number of different public implementations. Contentspace uses the Apache MyFaces implementation. To customize the Contentspace user interface, it is recommended that you have an understanding of JavaServer Faces.

In addition to user interface components, JavaServer Faces defines the following artifacts:

  • Converters: Perform type conversion between server-side Java objects and their representation in the user interface. For example, Date is a converter.

  • Validators: Perform input validation on values before they are processed and are associated with a JavaServer Faces user interface component.

  • Event listeners: Registered against events that are triggered when an action is performed by the user in the user interface, such as clicking a button, selecting a value from a list, or changing a value in a field. The result of processing an event determines the next page that is displayed to the user.

  • Renderers: Generate the markup for the user interface. JavaServer Faces is not limited to any markup language and can be coupled with other renderers to produce different output, such as HTML or WML.

Actions in Contentspace are configured using an actions framework. Actions such as edit, view details, update, or copy are examples of actions exposed in the user interface. The standard user interface actions and action groups are defined in a provided actions configuration file using XML code. You can modify icons and display names for an action by overriding the provided XML code blocks using a configuration extension file called web-client-config-custom.xml.

The web-client-config-custom.xml is one import file provided as part of Contentspace. Contentspace is also composed of a number of other files that you may modify that include:

  • Java Server Page (JSP) files

  • JavaScript files

  • Images files

  • Cascading style sheets (CSS) files

  • XML files

To better understand and customize the Contentspace user interface, you should understand the files and folders that you need to reference or modify. (See Understanding files used to customize the Contentspace user interface.)

Before you begin to modify the Contentspace user interface, you need to copy the assets from the Content Services (deprecated) EAR file (see Setting Up to Customize LiveCycle Contentspace (deprecated)) to set up your development environment. After you are done your customization, you redeploy an EAR file to your application for testing (see Deploying a Customized Contentspace (Deprecated)).

Understanding files used to customize the Contentspace user interface

Many of the Contentspace user interface customizations are accomplished by either replacing files with copies of your own or modifying various XML files to override existing XML files. Other changes require that you modify CSS or resource files (.properties files). You should familiarize yourself with some of the files that you reference and modify to customize the user interface. After you copy the files from the Content Services (deprecated) EAR file to your development environment, you have a folder structure with a number of files.

To modify the Contentspace user interface, you commonly modify the following list of files and folders:

Note: All folder paths are listed from root level. Root level is the location you extract the Content Services (deprecated) WAR file to. The Content Services (deprecated) WAR file is extracted from the Content Services (deprecated) EAR file.
  • WEB-INF/faces-config-custom.xml: A file used to override the Java Server Framework files. You modify this file to override any JavaServer Faces configuration in Contentspace.

  • WEB-INF/classes/alfresco/extension/web-client-config-custom.xml: A file used to override any Contentspace configuration files and properties.

  • WEB-INF/classes/alfresco/extension: The folder that contains most of the files that you use to customize Contentspace. Files in this folder override the provided configuration files.

  • images: The folder with all images, which includes sub-folders that contain logos, icons, and file type images. You place any custom images into one of the sub-folders and you can override images by copying your image to specific file names.

  • css: The folder that contains all the CSS (cascading style sheets) files used to control colors, fonts, and spacing. In some cases, you can even override images for specific elements or classes.

  • jsp: The folder contains the JSP files that comprise Contentspace.

  • jsp/extension: The folder that contains JSP files you want to include to override default JSP files.

There is also a common set of files that you use as reference for user interface customizations described in this documentation. You do not modify these files but you may need to use them to find blocks of XML code to modify or copy XML blocks and put XML code in the web-client-config-custom.xml, which is located in the WEB-INF/classes/alfresco/extension folder.

  • web-client-config.xml: The configuration file that controls the default settings for Contentspace, including error pages, login pages, maximum number of items to show in recent spaces, and default start location. To override actions, you redefine the configuration setting in the web-client-config-custom.xml file.

  • web-client-config-actions.xml: The configuration file that defines actions in Contentspace as well as the images and event listeners used. To override actions, you redefine the action in the web-client-config-custom.xml.

  • faces-config-beans.xml: The configuration file that defines the managed beans for user interface components. To override a managed bean, you redefine the managed bean in the faces-config-custom.xml file.

  • faces-config-common: The configuration file that maps user interface components to renderers. To override the renderers used by a user interface component, you define it in the faces-config-custom.xml file.

// Ethnio survey code removed