Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Anchor
top
top

Entities with several business units, channels, brands, and extranets often want to centrally manage all their outlets and initiatives from one application or platform. XperienCentral is designed to manage multiple channels and handle multi-channel publishing. It is possible to set up new channels without installing additional hardware and/or software. Every channel has its own page structure and its own Workspace environment. The added value of multiple channels is the possibility to share and reuse information across those channels. Content Repository items that have been created in one channel can be reused in another channel. It is possible to specify exactly which functionality and content can be shared between which channels.

This topic describes how to set up extra channels and how to share information between these channels as well as some additional functionality. Some of the tasks have to be performed by a system administrator and/or application manager due to some core configuration changes. This topic describes both local and development environments. A multiple channel setup for production environments can be configured in a similar way, but it does require extra configuration changes to the web server(s) and possibly other software. Procedures for production environments are described in the Linux and Windows installation topics for production environments.

Before creating a new channel, stop XperienCentral (the web server).

 

In This Topic

Table of Contents
maxLevel2
minLevel2

 

Generate New Hostnames

To create a second channel, two new hostnames are required: the hostname for the public channel and the hostname for the Workspacer environment. In this document www.mysecondsite.com and cms.mysecondsite.com will be used as examples.

Add the new hostnames to your "hosts" file (C:\Windows\system32\drivers\etc\hosts on Windows computers) and point them to 127.0.0.1. For example:

127.0.0.1    www.mysecondsite.com
127.0.0.1    cms.mysecondsite.com

 If you use a proxy server, add excludes for these hostnames in the proxy configuration of your browsers.

Request an Updated configuration.xml from GX Software

The configuration.xml is a file with a license key that also contains the valid hostnames for your installation. To create a new channel, a new configuration.xml containing the two new hostnames is required: Send an e‑mail to developersupport@gxsoftware.com or contact your GX Software consultant in order to obtain a new configuration.xml. If you send an e-mail, do not forget to include the two new required hostnames

Update your configuration.xml

...

 

Tip

The correct location for the configuration.xml file can always be found in the XperienCentral Setup Tool on the General tab (the setting config_filename).

 

Back to top

 

Create a New Channel in XperienCentral

To create the new channel in XperienCentral, follow these steps:

 

...

Step 1: Name the New Channel

 

Image Removed

 

Configure the following fields:

 

SettingDescription

Name

The name of the new channel.

Identifier

The identifier of the new channel.

Based on channel

Choose a channel here if all the parameters are similar to those of an existing channel. It is recommended to base the new channel on an existing channel, because all the configuration settings (such as paths) will be duplicated.

 

 

Step 2 of 4: Configuration Settings for the New Channel

 

Image Removed

 

Configure the following fields:

 

Fields

Description

Hostname

The hostname of the public channel.

Generator

The hostname of the Workspace environment.

Default e-mail address

The default e-mail address for functionality that makes use of e-mail messages.

Folder for uploads

The folder where uploaded files are stored.

Upload URL

The base URL for uploaded files.

Folder for multimedia uploads

The folder where binary files are stored.

Multimedia Upload URL

The fase URL of the uploaded binary files.

Descriptor folders

The folders where the presentation JSPs are stored. A scheduled task scans these folders for descriptor files. Multiple folders can be specified separated by semicolons.

Redirect base directory

The base folder of the static files.

Note

If desired, the above settings can be modified in the General tab of the Setup Tool after the channel has been created.

 

Step 3 of 4: Create the New Channel

Image Removed

 

In step 3 you have to confirm that you want to create a new channel. Click [Create channel]. This operation could take a few moments. The new channel with one page, the homepage, has been created. You can now log in to the channel by accessing the URL by its new hostname (+port number) followed by /web/edit. Following the example in this topic, that URL is http://cms.mysecondsite.com:8080/web/edit.

 

Note
 By default the home page of the new channel is not in the published state, therefore visitors who navigate to the front-end of that channel will see a blank page.

 

Back to top

 

Extending the Folder Structure (Optional)

The configuration of the new channel can be extended or altered to allow separate files or presentations.

Separating Presentations

When managing multiple channels, it might be necessary to share common resources and (parts of) the presentation. In order to realize this, the following conditions must be met:

  • There must be a central folder for the shared files and presentations.
  • Besides the central folder, each channel also has its own folders for private files and presentations.

 

The following is an example of a folder structure in a presentation plugin:

 

Code Block
themeEclipse
<WCB JSP folder>/common/page/
                       /pagepart/
                       /element/
                       /etc
              /channel1/page/
                       /pagepart
                       /element
                       /etc
              /channel2/page/
                       /pagepart
                       /element
                       /etc

 

In order to be able to use this subdivision, you need to modify your configuration in the Setup Tool. On the General tab, navigate to the section "website_settings (x)" where x is the name of the channel you want to configure.

...

 

The descriptor directories are listed in a specific sequence. This sequence also indicates which JSPs are used if there are other JSPs with the same name. For example, if there is a page.jsp in the common directory and there is a page.jsp in the channel1 directory, then the page.jsp from the channel1 directory will be used.

The static files can be placed in a similar way as the JSPs:

 

Code Block
themeEclipse
…/presentationtype/static/common/images/
                                /stylesheets/
                                /scripts/
                                /…

…/presentationtype/static/channel1/images/
                                  /stylesheets/
                                  /scripts/
                                  /…

…/presentationtype/static/channel2/images/
                                  /stylesheets/
                                  /scripts/
                                  /…

 

Finally, the uploaded files can be placed in separate folders. In this way, the first channel can use the standard upload and upload_mm folders. Uploads for the second and subsequent channels can be placed in a separate folder below the main folder. For example:

 

Code Block
themeEclipse
backend/
/upload/                  for the first web initiative
/upload_mm/               for the first web initiative
/mysecondsite/upload/     for the second web initiative
/upload_mm/               for the second web initiative

 

These paths can be set for each channel using the following settings:

  • file_upload_directory and file_upload_url (for normal uploads)
  • file_upload_mm_directory and file_upload_mm_url (for Content Repository uploads)

 

Back to top

 

Sharing Content

For organizations with several channels and multiple publication channels (multi-channel publishing) it is often essential to be able to manage content from a central location and to re-use it on multiple places. This means not only content but also web users, forms etc. In a default installation with more than one channel, all content is strictly separated. Content sharing is not done automatically, so if you want to do this some settings have to be changed. Most of these changes involve assigning different read/write permissions for different channels. Editors of the various channels must explicitly allow one another to read content and to re-use content. By explicitly specifying to read per channel, everything can be set up in a safe and flexible manner.

An important feature of shared content is that shared content can only be read on another channel. For example, when an article is created in channel A then it can be displayed on channel B, but it can never be modified on channel B. This ensures that the rights of the author remain with the author. When different editors are allowed to edit content on different channels, their user accounts have to be shared as well. Editor X on channel A must be shared and granted permission to work on channel B as well.

 

Note

In the following sections, the term "content" is used in a broader context and is used as a synonym for content types, model types, settings, web users etc. Language labels don't belong to this form of content. Language labels are maintained in a single object pool that is valid for all channels.

Sharing and Accepting

In order to share content between channel A and channel B the configuration has to be changed to be able to expose (share) the content of one channel with another as well as to receive (accept) content from another channel. Sharing content is configured in three steps. For each channel, specify the following:

  1. Which content types are available for sharing.
  2. Which content should be shared with which other channel(s).
  3. Which content should be accepted from other channel(s).

In this example, we will configure two channels so that articles from the Content repository are shared between channel A and channel B, and editors on both channel A and B are able to add new articles and to use each other’s articles on their channel.

Step 1

Which content types are available for sharing is set up in Configuration > Channel Configuration on the [Functionalities] tab under "Shared model types". In order to share the Content Repository, select it in the list. For example:

 

Image Removed

Click [Apply]. The Content Repository is now shared in channel A. For example:

 

Image Removed

 

Repeat this step for channel B.

 

Steps 2 and 3

Sharing and accepting are configured in Configuration > Channel Configuration on the [Sharing/Accepting] tab:

 

Image Removed

 

On this tab you have the following fields:

 

Field

Description

(Filter block) Select channel

Select a channel to configure.

(Filter block) Select model type

Filter to show only specific model types.

(Share settings) Share

Select the models that you want to share.

(Accept settings) Accept

Select the models that you want to accept from the other channel.

Share automatically

If this option is selected, all sharable items of the selected model type (that are available) are automatically shared

Accept automatically

If this option is selected, all sharable items of the selected model type (that are available) are automatically accepted

 

In order to share the Content Repository in this example:

  1. Channel A has to share the Content Repository with channel B
  2. channel A has to accept the Content Repository from channel B
  3. channel B has to share the Content Repository with channel A
  4. channel B has to accept the Content Repository from channel A

When this is completed the configuration looks like this:

 

Channel A

Image Removed

 

Channel B

Image Removed

 

 

Model Types

Below is a list of all model types that can be shared. When there are no comments for a model type the individual items of a model type can be shared. For example, with the queries you can choose on a query level which queries are shared or not.

 

Model Type

Comment

Application integration: filter definitions

 

Applications

 

Content RepositoryAlways the entire Content Repository and not individual content types

Form resources

Form resources and form steps

Form models

 

Form rules (all handlers)

 

Forms 

Languages

 

Page section labels

 

Personalization

Both personalization expressions as well as personalization models

Presentations

Only presentations and no presentation variants

Queries

 

User groups 

Web users

Always all web users and not individual web users

 

Back to top

 

Multiple Channels versus Language Switch

For organizations that publish content in multiple languages you can either use multiple channels or use the language switch functionality available in the Language widget. The pros and cons of both approaches are described in the table below.

 

...

Language Switch

...

Extra Channels

...

The site structure for all language versions of the channel is the same. Not all pages have to be translated or published.

...

Each channel has its own site structure.

...

Authorization per language is not possible. An editor can edit pages and page sections in all the available languages.

...

Authorization is fully adjustable per channel. Each channel has its own edit environment.

...

All languages use the same presentation.

...

There are many ways to separate the design or share parts of the design between several channels.

...

No additional license required to use multiple languages.

...

An additional license is required for each extra channel.

 

For a straightforward one-to-one translation of a channel and when the content is translated by the same group of editors, the natural choice would be the language switch. In cases where extra functionality is required or authorization is required for each language, then you probably want to set up a separate channel and to use sharing and accepting to share content 

The external application functionality uses filters to integrate content from external sources. These filters perform tasks such as stripping away superfluous HTML from the source and replacing HTML tags with others in order to make it suitable to be displayed in XperienCentral using your design template,

There are four predefined filters for external applications in XperienCentral. Each is described in this section. To add a filter to an external application, select if from the drop-down list on the Filters tab. For example:

Select filter from drop-down listImage Added

The filter is added to the external application. For example:

Filter added to the applicationImage Added

Define the properties for the filter. See the applicable section below for complete information. The order in which the

 

...

WmInclude Filter

The WmInclude filter is the filter most often used to integrate external applications. Define the following properties for the WMInclude filter:

 

PropertyDescription
ProxyName of the proxy server as defined on the Proxy servers tab Select the proxy server for this external application from the drop-down list.
ServerThe name of the application server as defined on the Application servers tab. Select the server for this external application from the drop-down list.
MethodThe available methods are "GET" (an HTTP GET request) and "POST" (an HTTP POST request. The method you use depends on the configuration of the application server on which the external application is running.
ProtocolSpecifies the protocol to use for the filter. The available protocols are "HTTP" and "HTTPS".
Relative URLThe part of the URL after the server name and/or port number. In the following example, "XperienCentral.html" is the relative URL:

http://connect.gxsoftware.com/XperienCentral

If you want to use the root of the URL as the source, add a forward slash to this field "/" (without quotes).
DebugSelect this option if you want debug messages to appear in the Tomcat log.
Debug contentSelect this option if you want log messages related to the content from the external application to appear in the Tomcat log.
Max redirectsSpecifies the maximum number of redirects to other applications. If this field is left blank, the maximum number is 10.
Error pageThe page the visitor will be redirected if an error occurs while accessing the external application. Click [Search] to select the page using Advanced Search.

...

WMReplacementsFilter

The WMReplacements filter is used to replace or remove strings from the integrated external application. This makes it possible to modify the retrieved content in order to make it suitable for display in your own design template. The default replacements cover most of the common modifications that need to be performed on retrieved content. You can also create custom replacements that apply to your specific project.

PropertyDescription
Replacements

Select the replacements to act on the HTML from the external application and click [Apply]. The replacement is added. Repeat this step for each replacement you want to add. The replacements will be executed on the retrieved content in the order that they appear in the WMReplacements filter in the external application configuration on the External Applications tab. To change the order of the replacements, select a new value from the drop-down list for the filters you want to rearrange. For example:

Change replacement orderImage Added
and then click [Apply]. See Replacements for an explanation of the standard replacements available in XperienCentral.

DebugIndicate whether debug information for this filter appears in the Tomcat log.

...

IncludeFileFilter

This filter displays the content from the specified file. This is useful for situations where the source for content is a file on disk as opposed to an external application. Enter the fully qualified path to the file including its extension. For example:

IncludeFileFilterImage Added

...

XSLFilter

This filter converts XML to HTML so it can be rendered in XperienCentral.

PropertyDescription
XSL URLThe URL where the file containing the XML to HTML translation is located.
XSL FilenameThe name of the file located at the URL specified above that contains the XML to HTML translation.

...

Creating a Custom Filter

If the standard filters available in XperienCentral do not provide the functionality you need in order to integrate an external application, you can create a custom filter using the Integration API. When the custom filter is created, you can add it to the external application configuration.

For complete information on implementing a custom filter, please contact your GX XperienCentral consultant.

...

 

Back to top