xPression Enterprise Edition System Overview Build 39

xPression 3
xPression Enterprise Edition System Overview
© 2001-2008 by EMC Document Sciences Corporation. All rights reserved.
The copyright protection claimed includes all formats of copyrightable material and information governed by current or future statutory or judicial law. This includes,
without limitations, any material generated by the software programs that display icons or other screen interfaces. You may not copy or transmit any part of this
document in electronic or printed format without the express written permission of Document Sciences Corporation. xPression, CompuSet, and all other Document
Sciences Corporation products mentioned in this publication are trademarks of Document Sciences Corporation. For complete copyright information, please see the
file xPression Licensing Document.pdf located on your eBook Library CD.
EMC Document Sciences Corporation, 5958 Priestly Drive, Carlsbad, CA 92008
www.docscience.com
Document Sciences Corporation
Table of Contents
Table of Contents
Introduction .................................................................................................... 6
Boxes and Revision Bars ................................................................................................................................... 6
Solution Support ................................................................................................................................................ 7
Introduction to xPression ............................................................................. 8
What is xPression? ............................................................................................................................................ 8
Where Does xPression Fit? .................................................................................................................. 9
Top Three Business Challenges xPression Solves .............................................................................. 9
The xPression Publishers ........................................................................... 10
About CompuSet ............................................................................................................................................. 10
About xPublish ................................................................................................................................................. 10
Differences in Architecture ............................................................................................................................... 11
CompuSet ........................................................................................................................................... 11
xPublish .............................................................................................................................................. 12
Differences in Font Support ............................................................................................................................. 13
Embedded Fonts in xPublish .............................................................................................................. 13
Differences in Image Type Support ................................................................................................................. 14
Supported Formats ............................................................................................................................. 14
Differences in Output Processing Support ....................................................................................................... 16
xPublish Usage of Markers and PPD Files ......................................................................................... 16
CompuSet Usage of PDEF Files ........................................................................................................ 16
Supported Output Processing Features .............................................................................................. 17
Partitioning .......................................................................................................................................... 20
Built-In System Functions ................................................................................................................... 20
Software Simplex ................................................................................................................................ 20
Document Sciences Corporation
4
Table of Contents
Printer Support .................................................................................................................................... 20
Supported Printer Features ................................................................................................................. 20
Differences in PDL Features ............................................................................................................................ 21
AFP ..................................................................................................................................................... 21
Support for Previous Versions ......................................................................................................................... 22
Differences in Formatting Features ................................................................................................................. 22
Data Driven Charts ............................................................................................................................. 23
Headers and Footers .......................................................................................................................... 23
Two-Column to One-Column Changes Across Page Boundaries ...................................................... 23
Differences in Reporting/Logging .................................................................................................................... 24
Reporting ............................................................................................................................................ 24
Logging ............................................................................................................................................... 24
xPression Infrastructure Overview ............................................................ 25
The Server Components .................................................................................................................................. 25
Document Assembly ........................................................................................................................... 25
Batch Processing ................................................................................................................................ 26
The Application Components ........................................................................................................................... 26
The Data Components ..................................................................................................................................... 26
Customer Data .................................................................................................................................... 26
The xPression database ..................................................................................................................... 27
The File Components ...................................................................................................................................... 27
Business Document Templates (BDT) ................................................................................................ 27
Assembly List ...................................................................................................................................... 28
Output Profiles .................................................................................................................................... 28
Assembled Documents ....................................................................................................................... 28
xPression Software Components .................................................................................................................... 28
The Distribution Controller .................................................................................................................. 29
The Security Controller ....................................................................................................................... 29
Customer Data Reader ....................................................................................................................... 29
Output Profile Controller ..................................................................................................................... 29
Composition Engines .......................................................................................................................... 29
Batch Runner ...................................................................................................................................... 30
xFramework API ................................................................................................................................. 30
The Migrate Utility ............................................................................................................................... 31
Enterprise Content Management (ECM) Integration ........................................................................................ 31
Documentum Integration ..................................................................................................................... 31
Filenet Integration ............................................................................................................................... 33
Document Sciences Corporation
5
Table of Contents
Application Components ............................................................................ 34
Transactional Applications ............................................................................................................................... 34
xResponse .......................................................................................................................................... 34
xRevise ............................................................................................................................................... 35
Administration Applications .............................................................................................................................. 36
xAdmin ................................................................................................................................................ 36
xDashboard ......................................................................................................................................... 37
The xPression Document Design Applications ................................................................................................ 38
xDesign ............................................................................................................................................... 38
xPresso for Adobe InDesign ............................................................................................................... 38
xPresso for Dreamweaver .................................................................................................................. 39
xPresso for Microsoft Word 2007 ........................................................................................................ 39
Server Configurations ................................................................................. 41
xPression Deployment Overview ..................................................................................................................... 41
xDesign Deployment ........................................................................................................................... 42
xPresso for Adobe InDesign Deployment ........................................................................................... 42
xPresso for Dreamweaver Deployment .............................................................................................. 43
Server Deployment ............................................................................................................................. 43
xPression Database Deployment ........................................................................................................ 43
Planning Your xPression Configuration ........................................................................................................... 43
Suggested Server Configurations .................................................................................................................... 44
Moderate-Sized Batch Volumes .......................................................................................................... 44
Large Batch Volumes with Moderate Transactional Processing ......................................................... 45
Large Batch Volumes with Large Transactional Processing ............................................................... 46
Connectivity to Other Components .................................................................................................................. 46
xPression Client Session State ........................................................................................................... 46
Server Affinity ...................................................................................................................................... 47
Document Sciences Corporation
Chapter 1
Introduction
1
This guide provides an overview of the xPression Enterprise Edition system. We will discuss the xPression
applications, components, publishing engines, and server infrastructure.
Boxes and Revision Bars
The following colored boxes alert you to special information in the documentation.
Caution: The caution box warns you that a fatal error, unsatisfactory output, or loss of data
may occur if you do not follow the directions carefully.
Tip: A tip offers suggestions to simplify a task or describes a useful shortcut. They may also
describe an alternate way to use the techniques described in the text.
Note: A note offers information that emphasizes or supplements important points of the main
text.
Revision bars help you locate new or changed information. Look for these revision bars in the right margin of each
affected page.
Document Sciences Corporation
7
Chapter 1 - Introduction
Solution Support
For more information or to solve a problem, contact Document Sciences Solution Support:
Telephone: (760) 602-1500
Fax: (760) 602-1515
World Wide Web: http://support.docscience.com
E-mail: [email protected]
Document Sciences Corporation
Chapter 2
Introduction to xPression
2
This chapter introduces you to the xPression administration system. In this chapter we will review the xPression
architecture and design components from the perspective of a system administrator.
What is xPression?
xPression is a suite of applications that provide universal content processing for your enterprise. The system was
designed with an open, component-based architecture based on standards like J2EE, Web Services, JMS, MS
.NET, and XML.
Figure 1. xPression
diagram.
Document Sciences Corporation
9
Chapter 2 - Introduction to xPression
xPression’s multi-tiered Web architecture enables real-time, high volume delivery of your critical business
communications. xPression’s end-to-end capabilities enable you to design, test, approve, produce, and rapidly
deliver your documents through a variety of e-mail, archive, Web, and print methods.
Where Does xPression Fit?
xPression's service oriented architecture (SOA) was designed to integrate easily into enterprise solutions, such as
ECM, CRM, ERP and BPM. xPression provides dynamic content publishing services for the generation of
personalized, high quality documents within an enterprise solution, as shown in the diagram below.
What enables the ease of integration is xPression's J2EE architecture, its extensive XML support, its
comprehensive set of web services, its Java API, and its messaging interface.
Top Three Business Challenges xPression Solves
1. Drive customer loyalty: increase customer retention with real-time, interactive customer communications,
allowing field agents to respond to customer requests immediately.
2. Technology consolidation: Replace the myriad of legacy document generation tools with a single,
standards-based and comprehensive solution that can integrate with your enterprise CRM, ECM, ERP
systems and cover all of your document generation needs.
3. Time to market: speed up the design and implementation of your business communications by using the
best productivity tools like Microsoft Word, Adobe InDesign and DreamWeaver, combined with powerful
rule-based logic and best-of-breed document generation engine.
Document Sciences Corporation
Chapter 3
The xPression Publishers
3
The xPression publishers are responsible for formatting and distributing assembled documents according to the
specifications of the document designer. They also perform any required post-composition processing that groups
documents into streams, adds finishing information, and distributes the final documents to the designated output
format.
xPression provides two different publishing engines, CompuSet and xPublish. The two publishing engines have
different feature sets and support a variety of options. When choosing a publishing engine, consider which
features and options are most important in each case. You can convert a CompuSet document to Publish, but you
cannot convert a Publish document to CompuSet.
About CompuSet
CompuSet is a native code composition engine that is is configurable through a complex, highly configurable
tagging language. The CompuSet command language is used to implement many Microsoft Word formatting
features, as well as output processing functionality such as sorting, grouping, recipient processing, and barcodes.
Although CompuSet supports many of the same output processing features that xPublish supports, implementing
these features in CompuSet requires extensive configuration and coding.
About xPublish
xPublish is a pure Java composition engine that is easy to use and provides WYSIWYG functionality with Microsoft
Word for document formatting. It enables advanced output processing functionality, true multi-threading in batch
mode, integration with ECM Documentum, and greater out-of-the-box support for fonts and image types. xPublish
can supports nearly all of the features that CompuSet supports, plus many key features that CompuSet cannot
support. The configuration process for xPublish is drastically easier than the CompuSet configuration. Additionally,
xPublish processing performs about 4 times faster than CompuSet processing.
Document Sciences Corporation
11
Chapter 3 - The xPression Publishers
Differences in Architecture
CompuSet and xPublish have significantly different architectures, and while some of their feature support may be
the same, the method used to support the underlying features may be completely different.
CompuSet
CompuSet is the most sophisticated composition engine in the industry that is flexible and fully programmable
through CompuSet command language. Some key aspects of CompuSet are:
•
Native code implementation and embedded native code emitters drives performance.
•
Extensive support for output processing capabilities.
•
Because CompuSet has multi-thread restrictions, only one CompuSet call can be made at a time per JVM.
The CompuSet publishing engine consists of CompuSet, the CompuSet composer, the output processing preprocessor, the output processing engine, and the emitters.
Figure 2. Simplified
CompuSet Data
Flow.
When you publish to CompuSet, CompuSet processes the output produced by xPression Assemble to create your
desired output formats. The output processing engine performs partitioning, sorting, merging and other output
management tasks. The output formatters create print data streams for use with a large variety of laser printers.
Additionally, CompuSet can produce PDF for use with Adobe Acrobat Reader, for inclusion in e-mail, and archive
solutions. You can then distribute the output through the various xPression distribution components,
After you design your document in xPression Design, and create the layout and develop your content, you pull all
the pieces together and produce the final output through an xPression publishing engine. When you publish to
Document Sciences Corporation
12
Chapter 3 - The xPression Publishers
CompuSet, the CompuSet composer composes the CompuSet tagged text commands and content into the pages
of your document. Next, the output processing pre-processor prepares the composed pages for output processing
actions. For example, it adds index records to enable the output processing engine to efficiently sort output. The
pre-processor packages the document into a Container for CompuSet Intermediate Format (CCIF) file. The output
processing engine applies output processing directives to the CCIF and streams the content to the emitter. Finally,
the emitter transforms the CCIF record stream into the desired output format.
xPublish
xPublish is a powerful, easy to configure J2EE-based composition engine that uses thread-safe pure Java code
libraries. It enables greater performance and scalability than CompuSet through an advanced multi-threading
batch mode and caching.
Figure 3. Simplified
xPublish Data Flow
When you publish through xPublish, the Instantiater assembles your content into a styled document and feeds the
document to the xPublish Composer. The Composer transforms the Styled Documents into composed pages of
content in Device Independent Format (DIF) streams. The Streamer applies necessary output processing logic to
a DIF stream and sends the DIF to the Emitter. The Emitter transforms the DIF stream into the required output
format and invokes the Controller to send to desired document distribution channel.
Document Sciences Corporation
13
Chapter 3 - The xPression Publishers
Differences in Font Support
There are major differences in the level of support for font types and level of configuration needed to use the font
of your choice.
CompuSet requires extensive configuration for fonts. The fonts you use when editing a document (Windows fonts)
will not work when publishing to an output type (production fonts). You cannot simply select a font in Microsoft
Word while you are editing and expect it to work when you create PDF, AFP, or Metacode output. You must set up
a series of external font configuration files for each of your fonts. Additionally, you must map your Windows fonts to
your production fonts.
The xPublish composition engine was designed to support the same TrueType fonts (TTF) used in Microsoft Word.
This enables you to publish documents in any supported format using any font available to Microsoft Word.
TrueType fonts are the xPublish master format.
xPublish also supports OpenType and Type 1 fonts for PDF and PostScript, and True Type fonts in an Open Type
wrapper. xPublish also supports the AFP fonts that meet the following characteristics.
•
Must be an AFP Outline font
•
Must have been created from TrueType font masters stored in the xPression database
•
Supports double-byte (Unicode) through TTF fonts and single-byte through AFP Outline fonts
•
Fonts must use the Latin alphabet
Additionally, xPublish provides out-of-the-box support for Unicode fonts and double-byte fonts, such as those used
in Chinese, Turkish, and Japanese characters.
Embedded Fonts in xPublish
We have expanded the range of characters that can be used without being embedded in an output PDF. Originally,
xPression enabled you to publish a PDF without embedding fonts if all the characters were within the ASCII
range(0-256). Any character that fell outside of that range was embedded.
Now the supported range is expanded to code page 1252. If the character is outside of this range, it will have to be
embedded.
If you want to publish a PDF with no embedded fonts, you must do the following two steps:
1. Ensure that all characters fall within the supported range as outlined above.
2. Set the following two parameters in the DCPI.properties file.
LargeCharacterSet=false
EmbedFont=false
Document Sciences Corporation
14
Chapter 3 - The xPression Publishers
Differences in Image Type Support
Both CompuSet and xPublish images are stored in the xPression database, but they are stored in separate
locations. You cannot access xPublish images from a CompuSet document and you cannot access CompuSet
images from an xPublish application.
With CompuSet you can insert an image from the xPression database, from an external location (Metacode only),
or from your printer memory. You cannot resize an image or change the rotation of an image from within Word. You
can rotate black and white TIFF and Xerox images using CompuSet commands. Additionally, CompuSet can
instruct supported printers to rotate an image. Scaling of images is allowed in CompuSet for some output types,
such as PCL, PostScript, and Metacode. Scaling is supported through the CompuSet IMG command.
If your output is produced in more than one output format and requires more than one version of the same image
(such as an EPG and a JPEG), you must import both formats into the xPression database separately.
You can use xPublish images that are stored in the xPression database, at an external location, in the printer
memory, or in a Documentum docbase. With xPublish, you can resize and rotate your image directly in Microsoft
Word without having to alter your source image. xPublish was designed to automatically handles the image format
selection by converting your image to the most suitable format for your output type. For this reason, you do not
need to place multiple formats of the same image in the xPression database. If the xPression database does not
contain an image compatible with your output format, xPression will automatically perform the conversion.
Supported Formats
The following table shows the types of images currently supported by CompuSet and xPublish.
Feature
CompuSet
xPublish
BMP
Not supported
√
EPS
√
√
Flate
Not supported
√
GIF
Not supported
√
Group4
√
√
IMG (Xerox)
√
√
JPEG
√
√
Not supported
√
PDF as an image
Document Sciences Corporation
15
Chapter 3 - The xPression Publishers
Feature
CompuSet
xPublish
PNG
Not supported
√
TIFF
Only black and white images with
one bit per pixel. Must be
uncompressed, CCITT 1D, Group 3,
Group 4, LZW, or PackBits.
Only Uncompressed, Huffman
RLE (CCITT 1D), Group 4, LZW
and PackBits
External Images
Metacode only
√
Images Resizable in Word
Not supported
√
Highlight Color
√
Not supported
Animated GIFs
Not supported
Not supported
√
Only B/W, Gray, RGB Palette and
RGB
Not supported
√
CMYK TIFFs
Smart Format Selection
The following additional image formats and types are not supported.
Animated GIFs
Animated GIFs are not supported. Animated GIFs are comprised of a number of images in the same file. The
animation effect occurs when an application, like Internet Explorer, switches between the images. If you import an
animated GIF, xPression extracts only the first image in the sequence.
EPS Image with TIFF Proof/Preview
If you import an EPS image that contains a TIFF proof or preview:
•
CompuSet processes the EPS image and ignores the TIFF preview.
•
xPression only import the TIFF image because the TIFF proof precedes the EPS image in the file.
xPression will treat the image as a TIFF and not as an EPS.
Smart Format Selection
In CompuSet, if your output requires two versions of the same image (such as an EPG and a JPEG), you must
import both formats into the xPression database.
In xPublish, xPression automatically converts images to the correct format to fulfill the output needs; images do not
need to be stored in multiple formats.
Document Sciences Corporation
16
Chapter 3 - The xPression Publishers
Differences in Output Processing Support
Output processing enables you to channel your output to one or more output streams, and perform output
processing tasks on the documents in that stream such as, sorting, grouping, and reporting.
In CompuSet, output processing is a two phase process. First, the composition engine composes the CCIF, then
sends the CCIF to an emitter. The emitter publishes the document into your desired output format. In order to
create a package, CompuSet must perform sorting on the documents in the package. This additional processing
must be done even if you are not using sorting. Additionally, whenever output processing is used, CompuSet
temporarily saves all documents to the file system before passing them to the emitter.
xPublish uses a pipeline approach for output processing. A different software processor is used for each output
processing feature. Documents and packages are passed through a pipeline. If no sorting is needed, no
documents are temporarily saved to the file system, and xPublish does all processing in memory.
xPublish supports many of these output processing features through the use of markers and PostScript Printer
Definition (PPD) files. CompuSet supports these features through the use of PDE files.
xPublish Usage of Markers and PPD Files
PPD files are text files that provide applications (like xPression) with the necessary information about a device’s
features. Markers identify places in the document where you would like a feature or set of features to be
implemented. A Marker does not inherently contain the feature(s) you want to implement, it is a merely a name
that marks a location.
Through xAdmin, you can import PPD files for all of your print devices and map your markers to features described
in the PPD file. This enables great flexibility in how and where you implement these features. This enables the
printer features to be invoked differently (or not at all) for each device.
Every PostScript device ever produced has an associated PPD file. This enables xPublish to address every device
feature on every PostScript printer. Document Sciences provides you with an AFP PPD file to enable you to use
the same mechanisms for features of AFP.
CompuSet Usage of PDEF Files
When you publish to CompuSet, xPression uses PDEF files to determine the format and other specific
characteristics of your output. PDEF files define such characteristics as page size, what type of color is to be used
(no color, highlight color, or full color), and whether the document is to be produced in a booklet format.
Before you publish your document to CompuSet, you must configure a PDEF file with your output options. The
Output Format Tool enables you edit or create a PDEF file to specify those characteristics as output options for
your job.
Document Sciences Corporation
17
Chapter 3 - The xPression Publishers
Output format options are stored in the PDEF file, and are printer-specific. This means you can create a PDEF file
for each printer you use, and then select the appropriate PDEF file by selecting the Format Definition that contains
it. There are many options that you can define to control the way your output looks. The available options vary
between the different output types.
Supported Output Processing Features
CompuSet and xPublish support the following output processing options and functions.
Feature
CompuSet
xPublish
Media: Tracking Paper Weight
√
√
Media: Tracking Paper Thickness
√
√
Not supported
√
Media: Change of orientation in document
√
√
Media: Change of page size in document
√
√
Media: Tray Pulls
√
√
Partitioning: Individual files
√
√
Partitioning: Maximum Sheet Count
√
√
Partitioning: Single File
√
√
Not supported
√
√
√
Barcodes: DataMatrix
Not supported
√
Barcodes: Does Not Require Fonts
Not supported
√
Barcodes: Arbitrary Rotation of Barcodes
Not supported
√
Barcodes: Support for Front to Back Order
Not supported
√
√
√
Not supported
√
Media: Tracking Quantities of each paper
stock used
Partitioning: At Change in Variable
Barcodes: 2 of 5, Code 39, Code 128,
PostNet, OMR, PDF417
Barcodes: Font Based
Content Stamps: Text Content Stamps
Document Sciences Corporation
18
Chapter 3 - The xPression Publishers
Feature
CompuSet
xPublish
Not supported
√
Sorting of Output
√
√
Packaging
√
√
Reporting
√
√
Not supported
√
Imposition: Booklet Imposition
√
√
Imposition: N Up Impositions
√
√
Imposition: N Up Stacked Impositions
Not supported
√
Bleeds
Not supported
√
Crop Marks
Not supported
√
√
√
Fonts: TrueType
Not supported
√
Fonts: OpenType
Not supported
√
Fonts: Kerning
Not supported
√
Fonts: Use fonts without conversion
Not supported
√
Printer Support: Support all devices for
PPD
Not supported
√
√
√
Not supported
√
√
√
Output Metadata (Reporting)
Not supported
√
Images: Configurable Image Optimization
Not supported
√
Images: Resampling to Device Resolution
Not supported
√
Content Stamps: Image Content Stamps
Separator Sheets
Fonts: Type 1
Printer Support: Printer Resident Images
Spot (PMS) Colors
Recipient Processing
Document Sciences Corporation
19
Chapter 3 - The xPression Publishers
Feature
CompuSet
xPublish
Images: Arbitrary Rotation
Not supported
√
Images: Cropping
Not supported
√
PDF Features: Image Resampling
Not supported
√
PDF Features: Compression Control
Not supported
√
PDF Features: Fillable PDF
Not supported
√
PDF Features: Font embedding with
Subsets
Not supported
√
PDF Features: Do Not Embed Font Option
√
√
PDF Features: Bookmarks
√
√
PDF Features: PDF Properties
√
√
PDF Features: Security
√
√
AFP Features: Do Not Embed Font Option
√
√
AFP Features: TLE
√
√
AFP Features: NOOP
√
Not supported
Not supported
√
√
√
√
√
Plain Text Emitter
Not supported
√
TIFF Emitter
Not supported
√
VIPP Emitter
√
Not supported
Software Simplex
√
√
Built-In System Functions
√
√
PostScript Features: Image Resampling
PostScript Features: Do Not Embed Font
Option
PostScript Features: PDF Properties
Document Sciences Corporation
20
Chapter 3 - The xPression Publishers
Partitioning
xPublish supports the ability to start a new partition each time there is a change in a selected output variable. For
example, if you set up an output variable based on the customer’s zip code, xPublish will create a new partition
each time it encounters a new zip code. CompuSet does not support this feature.
Built-In System Functions
While both CompuSet and xPublish support system variables, xPublish has a far more robust set of built-in
functions than CompuSet.
Software Simplex
Software simplex mode enables the output device to remain in hardware duplex mode while xPression simulates
simplex mode by inserting blank pages. This is useful when you are running a mixed plex job where you don’t want
to change the hardware plex mode for a small amount of simplex pages.
Printer Support
CompuSet uses a proprietary method for supporting printers. As a result, a limited number of printers are
supported. xPublish uses a standards based approach that enables it to support thousands of printers.
Supported Printer Features
CompuSet and xPublish support the following printer features.
Feature
CompuSet
xPublish
Not supported
√
Stapling
√
√
Jogging of Output
√
√
Offsets
√
√
Producing printer console messages
√
Not supported
Printer commands
√
√
Not supported
√
Shingling
Markers
Document Sciences Corporation
21
Chapter 3 - The xPression Publishers
Differences in PDL Features
For xPublish TLEs are defined at the output stream level in an output definition. xPublish configuration of TLEs is
done entirely through the output definition page in xAdmin. For CompuSet, TLEs are defined manually through
commands placed in your properties file that must correspond to valid CompuSet index files in your document.
The following table shows the output formats currently supported by CompuSet and xPublish.
Feature
CompuSet
xPublish
√
√
Not supported
√
Metacode
√
Not supported
PCL
√
√
PDF
√
√
Xerox DocuPrint, DocuTech, and
Nuevera printers.
√
VPS
√
√
VIPP
√
Not supported
Not supported
√
AFP only
AFP only
AFP
HTML
Postscript
PDF Image Resolution
TLEs
AFP
xPublish and CompuSet both support “Comment” or NOPS AFP. This is more easily done with xPublish.
CompuSet requires special custom coding to support NOPS.
Document Sciences Corporation
22
Chapter 3 - The xPression Publishers
Support for Previous Versions
The CompuSet publishing engine was used exclusively by xPression releases prior to version 2.0. With version
2.0, xPression introduced a new composition engine: xPublish.
Feature
CompuSet
xPublish
xPression 1.0, 1.2, 1.2.1
√
Not supported
xPression 2.0 and above
√
√
Differences in Formatting Features
CompuSet supports many formatting features through the use of CompuSet command language. CompuSet tags
can be placed into your document using the hidden text feature of Microsoft Word. During processing, xPression
reads the CompuSet tags as commands and not as text.
xPublish supports most formatting features directly through Microsoft Word, eliminating the need for complex
coding and non-intuitive document design. Other features can be easily implemented through macros on the
xPression toolbar or through xDesign.
A complete list of supported/unsupported formatting functionality appears in the xDesign Style and Formatting
Guide.
Some key differences are listed below.
Feature
CompuSet
xPublish
Data Driven Charts
√
√
Image Rotation
√
√
Image Resizing
√
√
Headers and Footers
√
√
Special Characters
Additional configuration needed
√
Bulleted Lists
Additional configuration needed
√
Table of Contents
Additional configuration needed
√
Document Sciences Corporation
23
Chapter 3 - The xPression Publishers
Data Driven Charts
Both CompuSet and xPublish support creating data driven charts. The following paragraphs outline the differences
in how each publisher supports them.
CompuSet
To create data driven charts using the CompuSet composition engine, you’ll need to use CompuSet commands, as
there is no graphical user interface for the functionality. You should be familiar with CompuSet commands,
especially those required to produce charts. You must assemble and view the document to troubleshoot or refine
the chart.
xPublish
xPublish has a graphical user interface that makes creating and adding charts to your document fairly easy. You
can also create a template that you can use again and again. xPression places a placeholder chart, complete with
your formatting, in your document. You can move and adjust the placeholder charts as necessary, without having
to assemble the document first.
Headers and Footers
CompuSet and xPublish have the following differences in header and footer support.
Remittance Stub Formatting
Remittance stub formatting can be accomplished through CompuSet by creating three different footers. The footer
on the first page is the front of the remittance stub, the footer on the second page is the back of the stub, and the
footer on the third page is for all subsequent pages. In this situation, the content must flow naturally from the top of
page one, and onto page three. This can’t be resolved by section break logic, since in order to set a third page
footer, a section break requires knowing where the page will break. If the content being set is, for example,
transactional information of unknown length, there is no way to know at assembly time where the pages will break.
xPublish doesn’t support footer changes beyond a different first page, or different odd or even pages, when
content flows naturally beyond two pages. This is because footer changes are determined by page breaking
section breaks. This limits the ability to produce remittance stubs. If the content only flows to two pages maximum,
you can accomplish this through Word. If you are using xPublish, consider Creating an End-Page Stub.
Two-Column to One-Column Changes Across Page Boundaries
You may have a situation where variable content starts in one column of a two-column page (with other unrelated
content in the other column), and then flows on to the next page, where it must be in a one-column format. You can
accomplish this dynamically with CompuSet. This type of functionality is not supported in Word, and therefore, not
in xPublish.
Document Sciences Corporation
24
Chapter 3 - The xPression Publishers
Differences in Reporting/Logging
xPression provides a number of log files for both CompuSet and xPublish. For documents that are published
through CompuSet, additional log files are generated.
Reporting
CompuSet supports traditional reporting at the package, partition, and page sequence levels. xPublish supports a
more flexible type of reporting in the form of metadata. The metadata feature is called Generic Index, and it
provides four levels of reporting: stream, partition, package, and document. The generic index feature creates an
XML formatted index that lists values for all instances of all output variables in the output stream. When activated,
xPression creates the index each time the batch job is run. Generic index does not support document error counts.
Logging
xPublish uses a unified log file, the xPression.log Java log file. All messages are written to this log file. CompuSet
also uses the xPression.log file, but also uses separate logs for CompuSet and the emitter. The use of multiple
logs can make it difficult to locate the information you need.
However, CompuSet provides a detailed log of each composition, where any page errors are indicated, as well as
program versions and start/stop times. The emitters also provide detailed logs about each job. These details
include program version, widths file version, options in the widths file, other program options in affect, and images
and/or fonts being merged into the document. Any errors are also listed. The end of the emitter log shows the
details of font usage.
Document Sciences Corporation
Chapter 4
xPression Infrastructure Overview
4
This chapter introduces you to the xPression administration system. In this chapter we will review the xPression
architecture and design components from the perspective of a system administrator.
The xPression Server components interact to provide a seamless document design environment. This section
describes how each of the key components performs their functions within the document design and production
processes.
The Server Components
The xPression Server is the core of the xPression suite. It consists of the components required for assembling,
formatting, and distributing personalized documents. These components are written in Java and are hosted on
your Java application server. The use of Java in both the xPression components and the application server
enables xPression to deliver a multi-platform compatible application that runs on several different operating
systems, including: Windows, UNIX, and Linux systems. For a full list of supported operating systems and servers,
see your installation documentation.
Two of the main server functions are document assembly and batch processing.
Document Assembly
Document assembly is accomplished by an Enterprise Java Bean (EJB) component that runs in a container
provided by the application server. Multiple instances of the xPression Assemble EJB can be invoked to process
simultaneous document assembly requests.
This component handles the creation, personalization, and customization of documents. It reads and executes the
instructions in a Business Document Template (BDT) that is created by xDesign. The component then queries the
xPression database and customer data sources, and creates an assembled document based on the BDT’s
instructions.
Document Sciences Corporation
26
Chapter 4 - xPression Infrastructure Overview
Batch Processing
xPression’s batch capabilities enable you to take full advantage of xPression’s production speed and scalability to
print and distribute high volume customer communications. xPression processes the instructions in an XML job
definition (created in xDashboard) to determine which documents and which customer records to process. It then
assembles and publishes the document to complete the batch job. It can be scheduled to run at specific times
using the standard scheduling services of your operating system or third party batch scheduling software package.
xPression executes the directives specified in a batch job definition, which are maintained from xAdmin.
When processing a batch job, xPression accepts optional command line arguments and communicates primarily
with three server components: the Customer Data Reader, xPression Assembly, and the Output Profile Controller.
Batch Job Definitions generated by xDashboard are stored in the xPression database; manually composed Job
Definitions are stored in a file passed to the batch process from the command line.
For more information on how xPression Batch works, see the xDashboard User Guide.
The Application Components
xPression’s application components enable the user to set up the xPression environment and to design and review
documents. The application components are included in other core areas of xPression and have been explained in
previous sections.
The Data Components
There are two xPression data components, the customer data xPression uses as input to your personalized
documents (customer data), and the resulting content and images stored by xPression document design tools
(xPression database).
Customer Data
Customer data is the information stored in a customer’s database that enables a document designer to
personalize documents. Customer data is provided to xPression in XML format or from a relational database.
xPression can read any XML structure using XSD (XML Schema Definition) to define the schema and xPath to the
data’s location within the XML tree. The Customer Data Reader component reads and extracts the data from the
customer data files.
Document Sciences Corporation
27
Chapter 4 - xPression Infrastructure Overview
Poorly designed data sources can inhibit xPression’s performance. Ensure that you use sound data design
practices when creating your customer data.
Note: There is a limit to the lengths of individual String type data fields from your customer
data. For relational databases (RDB), the character length limitation is 255 characters for most
RDB vendor databases. For XML data, xPression supports up to 4000 characters in an
individual data field.
The xPression database
The xPression database is a fully indexed relational database that holds content, images, document templates,
rules, and internal xPression data. In an unclustered environment, there is one xPression database in each
xPression installation. For a clustered environment, one xPression database is used by all xPression Servers
participating in the cluster. The xPression database holds different types of information: xPression data objects,
rules, text objects (documents), and binary objects (images). The xPression database is hosted on a relational
database.
The File Components
xPression uses a variety of files to define content inclusion, gather items for assembly, define the specifics of the
output, and store the assembled documents.
The File Components are:
•
Business Document Templates (BDT)
•
Assembly List
•
Output Profiles
•
Assembled Documents
Business Document Templates (BDT)
The Business Document Template is an XML document produced by xDesign when you create a document. It
consists of a set of instructions that tells xPression what content to include in a document, how the document
should be formatted, and how to personalize each customer’s output. The BDT is based on the business logic you
defined while creating a document in xDesign. The BDT queries the customer data and xPression database using
statements, logical operations and arithmetic functions. A BDT can also be thought of as a scripting language and
is sometimes referred to as BDT syntax.
Document Sciences Corporation
28
Chapter 4 - xPression Infrastructure Overview
Assembly List
The Assembly engine is a stateful EJB that runs within a container provided by the Java application server. It
interfaces with other xPression components (xPression Batch, the Output Profile Controller, the Customer Data
Reader, and the xPression database) to gather the data necessary to personalize, assemble, and format your
documents.
The Assembly List is an XML file produced by the Assembly engine after reading and executing the instructions
found in a BDT for a given customer record. It contains all the instructions needed by xPression to produce your
personalized output.
An assembly list is always specific to one and only one input record of data. A BDT is a template for producing
many assembly lists, one for each record of data. xPression creates assembly lists by applying one and only one
record of input data to a BDT.
Output Profiles
Output profiles contain the instructions used to define how a document is formatted and distributed. The output
profile container associates output streams with distribution and format or output definitions. An output stream
defines what is included within a stream and how that stream is produced. A distribution definition provides devicespecific information based on the intended output (for example, an e-mail distribution definition contains
information for the To, From, and Subject fields). A format definition provides formatting-specific information such
as font files and designated output format selections (for example, AFP, PostScript, PDF, Metacode, or PCL).
Assembled Documents
An assembled document is output generated by the Assembly engine containing the personalized content for the
customer. It functions as intermediate code that is read and executed by xPression to generate the final document
for delivery to the customer.
xPression Software Components
In addition to the core components of the xPression architecture discussed in previous sections of this chapter, a
number of other software modules provide functionality in various areas of xPression.
This section briefly explains the software components that complete the xPression architecture:
•
The Distribution Controller
•
The Security Controller
•
Customer Data Reader
•
Output Profile Controller
Document Sciences Corporation
29
Chapter 4 - xPression Infrastructure Overview
•
Composition Engines
•
Batch Runner
•
xFramework API
•
The Migrate Utility
The Distribution Controller
The distribution controller interfaces with the supported distribution channels in xPression, including SMTP e-mail,
print, and archive output formats. The distribution controller is a stateless session EJB which operates
asynchronously through a queuing mechanism to ensure reliable delivery of output to channels that do not reliably
support multi-threaded input. This controller determines the appropriate distribution channel based on information
received from the output profile controller.
The Security Controller
The security controller is a stateless EJB responsible for setting and controlling access rights to xPression as well
as interfacing with network security systems for authentication services. Additionally, this controller uses EJB
protection to ensure that only authorized components and users can access the public interfaces of certain EJBs.
Customer Data Reader
The customer data reader is a multi-threaded Java component used by the Assembly engine, Batch Runner,
xDesign, xRevise, and xResponse to query and retrieve customer data. It is the single interface for accessing the
customer data stored in an RDB or XML document. It translates Java objects into SQL code customized for the
vendor’s adaptation of SQL, as opposed to executing raw SQL statements directly against the database, allowing
xPression to be database independent.
The customer data reader creates an in-memory database that stores the retrieved data facilitating XML queries.
This functionality also enables the document designer to develop a single document that can be used with a
variety of data sources depending on the business need.
Output Profile Controller
The output profile controller (OPC) is a Java component that reads and processes the information located inside
an Output Profile in order to determine how a document should be formatted, composed, published, and
distributed. The OPC is responsible for a variety of tasks, including but not limited to the generation of output
streams, bar codes, archive files, and indices.
Composition Engines
xPression has two composition engines, CompuSet and xPublish. The composition engines create the final layout
and formatting of the assembled documents and produces the personalized documents in the format specified by
the OPC.
Document Sciences Corporation
30
Chapter 4 - xPression Infrastructure Overview
The composition engine consists of two primary components: an output processing engine and an emitter for each
supported output format. The xPression composition engines support different features and different output
formats. For more information, see The xPression Publishers.
Batch Runner
The Batch Runner is a Java component responsible for the unattended processing of large volumes of documents.
It can be started manually from the command line, from xDashboard, or scheduled to start at a specified time
through the operating system’s scheduling services.
Batch Runner can execute in either single-threaded or multi-threaded mode, depending on the server
configuration and composition engine. It manages the processing of multiple documents by invoking one or more
threads of the customer data reader and the Assembly engine to execute batch jobs in parallel threads. It
interfaces with the output profile controller and the distribution controller to deliver the requested output to the
desired channels.
Processing instructions are delivered to the xPression batch through an XML job definition. The job definition can
be generated either manually or through xDashboard.
xFramework API
xFramework is the Application Programming Interface (API) for xPression. It enables you to build a custom
interface to xPression assembly and distribution related services. The xFramework components are: fastpath, the
Web services API, the JAVA API, and the EAI Adapter.
Fastpath to xResponse and xRevise
Fastpath enables you to integrate xPression web applications with client web applications.
WebServices API
xPression ships five Web services targeted for different API usage needs. In order to utilize a Web Service, you
must obtain a description of the Web Service interface via the WSDL. The Web services API is a platform
independent API callable by Java code and .NET Visual Studio.
Java API
The Java API is available for Java client code only. In order to use the xPression Java API, you must precisely
match the Java client program you write with the xPression Server you will connect to by copying the Java Archive
(JAR) files. xPression supports near-time messaging through the JMS standard.
EAI Adapter
Used for enhanced integration scenarios, for example, JMS and file loading.
Document Sciences Corporation
31
Chapter 4 - xPression Infrastructure Overview
xPression Web Services
Web services enable you to run programs on remote computers over the Web. However, unlike traditional
distributed applications, Web services can be invoked across different hardware and software platforms. The
technology that makes invoking remote components possible is called Simple Object Access Protocol (SOAP).
The client application constructs a SOAP “message” in XML format that includes the name of the service, the
method the client is invoking, and all required parameters. It then sends the message over the Web to the remote
computer. The remote computer processes the request and sends back a SOAP “response,” indicating whether
the call completed successfully and including attachments, if necessary.
xPression Java API
The xFramework Developer’s Guide helps you write xPression applications using the xPression high-level Java
API.
The Migrate Utility
The Migrate Utility provides an easy method of transferring documents and their related objects from one
xPression server to another. This ability is useful in situations where one xPression server is being used in a
development environment and another is being used in a production environment. With the Migrate utility you can
retrieve documents created in development and import them into production. Migrate also enables you to separate
export and import into individual functions.
To alleviate the process of recreating your output profile and batch job settings on the server you migrate to,
xPression Migrate enables you to migrate these settings in the same fashion.
The Migrate utility can be executed manually from xAdmin or scheduled to run at a specified date and time using
the operating system’s scheduling services. Input to a scheduled migration is an XML Migrate Definition which can
either be generated manually or through xAdmin.
Enterprise Content Management (ECM) Integration
xPression supports two ECM systems, Documentum and Filenet. Both systems require special installation and
configuration steps.
Documentum Integration
Documentum is an enterprise content management system. It is a popular platform and repository used to create,
manage, deliver, and archive content. Documentum excels in managing the entire content life-cycle processes
from content creation, management, to content aging and eventual obsolescence. Document Sciences excels in
the creation, automated assembly, and delivery of highly personalized documents for high-volume batch and
scalable online access. Together, these two solutions provide a powerful “end-to-end” solution to the financial
Document Sciences Corporation
32
Chapter 4 - xPression Infrastructure Overview
services industry for automating and streamlining dynamic content creation, personalization, management,
repurposing, and publishing.
To learn how to configure your xPression environment for Documentum, see the xPression Enterprise Edition
Installation Guide.
Documents Best-Suited for Documentum Integration
Very complicated, compliant, highly customized and personalized documents, such as:
•
Proposals and quotes
•
Policies and contracts
•
Explanation of Benefits (EOBs)
•
Claims correspondences
•
Member kits and marketing collateral
Documents that require multi-channel distribution, such as:
•
Personalized print documents like policies and contracts in large volumes
•
On-line self-service mechanisms for quotes and e-bills
•
Archived copies of regulated documents
•
Email, regular mail, or web portal correspondences
Also, Documentum integration supports the ability to re use enterprise content fragments used in these
documents, such as:
•
Images
•
Logos
•
Signatures
•
Text content
•
Marketing messages
How Does xPression Use Documentum?
xPression supports Documentum Content Server version 5.3. With Documentum integration, you can:
•
Archive your xPression-generated documents in a Documentum docbase. This feature works for both
xPublish and CompuSet documents. For more information about Documentum archiving, see the xAdmin
Enterprise Edition User Guide for xPublish Distribution Definitions and CompuSet Distribution Definitions.
Document Sciences Corporation
33
Chapter 4 - xPression Infrastructure Overview
•
Pull images and PDFs from your Documentum docbase for use in your xPression documents. This feature
applies only to xPublish documents. You can import Documentum images into your xPression document
through two different methods. One method inserts an image reference in the document, which enables
xPression to retrieve the most recent version of the image from the docbase each time the image is used.
The other method enables you to import the Documentum image into the xPression database, where it will
be treated as an xPression image. For more information about Documentum images, see the xDesign
Style and Formatting Guide.
Filenet Integration
xPression supports FileNet P8 verions 3.5 and 4.0. Filenet can be used to archive images and PDF documents
that you can use as external content in your documents. You can use multiple FileNet archives, and you can use
FileNet along with Documentum.
xPression does not directly support online archiving with FileNet. xPression supports exporting archive index files
in the FileNet Capture, FileNet HPII, and Generic Index formats. FileNet provides robust utilities that allow you to
capture content from xPression using these archive outputs. Refer to the xAdmin Enterprise Edition User Guide for
more information on archive output formats, and to your FileNet documentation for more information on the FileNet
utilities.
Document Sciences Corporation
Chapter 5
Application Components
5
This chapter introduces you to the xPression applications. We will introduce each application and also explain how
these components work together to enable you to create and publish your personalized documents.
Transactional Applications
The xPression Enterprise Edition contains two transactional applications enable to you produce documents for
your customers on-the-fly. The two transactional applications are xResponse and xRevise.
xResponse
xResponse is a web-based application that provides secure online transactional services for creating, editing, and
publishing personalized xPression documents from Web browsers.
xResponse currently allows you to choose between two editing technologies depending upon the level of editing
required by your users. Use the Java applet editor for simple editing tasks. This editor does not require a Microsoft
Word license installed on each xResponse desktop. For heavier editing tasks, you can select the Microsoft Wordbased editor for a richer editing experience.
Document Sciences Corporation
35
Chapter 5 - Application Components
xResponse enables you to respond quickly to customer inquiries with personalized, fully-compliant
communications. It easily integrates with your CRM system and enables you to assemble and distribute approved
documents.
Figure 4. The
xResponse
application
interface.
For more information, see the xResponse User Guide.
xRevise
xRevise is a browser-based application that enables swift production of custom documents through a searchable
library of customized text and attributes. It enables you to modify the text of standard documents to reflect your
negotiations with specific customers. It also provides secure access to preview and edit the content of an
Document Sciences Corporation
36
Chapter 5 - Application Components
assembled xPression document with your choice of two editors. Figure 5 shows the .NET-powered editor using the
Microsoft Word 2003 Professional technology required to be installed on each xRevise user's desktop
Figure 5. xRevise
editor page.
For more information, see the xRevise Reference Guide.
Administration Applications
The xPression Enterprise Edition administrative applications are browser-based applications that enable you to
administer all aspects of the xPression system.
xAdmin
xAdmin is the browser-based administration console that enables you to easily configure and maintain all aspects
of the xPression system from any Web-enabled client connected to your network. As the system administrator,
Document Sciences Corporation
37
Chapter 5 - Application Components
xAdmin will be the tool you use to administer your xPression environment. xAdmin organizes administrative tasks
into six sections located on the xAdmin menu.
Figure 6. xAdmin
start page.
xAdmin does not support concurrent users. While more than one user may log in to xAdmin, it is not recommended
because changes made by one user could overwrite the changes made by another concurrent user.
xDashboard
xDashboard is a thin-client application that enables you to run and administer the batch capabilities of xPression
and manage the xPression Server.
Figure 7. The
xDashboard
interface.
For more information, see the xDashboard Enterprise Edition User Guide.
Document Sciences Corporation
38
Chapter 5 - Application Components
The xPression Document Design Applications
The document design applications enable you to build your document structure and layout.
xDesign
xDesign is a Microsoft Word-based authoring tool for xPression. It enables you to design, create, and test your
document. You use xDesign to define business logic, or business rules, that include or exclude portions of content
based on the information contained in your customer data. xPression stores the content, images, and other
document information you create in a single xPression database.
Figure 8. With
xDesign, you build
your structure in the
xDesign application
and design your
document in
Microsoft Word.
Through its interface with Microsoft Word, you’ll create and maintain the document structure, content, page layout,
and other items that affect the overall “look and feel” of your documents. For more xDesign information, see the
xDesign User Guide.
xPresso for Adobe InDesign
xPresso for Adobe InDesign uses your existing digital assets to help you quickly design, compose and publish
personalized communications for print or electronic channels. Because it is easy to use, you can craft rich,
effective marketing collateral and campaigns, without sacrificing other marketing priorities.
With xPresso for Adobe InDesign you can transform your existing static documents into highly-creative, dynamic
customer communications right at your desktop. Our dynamic content publishing solutions use variable data and
Document Sciences Corporation
39
Chapter 5 - Application Components
assembly logic to generate templates for producing personalized collateral, offers, catalogs, and other customer
communications, ready for delivery. For more information, see the xPresso for Adobe InDesign User Guide.
xPresso for Dreamweaver
xPresso for Dreamweaver is part of the xPression product suite, and is designed to help you create graphical,
customized, and personalized HTML Web pages or e-mail messages that contain a variety of content. Content can
range from correspondence that contains graphical marketing content and brand images, to account alerts or
statements that drive the recipient to a personalized Web site also created in xPresso for Dreamweaver. For more
information, see the xPresso for Dreamweaver User Guide.
xPresso for Microsoft Word 2007
The widespread use of Microsoft Office provides every user with the ability to create client facing documents, from
letters to proposals to contracts. However, personalizing these documents and customizing them for thousands or
millions of recipients can be a challenge. xPresso for Word 2007 enables you to use your variable data to create
professional, highly customized and personalized proposals, contracts, invoices and correspondence. Additionally,
xPression can format and distribute these documents for print, web, e-mail or archive, without needing to change
the document template. xPression’s intelligent rule-based logic automatically customizes each document for each
recipient, producing unparalleled 1:1 customer communications.
Figure 9. xPresso
for Word 2007
leverages the new
features of Microsoft
Word 2007,
providing a suite of
powerful editing
tools.
Document Sciences Corporation
40
Chapter 5 - Application Components
xPresso for Word 2007 adds variability to new or existing Word documents. It also makes it easy to define
assembly logic that controls content and style variability at any level of granularity. When finalized, xPresso
templates are packaged for publishing on the xPRS server.
Key benefits include:
•
Supports a breadth of native, flow-based composition features created using the Word 2007 interface,
such as, tables, columns, numbered lists, bulleted lists, TOC’s, page numbering and more.
•
Leverage the power of XML to enable interoperability with a wide range of systems.
•
Subdocuments to enable you to include one document within another.
•
SEQ field support for complex numbered lists.
•
Column balancing
•
Fillable PDFs that enable check boxes, text boxes, and combo boxes.
•
Enhanced tab settings, widow and orphan control.
•
Scaling of external images.
•
Streamlined licensing process.
For more information, see the xPresso for Microsoft Word 2007 User Guide.
Document Sciences Corporation
Chapter 6
Server Configurations
6
This chapter takes a look at server configurations and includes some configuration recommendations that are
based on your processing requirements.
xPression Deployment Overview
The following diagram shows xPression deployed in a typical configuration.
Figure 10. xPressio
n deployment
diagram.
This diagram shows xPression running with three separate environments, Production, User Acceptance Test
(UAT), and a Test environment. The UAT environment is optional, but recommended. You may host the UAT and
Test content repositories on a test database server. The diagram above shows the UAT and Test content
Document Sciences Corporation
42
Chapter 6 - Server Configurations
repositories on a single database server for simplicity. Each environment requires their own xPression database
hosted on the xPression database server.
In a standard tiered development model, all documents are developed first in test, then migrated to UAT with
xPression Migrate. When testing is completed in UAT, use xPression Migrate to move the application to
production.
Document Sciences recommends that you have at least two production servers horizontally clustered to support
failover and fault tolerance on commodity hardware.
Clients will vary based upon each deployment. The clients shown above are just examples.
xDesign Deployment
xDesign runs as a thick client executable on document designer workstations. It is a VB6 application used heavily
in the development environment, lightly in the testing environment, and not typically used at all in the production
environment.
Most of the functionality of xDesign is performed on the server side, for example document assembly, xPression
database access, and search. xDesign communicates with the server either through HTTP using servlets
(recommended) or through RMI over TCP/IP. RMI communication does not go through proxies and firewalls and
thus is less universally available. RMI mode also requires a small WebSphere or WebLogic client application to run
Java on the client machine.
If configured for HTTP/Servlet mode communications, xPression only needs to load a DLL that contains the
xFramework COM API. See “Connectivity to Other Components” on page 46.
In the development and UAT environments, the xDesign client application requires frequent, high-bandwidth, and
(most importantly) low latency network access to the xPression server. Network connectivity between the xDesign
desktops and the server must be fast and reliable.
If there are proxy servers inserted in the connection between client applications and the server, you should test
your connection because the software may need to be configured to handle the specific proxy.
It is important to take into account performance when designing document templates in order to avoid excessive
access to the xPression database or data manipulation, for example multi-Joins.
xPresso for Adobe InDesign Deployment
xPresso for Adobe InDesign is a plug-in for Adobe’s InDesign CS2 or CS3 software that enables you to create
dynamic documents driven by variable data. For deployment instructions, please see the xPresso for Adobe
InDesign Installer’s Handbook.
Document Sciences Corporation
43
Chapter 6 - Server Configurations
xPresso for Dreamweaver Deployment
xPresso for Dreamweaver enables you to use Macromedia Dreamweaver to design dynamic, rule-based
documents. xPresso for Dreamweaver is part of the xPression product suite, and is designed to use your existing
digital assets to help you quickly design, compose and publish highly targeted and segmented communications.
You can also easily create well designed relationship statements and billing notices that combine transactional
data with targeted marketing messages. For deployment instructions, please see the xPresso for Dreamweaver
Installer’s Handbook.
Server Deployment
The xPression server runs within a Java EE application server (IBM WebSphere, BEA Weblogic, or Redhat
JBoss). The server components run within the application server process on the application server machine. The
CompuSet and CompuSet emitter are called through JNI, the Java standard for integrating native code with Java
code.
The batchrunner application also runs as a separate Java process on the application server machine. xPression
uses one Java server for each batchrunner instantiation. The Java process communicates with the application
server Java process to execute batch jobs. Depending on the nature of the batch job, the batch runner may also
execute the composition engine directly.
xPression Database Deployment
The xPression database stores all internal content (text, images, and meta data). External images and PDF
attachments remain outside the xPression database. Each xPression environment requires a separate xPression
database. However, the xPression database for the development and the UAT can be deployed on the same
database server. The production xPression database must be deployed on a separate machine to avoid any
performance problems or inadvertent corruption during testing or development.
xPression database is impacted by indexing and so the customer must ensure that proper indexing is performed
based on the installation guidelines that will be provided. In addition, indexing of customer data may be needed to
improve performance if the customer data comes from a relational database system.
Planning Your xPression Configuration
The xPression installation program installs all the server components. Before you install the server, you should
determine how to best deploy your xPression software. The main decisions you need to make are the following.
Will you run batch processing and online transactional processing on the same set of computers?
You can use this approach unless you want the server to process very high volume batch jobs at the same time as
handling a large number of concurrent online/transactional users. xPression Batch can consume many processor
threads for each batch job and can quickly consume the CPU resources of your system. Running xPression Batch
Document Sciences Corporation
44
Chapter 6 - Server Configurations
at the same time as online/transactional requests can significantly delay the response time of those requests if you
do not have sufficient CPUs available on your server.
Will you run the application server with all the xPression Server components on the same computers as
the xPression database?
We recommend that you separate the installations of the application server and the xPression database.
Typically, you should run your xPression database on a single large machine (perhaps with another failover
redundant machine) and optimize that machine for processing as many connections to the database as possible.
The application server should run on a single large machine or a farm of medium-size machines in a cluster to take
advantage of failover and load balancing facilities offered by the application server.
If the application server and xPression database reside on different sets of machines or networks, we recommend
that these machines or networks be connected with a high-speed connectivity of at least 1GBps with a maximum
latency of 1ms. A slow or over-utilized network connection between the xPression Server and the xPression
database may impact performance significantly.
Suggested Server Configurations
The issues discussed in Planning Your xPression Configuration have a large effect on your xPression server
hardware choices.
The amount of memory available to the xPression Server greatly impacts the performance of that server. Ensure
that your xPression Server machine has ample memory and that other memory intensive applications are not run
on the same server.
You must also ensure that the server contains sufficient disk space to support output management. Document
formats like Postscript tend to produce large files which can eventually deplete your server disk space. Ensure that
you set up a process for deleting these documents after they have been distributed through print, archive, or email.
Moderate-Sized Batch Volumes
If your volume needs are moderate (processing less than 50,000 pages an hour) and processing your batch jobs
typically does not coincide with running your online processing (for example, running batch jobs at night or on
weekends, and handling online requests during the business day), you can install all components of xPression
Server on a single medium-large size machine and the xPression database on another medium-large size
machine.
Document Sciences Corporation
45
Chapter 6 - Server Configurations
We recommend the following configuration for Microsoft Windows and Linux systems:
•
One Windows 2003 or Linux Server running 2 Dual Core or 1 Quad Core CPU (using the highest CPU
processing speed available) with at least 4 GB or more of RAM to run xPression Server with the
application server. This hardware should be completely dedicated to xPression, no other applications
should be run on this server. If the hardware is virtualized using a technology like VMWare, then you must
dedicate these resources to the xPression Server VM such that other VMs on that hardware cannot utilize
those CPU and memory resources.
•
A second Windows 2003 Server running 1 Dual Core or Quad Core CPU with at least 4 GB of RAM to run
the xPression database with your choice of relational database server.
For Sun Solaris server or IBM AIX:
•
One 4-CPU server running the highest CPU speed possible with at least 4 GB of RAM for xPression
Server. This hardware should be completely dedicated to xPression, no other applications should be run
on this server. If the hardware is virtualized using a technology like VMWare, Solaris containers, or AIX
virtual LPARs, then you must dedicate these resources to the xPression Server VM such that other VMs
on that hardware cannot utilize those CPU and memory resources.
•
One 2-CPU server with at least 4 GB of RAM for xPression database.
Large Batch Volumes with Moderate Transactional Processing
If your batch volume needs are large (processing more than 50,000 pages an hour) and batch job processing does
not coincide with running your online processing (for example, running batch jobs at night or on weekends, and
handling online requests during the business day), you can install all components of xPression Server on a single
large size machine and the xPression database on another large machine.
We recommend the following for Microsoft Windows or Linux systems:
•
One to two servers with 4 Dual Core or 2 Quad Core CPUs (highest processor speed available) with at
least 8 GB of RAM to run xPression Server with the application server.
•
One 4-CPU Windows or Linux Server (500 MHz or faster each) with at least 4 GB of RAM to run the
xPression database with your choice of relational database server.
For Sun Solaris server or IBM AIX:
•
One or two servers with a sum total of 8-16 CPUs and 8 GB of RAM.
•
One 4-CPU enterprise server with at least 4 GB of RAM for xPression database.
Document Sciences Corporation
46
Chapter 6 - Server Configurations
Large Batch Volumes with Large Transactional Processing
If both your batch and transactional volume needs are large and processing your batch jobs typically coincides
with running your online processing, you should separate your batch installation from your online installation. The
two installations can be similar. We recommend the following for Microsoft Windows in Linux :
•
Two or more servers with at least 2GB of RAM 4 Dual Core or 2 Quad Core CPUs (highest processing
speed available) and at least 8 GB of RAM to run the xPression Server with the application server.
•
One 4-CPU Server with at least 4 GB of RAM to run the xPression database with your choice of relational
database server.
For Sun Solaris server or IBM AIX:
•
One or more servers with a total of 12-24 CPUs available and a combined 16 GB of RAM for xPression
Server.
•
One 4-CPU enterprise server with at least 4 GB of RAM for xPression database.
Connectivity to Other Components
We provide two mechanisms for xPression’s web-based and fat client applications to communicate with the
xPression Server: HTTP through servlets and Remote Method Invocation (RMI).
The servlet method is more portable and universally applicable, but tends to be slower. The RMI method can only
operate if no firewall exists between the client and the server. RMI tends to be faster than the servlet method, but
requires installation of the Websphere or WebLogic client software on the client machine.
xDesign connects to xPression Server components and xPression database components through a COM to EJB
bridge.
We recommend that all xPression Server and xPression database components run within the same local area
network (LAN) with no firewalls between them.
xPression Client Session State
This section applies to customers deploying xPression to more than one xPression application server connected to
the same xPression database. xPression Enterprise Edition maintains a session state for most xPression Server
clients. Should you decide to load balance xPression Server clients (like xDesign, xResponse, xRevise) you must
use a mechanism which preserves session state across multiple calls between the client and server. Typically this
is done for you by your application server, web server, and/or load balancer of choice and through the use of HTTP
cookies. Whatever infrastructure you choose to run, it must support the Java EE standard for HTTP session state,
the standard xPression supports for client session state.
Document Sciences Corporation
47
Chapter 6 - Server Configurations
Server Affinity
xPression requires server affinity for session state as described above. Session requests from the various
xPression client applications must be directed to the same application server JVM instance. xPression uses
several stateful session beans to improve performance. xPression Web-based and thick clients (for example,
xDesign) call these stateful session beans.
These stateful session beans maintain various pieces of information in memory in order to speed up processing.
This requires the client sessions to use the same stateful bean instance and the connection to the same server.
Document Sciences Corporation
© 2011 - 2013 EMC Corporation. All Rights Reserved.
EMC believes the information in this publication is accurate as of its publication date. The information is subject to change
without
notice.
THE INFORMATION IN THIS PUBLICATION IS PROVIDED “AS IS.” EMC CORPORATION MAKES NO
REPRESENTATIONS OR
WARRANTIES OF ANY KIND WITH RESPECT TO THE INFORMATION IN THIS PUBLICATION, AND
SPECIFICALLY
DISCLAIMS IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Use, copying, and distribution of any EMC software described in this publication requires an applicable software license.
EMC2, EMC, and the EMC logo are registered trademarks or trademarks of EMC Corporation in the United State and other
countries.
All other trademarks used herein are the property of their respective owners.