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.
© Copyright 2024