Palette Reference

Palette Reference
TIBCO BusinessWorks™ Container Edition
Palette Reference
Software Release 1.0.1
February 2016
Two-Second Advantage®
2
Important Information
SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH
EMBEDDED OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY
(OR PROVIDE LIMITED ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE. THE
EMBEDDED OR BUNDLED SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY ANY
OTHER TIBCO SOFTWARE OR FOR ANY OTHER PURPOSE.
USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS AND
CONDITIONS OF A LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTED
SOFTWARE LICENSE AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT, THE
CLICKWRAP END USER LICENSE AGREEMENT WHICH IS DISPLAYED DURING DOWNLOAD
OR INSTALLATION OF THE SOFTWARE (AND WHICH IS DUPLICATED IN THE LICENSE FILE)
OR IF THERE IS NO SUCH SOFTWARE LICENSE AGREEMENT OR CLICKWRAP END USER
LICENSE AGREEMENT, THE LICENSE(S) LOCATED IN THE “LICENSE” FILE(S) OF THE
SOFTWARE. USE OF THIS DOCUMENT IS SUBJECT TO THOSE TERMS AND CONDITIONS, AND
YOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE OF AND AN AGREEMENT TO BE
BOUND BY THE SAME.
This document contains confidential information that is subject to U.S. and international copyright laws
and treaties. No part of this document may be reproduced in any form without the written
authorization of TIBCO Software Inc.
TIBCO, TIBCO ActiveMatrix BusinessWorks, TIBCO Rendezvous, TIBCO Enterprise Message Service,
TIBCO Business Studio, TIBCO Enterprise Administrator, TIBCO ActiveSpaces, TIBCO Runtime Agent,
TIBCO Designer, TIBCO BusinessWorks Container Edition, TIBCO BusinessWorks Studio Container
Edition and Two-Second Advantage are either registered trademarks or trademarks of TIBCO Software
Inc. in the United States and/or other countries.
Enterprise Java Beans (EJB), Java Platform Enterprise Edition (Java EE), Java 2 Platform Enterprise
Edition (J2EE), and all Java-based trademarks and logos are trademarks or registered trademarks of
Oracle Corporation in the U.S. and other countries.
All other product and company names and marks mentioned in this document are the property of their
respective owners and are mentioned for identification purposes only.
THIS SOFTWARE MAY BE AVAILABLE ON MULTIPLE OPERATING SYSTEMS. HOWEVER, NOT
ALL OPERATING SYSTEM PLATFORMS FOR A SPECIFIC SOFTWARE VERSION ARE RELEASED
AT THE SAME TIME. SEE THE README FILE FOR THE AVAILABILITY OF THIS SOFTWARE
VERSION ON A SPECIFIC OPERATING SYSTEM PLATFORM.
THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER
EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.
THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL
ERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESE
CHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCO
SOFTWARE INC. MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S)
AND/OR THE PROGRAM(S) DESCRIBED IN THIS DOCUMENT AT ANY TIME.
THE CONTENTS OF THIS DOCUMENT MAY BE MODIFIED AND/OR QUALIFIED, DIRECTLY OR
INDIRECTLY, BY OTHER DOCUMENTATION WHICH ACCOMPANIES THIS SOFTWARE,
INCLUDING BUT NOT LIMITED TO ANY RELEASE NOTES AND "READ ME" FILES.
Copyright © 2001-2015 TIBCO Software Inc. ALL RIGHTS RESERVED.
TIBCO Software Inc. Confidential Information
TIBCO BusinessWorks™ Container Edition Palette Reference
3
Contents
Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
TIBCO Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Changing Help Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Basic Activities Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Critical Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Constructor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Invoke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
For Each . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Iterate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Repeat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Repeat on Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
While . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Receive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Compensate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Empty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Get Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Rethrow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Reply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Set Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Set EPR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Throw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Local Transaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Binding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
REST Binding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Rest Service Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
REST Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
SOAP Binding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Generating Concrete WSDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
SOAP Service Binding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
SOAP Reference Binding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
General Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Assign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Call Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Confirm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Get Shared Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
TIBCO BusinessWorks™ Container Edition Palette Reference
4
Inspector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Mapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Set Shared Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Sleep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
HTTP Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
HTTP Receiver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Send HTTP Request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Sending Data in the HTTP Request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Send HTTP Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
JAVA Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73
Converting JAVA Class to XML Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Creating Custom XPath Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Using Custom XPath Function at Design Time and Run Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Deleting Custom XPath Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
JAVA Invoke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Java Process Starter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Java To XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
XML To Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
JDBC Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
JDBC Call Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
JDBC Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
JDBC Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
SQL Direct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
JMS Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .106
Common JMS Properties and Headers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Get JMS Queue Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
JMS Receive Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
JMS Request Reply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
JMS Send Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Reply to JMS Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Parse Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Parsing a Large Number of Records . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
MimeParser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Parse Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Render Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
REST and JSON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
BW JSON Utils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Invoke REST API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
TIBCO BusinessWorks™ Container Edition Palette Reference
5
Restrictions on XML Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Parse JSON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Render JSON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
XML Activities Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Parse XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Render XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Transform XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Shared Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
Data Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
HTTP Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
HTTP Connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Identity Provider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
JDBC Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
JMS Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
JNDI Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Java Global Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
Keystore Provider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Proxy Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
SSL Client Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Thread Pool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Activity Icons Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .177
TIBCO BusinessWorks™ Container Edition Palette Reference
6
Figures
Parsing a Text String into a Data Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
TIBCO BusinessWorks™ Container Edition Palette Reference
7
TIBCO Documentation
Documentation for this and other TIBCO products is available on the TIBCO Documentation site. This
site is updated more frequently than any documentation that might be included with the product. To
ensure that you are accessing the latest available help topics, please visit:
https://docs.tibco.com
Product-Specific Documentation
Documentation for TIBCO products is not bundled with the software. Instead, it is available on the
TIBCO Documentation site.
The following documents for this product can be found on the TIBCO Documentation site:
●
Concepts
●
Installation
●
Getting Started
●
Application Development
●
Palettes Reference
●
Samples
●
Error Codes
●
Conversion
How to Contact TIBCO Support
For comments or problems with this manual or the software it addresses, contact TIBCO Support:
●
For an overview of TIBCO Support, and information about getting started with TIBCO Support,
visit this site:
http://www.tibco.com/services/support
●
If you already have a valid maintenance or support contract, visit this site:
https://support.tibco.com
Entry to this site requires a user name and password. If you do not have a user name, you can
request one.
How to Join TIBCOmmunity
TIBCOmmunity is an online destination for TIBCO customers, partners, and resident experts. It is a
place to share and access the collective experience of the TIBCO community. TIBCOmmunity offers
forums, blogs, and access to a variety of resources. To register, go to the following web address:
https://www.tibcommunity.com
TIBCO BusinessWorks™ Container Edition Palette Reference
8
Changing Help Preferences
By default, documentation access from TIBCO Business Studio is online, through the TIBCO Product
Documentation site (Doc site) at https://docs.tibco.com/which contains the latest version of the
documentation. Check the Doc site frequently for updates. To access the product documentation
offline, download the documentation to a local directory or an internal web server and then change the
help preferences in TIBCO Business Studio.
Prerequisites
Before changing the help preferences to access documentation locally or from an internal web server,
download documentation from https://docs.tibco.com/.
1. Go to: https://docs.tibco.com/
2. In the Search field, enter ActiveMatrix
BusinessWorks
and press Enter.
3. Select the TIBCO ActiveMatrix BusinessWorks product from the list. This opens the product
documentation page for the latest version.
4. Click Download All.
5. A zip file containing the latest documentation downloads to your web browser's default download
location. Copy the zip file to a local directory or to an internal web server and then unzip the file.
To change help preferences on the Preferences dialog to access the documentation from a custom
location:
Procedure
1. In TIBCO Business Studio, click Window > Preferences. On Mac OS X, click TIBCO Business
Studio > Preferences.
2. In the Preferences dialog, click BusinessWorks > Help.
3. Click Custom Location and then click Browse to select the html directory in the folder where you
unzipped the documentation, or provide the URL to the html directory on your internal web server.
4. Click Apply and then click OK.
TIBCO BusinessWorks™ Container Edition Palette Reference
9
Basic Activities Palette
Basic activities are a simple means of interacting with a service, manipulating the passing data, or
handling exceptions. They also contain Loops that are Groups with Conditions, which follow a pattern
at run time such as, initialize the loop, update the loop at each iteration, and test conditions for the loop
to stop iterating. The available types of loops are: For Each, Iterate, Repeat, Repeat On Error, Scope,
and While.
Critical Section
Critical Section groups are used to synchronize process instances. The engine can execute multiple
process instances concurrently. You can use Critical Section groups to synchronize the set of actions
performed in the process across multiple process instances. Only one process instance can execute the
critical section group and its contents at any specified time. Other concurrently running process
instances that are associated with the corresponding critical section group wait at the start of the critical
section group, until the process instance that is currently executing complete the critical section group.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the group in the process.
Group Type
The type of the group. The default is Critical Section.
Timeout
The maximum time (in milliseconds) that a process instance waits at the start
of the critical section group while another process instance is executing the
critical section. When a timeout occurs, the process instance that is waiting to
execute the critical section fails with an Activity Timeout Exception.
The timeout field can be used to avoid deadlock situations.
Shared Lock
Select this check box to synchronize multiple critical section groups that use
the same shared variable as a lock.
Shared Variable
Type
The Shared Lock option can be defined using a Module Shared Variable or a
Job Shared Variable. When a module shared variable is used against job
shared variable to define Shared Lock, it has different implications.
Shared Variable
●
Module Shared Variable: provides a shared lock to synchronize process
instances from different processes that are within a module. Using a
module shared variable, you can synchronize multiple Critical Section
groups that can be part of different process instancse. These Critical
Section groups can be in the same process or in another process, provided
all processes are contained within a module.
●
Job Shared Variable: provides a shared lock to synchronize within a job.
Using a job shared variable, you can synchronize multiple Critical Section
groups that are part of the same job. These Critical Section groups can be
in the same process or in an another process, provided all process instances
are part of the same job.
Name of the Module Shared Variable or Job Shared Variable.
TIBCO BusinessWorks™ Container Edition Palette Reference
10
Description
Provide a short description for the group in this field.
Variables
The Variables tab provides a way to declare variables that are only limited to the scope of this group.
You can select from the following available Variable Type options:
●
String
●
Integer
●
Decimal
●
Boolean
●
Date&Time
Constructor
You must use the constructor for each class to instantiate that class.
Invoke
Invoke activity is an asynchronous activity that calls an operation of a process reference. The process
reference can be configured to invoke another process (subprocess) or invoke an external service
through a binding such as SOAP.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Service
Select the service for which to specify an operation.
Description
Provide a short description for the activity.
Advanced
The Advanced tab has the following field.
TIBCO BusinessWorks™ Container Edition Palette Reference
11
Input item
Activity
Timeout
(seconds)
Literal
Value/
Module
Property?
Yes
Description
The Invoke activity timeout in seconds. You can either select a preset
timeout (Default Timeout, 30, 60,or 120 seconds) or specify a custom
timeout in seconds.
If the Invoke activity is configured to be Default Timeout,
then the timeout value equates to "3" minutes by default.
When the Invoke activity timeouts, the in-line subprocess
instance called by the Invoke activity can be cancelled
before the subprocess instance completes. Hence, the
business logic in the cancelled process instance may not be
executed to its entirety.
Input
The following is the input for the activity.
Input item
Datatype
Description
input message
complex
The input message of the operation. This element contains all
the input message parts for the operation.
Output
The following is the output for the activity.
Outsput item
Datatype
Description
output message
complex
The output message for the operation. This element contains all
the output message parts for the operation.
For Each
The For Each group is a loop element that can be used for iterating through array elements. The For
Each activity is very useful to determine these array elements dynamically at run time.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Group Type
The type of group. The default is For Each.
Counter Name
The name of the counter or Index variable.
TIBCO BusinessWorks™ Container Edition Palette Reference
12
Field
Description
Start Counter Value
The start value for the counter ($index) which is specified through an XPath
expression. This can be a literal value.
Final Counter Value
The final value of the counter which is set using an XPath expression. This
value is obtained by the count of the number of elements of a specific type in
the request message.
Description
Provide a short description for the activity in this field.
Variables
A group of shared variables. Depending on the group selected in Group Type, Container displays the
group. For example, if the For Each group is selected in the Group Type field, it displays For Each in
Container. You can add multiple complex or simple types variables.
You can select from the following available Variable Type options:
●
String
●
Integer
●
Decimal
●
Boolean
●
Date&Time
Iterate
An Iterate group repeats the series of grouped activities once for every item in an existing sequence or
list. The list can be items of any datatype. The loop executes for the number of iterations specified.
This process performs the following operations:
1. A ReceiveRecords activity is use to receive a request. The request is then passed to the
ParseRecords activity.
2. The ParseRecords activity parses the request to XML records.
3. The group iterates once for each record returned by the ParseRecords activity, and write the records
to the database using the StoreRecords activity.
4. Once the iteration group is complete, the process transitions to the SendStatus activity to send the
status of the records.
TIBCO BusinessWorks™ Container Edition Palette Reference
13
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Group Type
The type of group. The default is Iterate.
Index Name
The index name.
Variable List
This field is an XPath expression. XPath is used to specify the schema element
you want to refer to.
Click the Edit XPath Expression
XPath Builder wizard.
icon to specify a value for this field in the
You can use a simple expression containing a complete list, or a more complex
one and only process certain items in the list.
Iteration Element
Provide a name for a process variable containing the current iteration element
in this field.
Global
When this check box is selected, the output is available for the activities outside
the loop.
Accumulate
Output
Select this check box to accumulate the output of one of the activities in a
group.
The output of the selected activity is accumulated each time the activity is
executed.
Output Activity
Select the activity from the group of activities to execute the loop.
Output Name
The name of the list of the accumulated output of the selected activity.
Description
Provide a short description for the activity in this field.
Variables
A group of shared variables. Depending on the group selected in Group Type, Container displays the
group. For example, if theIterate group is selected in the Group Type field, it displays Iterate in
Container. You can add multiple variables of complex or simple type.
You can select from the following available Variable Type options:
●
String
●
Integer
●
Decimal
●
Boolean
●
Date&Time
TIBCO BusinessWorks™ Container Edition Palette Reference
14
Repeat
The Repeat group activity is responsible for repeating the series of grouped activities until the specified
condition evaluates to true. The activities are always executed once before checking whether the
condition is true. After executing the series of activities, the initial evaluation of the condition is done,
and it repeats when the condition evaluates as true. The Repeat activity evaluates the loop's
conditional statement to determine whether or not more iterations of the loop are required.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Group Type
The type of group. The default is Repeat.
Index Name
Use this field to specify a name for the index variable.
Condition
The condition ($index) is specified through an XPath expression which can be a
literal value. Click the Edit XPath Expression button to set an XPath expression.
Description
Provide a short description for the group in this field.
Variables
A group of shared variables. The Container displays the group. This depends on the group selected in
Group Type. For example, if the Repeat group is selected in the Group Type field, it displays Repeat in
Container. You can add multiple variables of complex or simple type.
You can select from the following available Variable Type options:
●
String
●
Integer
●
Decimal
●
Boolean
●
Date&Time
Repeat on Error
Using the Repeat on Error group, you can repeat a series of activities when an unmanageable error
occurs. The activities in this group are executed once. If there are no unmanageable errors, the loop
terminates. If an error occurs for which there is no error transition, the condition of the loop is
evaluated. If the condition is true, the loop terminates. If the condition is false, the loop repeats until
there is no error or the condition is true.
General
The General tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
15
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Group Type
The type of group. The default is Repeat on Error.
Index Name
Use this field to specify a name for the index variable.
Stop Repeat
Condition
The condition specifies that the activities inside the Repeat On Error are performed
repeatedly until the condition evaluates to false.
Description
Provide a short description for the group in this field.
Variables
A group of shared variables. Depending on the group selected in the Group Type, the Container
displays the group. For example, if Repeat on Error group is selected in the Group Type field, it
displays RepeatOnError in Container. You can add multiple variables of complex or simple type.
You can select from the following available Variable Type options:
●
String
●
Integer
●
Decimal
●
Boolean
●
Date&Time
Scope
The Scope group comprises a collection of nested activities. Scope group is shared by all the nested
activities. You can use a Scope to contain a unit of work, by making it easy to manage, execute, and
revert. For example, if a customer cancels an online order, the money must be returned and the online
order canceled, without affecting other orders. You can use a Scope to manage these activities as a unit.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Group Type
The type of group. The default is Scope.
Description
Provide a short description for the group.
Variables
A group of shared variables. Depending on the group selected in the Group Type, the Container
displays the group. For example, if the Scope group is selected in the Group Type field, it displays
Scope in Container. You can add multiple variables of complex or simple type.
TIBCO BusinessWorks™ Container Edition Palette Reference
16
You can select from the following available Variable Type options:
●
String
●
Integer
●
Decimal
●
Boolean
●
Date&Time
While
The While activity repeats the series of grouped activities if the specified condition evaluates as true.
The condition is evaluated when the group is enters. If the condition evaluates to false, the activities
within the group are not executed.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Group Type
The type of group. The default is While.
Index Name
Use this field to specify a name for the index variable.
Condition
The condition ($index) is specified through an XPath expression which can be a
literal value. Click the Edit XPath Expression button to set an XPath
expression.
Description
Provide a short description for the group.
Variables
A group of shared variables. Depending on the group selected in the Group Type, Container displays
the group. For example, if the Scope group is selected in the Group Type field, it displays Scope in
Container. You can add multiple variables of complex or simple type.
You can select from the following available Variable Type options:
●
String
●
Integer
●
Decimal
●
Boolean
●
Date&Time
TIBCO BusinessWorks™ Container Edition Palette Reference
17
Receive
Receive activity initiates the process execution based on the receipt of a request message for an
operation of the process service.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Service
Select the process service and the operation from which to receive the request.
Description
Provide a short description for the activity.
Output Editor
The schema of the process variable must match the schema of the output of the activity shown on the
Output tab.
Output
Output Item
Datatype
Description
output
varies
The output of this activity is the incoming message from the
calling client or service. The structure of the message is
determined by the schema of the input message for the selected
operation on the General tab.
Compensate
Compensate activity is executed only from the compensation handlers when a fault is encountered
outside a scope (this scope will have compensation handler defined). This activity triggers
compensation handler for a scope present only on the same level. All activities present in scope get
executed successfully.
The compensation handlers are defined per scope. The compensation handlers of scopes that are
directly enclosed by the scope and contain Compensate activity, can be executed. The handlers execute
in reverse order, so the handler of the last completed scope is executed first. The compensation
handlers can only be defined on scope level.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
TIBCO BusinessWorks™ Container Edition Palette Reference
18
Description
Provide a short description for the activity.
Empty
An Empty activity denotes an activity with no action to be performed. You can specify the Name and
Description, but there is no input or output for this activity.
This activity is useful if you want to join multiple transition flows. For example, there are multiple
transitions out of an activity and each transition takes a different path in the process. In this scenario
you can create a transition from the activity at the end of each path to an Empty activity to resume a
single flow of execution in the process.
Exit
Exit activity is a synchronous activity that cancels any asynchronous activities that are in a waiting state
and terminate the process instance. You can specify the Name and Description, but there is no input or
output for this activity.
Get Context
Get Context activity retrieves the value of the specified context parameter. This is useful if your process
requires some context information from a request or a response.
GetContext activity must be placed after Invoke or Receive activity.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Direction
Select from the following available options to specify from where the context
information should be fetched:
●
Receive Service: pulls context information from a service request. Selecting this
option displays the Service field.
●
Return from Reference: pulls context information from a reference response.
Selecting this option displays the Reference field.
●
Fault from Reference: pulls context information from a reference fault response.
Service/
Reference
Select the targeted portType and operation from where the context information is to
be picked.
Fault
This field is displayed when Fault from Reference option is selected in the
Direction field.
Description
Provide a short description for the activity.
TIBCO BusinessWorks™ Container Edition Palette Reference
19
Output
The following is the output for the activity.
Output Item
Datatype
Description
<schema>
varies
The value of the context resource specified in the
Direction field of the General tab is the output for this
activity. The schema for the output is determined by the
schema specified for the context resource.
Rethrow
Rethrow activity is used within an exception-handling routine to throw the caught error again. This is
useful if you want to perform some processing within an error-handling routine, and also send it to the
next higher scope.
Reply
Reply activity is a synchronous activity that sends a message in response to a request message that was
received for an operation of a process service. This activity can be used to send a reply or a fault.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity.
Service
Select the process and the operations for which to send a response.
Reply With
Select from the following available options to send the reply message:
●
Output Message
●
Undeclared Fault
Description
Provide a short description for the activity.
Input Editor
The schema of the process variable must match the schema of the input for the activity shown on the
Input tab.
Input
Input Item
Datatype
Description
input
varies
The reply message to send. The schema depends on the output
message of the operation for this reply.
TIBCO BusinessWorks™ Container Edition Palette Reference
20
Set Context
Set Context activity can be used to set the value of a context information resource.
SetContext activity must be placed before Invoke or Receive activity.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Direction
Select from the following available options to specify where the context
information should be supplied:
●
Invoke Reference: Selecting this option displays the Reference tab.
●
Reply to Service: sends context information to a service. Selecting this option
displays the Service field.
●
Reply to Service with Fault: sends context information for a service fault
reply.
Service/
Reference
Select the targeted portType and operation where you want to supply the context
information.
Fault
This field is displayed when Reply to Service with Fault option is selected in the
Direction field.
Description
Provide a short description for the activity.
Input
The following is the input for the activity.
Input Item
Datatype
Description
input message
complex
The input message of the operation. This element contains all
input message parts for the operation.
Set EPR
Set EPR activity is a dynamic alternative to the static service element defined in the WSDL. To use an
incoming message, define the EPR schema as a part of the message in the WSDL.
An endpoint reference (EPR) combines web services elements that define the address for a resource in a
SOAP header. If you use an incoming message, an EPR schema should be defined as a part of the
message in WSDL.
General
The General tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
21
Field
Description
Name
The name to be displayed as the label for the activity.
Dynamic
Reference
The name of the dynamic target interface for which this task is supplying the
service name and namespace
Description
Provide a short description for the activity.
Input
The following is the input for the activity.
Input Item
Description
SimpleEndpointRefere
nce
Contains endpoint address information for the destination of the outgoing
message
Output
The following is the output for the activity.
Output Item
Description
EndpointReference
Contains the following elements:
●
Address: Endpoint address
●
Interface: The name of the dynamic target interface for which this task
is supplying the service name and namespace
Throw
Throw activity throws the specified fault and the control is passed to any error-handling routine
defined to handle the error. This activity is useful in a group or in a called process. You can use this
activity to catch and raise your own error conditions. The Throw activity is useful if an error in the
business logic occurs during processing.
General
The General has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Default Fault
Select this check box if you want the default message text and error code for
the error message.
This is reflected in the Input Editor and Input for this activity.
TIBCO BusinessWorks™ Container Edition Palette Reference
22
Description
Provide a short description for the activity.
Input Editor
Selecting the Default Fault check box displays the message and msgCode elements in the Input Editor.
Input
The following is the input for the activity.
Input Item
Datatype
Description
message
string
The text of the generated error message.
msgCode
string
The error code of the error message. This is used as an identifier
for the error for the applications to test for an error.
Fault
This activity does not produce any fault.
Local Transaction
Use Local Transaction group for multiple activities to be part of a local transaction. A local transaction
group ensures that all participants of the transaction are rolled back together. However, the local
transaction is not equivalent to an XA transaction and does not use a transaction coordinator. Instead, a
single resource performs all its transaction work.
Not all TIBCO ActiveMatrix BusinessWorks activities can participate in the local transaction. The
following core activity types have local transactional capabilities:
●
JMS
●
JDBC
A Local Transaction group has to be further configured as a specific type of a Local Transaction or
Transaction Transport. The Transaction Transport type determines the activities that can participate in
this local transaction group. For example, "JDBC" transaction transport only provides transaction
support for certain JDBC activities.
General
The General tab has the following fields.
Name
Description
Name
The name to be displayed as the label for the activity in the process.
TIBCO BusinessWorks™ Container Edition Palette Reference
23
Name
Description
Transaction
Transport
The transport type. Select from the following available transaction transport
types:
●
None
●
JMS: To configure a JMS local transaction, select JMS as the transaction
type of the group.
●
JDBC: To configure a JDBC transaction, select JDBC as the transaction
type of the group.
JMS
JMS activities participate in a transaction using the JMS local transaction. A JMS session, when specified
as transacted, supports a single series of JMS operations. The local transaction group enlists a set of
produced messages and a set of consumed messages into a unit of work. JMS local transactions use the
underlying JMS sessions to group together all the activities that are part of the transaction group into
one unit of work.
All activities using the same JMS connection are part of one transaction. If a transaction group contains
activities that use more than one JMS connection, for example, a JMS Send Message activity using
connection 1 and another JMS Send Message activity using connection 2, there are two underlying
transactions created.
Furthermore, activities must use the same messaging styles to be in the same transaction.
Possible deadlock situation: A deadlock situation arises if you have a JMS Send Message and a Get
JMS Queue Message activities performing JMS operations on the same queue. A message not sent out
until a commit is performed, keeps Get JMS Queue Message activity waiting indefinitely. It is
recommended not to have a design which sends and receives messages on the same destination using
the same session in a single transaction.
When a transaction commits, its input is acknowledged and the associated output is sent. When a
transaction rollback is done, all the produced messages (output stream) are destroyed and the
consumed messages (input stream) are automatically recovered. You can use the JMS sender activities
with the JMS local transaction. At run time, the underlying JMS activities use the same transacted JMS
session to provide transaction semantics for messages sent and received by the JMS activities. For more
information on JMS palette and activities, refer to JMS Palette.
JDBC
Using the JDBC transaction and multiple JDBC activities, you can access the same database connection
to participate in a transaction. Only JDBC activities that use the same JDBC Connection participate in
this transaction type. However, other activities can be part of the transaction group. If the transaction
commits, all JDBC activities using the same JDBC connection in the transaction group commit. If the
transaction rolls back, all JDBC activities using the same JDBC connection in the transaction group roll
back.
The transaction group commits automatically, if all activities in the group complete the transaction and
a non-error transition is taken out of the transaction group. If any error occurs while processing the
activities in the group, including errors in non-JDBC activities, it rolls back the transaction and returns
an error. Individual JDBC activities can override the default transaction behavior and commit
separately. For more information on JDBC palette and activities, refer to JDBC Palette.
TIBCO BusinessWorks™ Container Edition Palette Reference
24
Binding
Binding is used to establish a connection between SOA Services and their consumers. They are
communication gateways to connect to the external world. They follow a well-known communication
protocol that both client and service are aware of.
The two types of binding components are:
●
Service Binding: used to create and expose a service to the external world. The service can contain
one or more operations. Once exposed, the service can be consumed by its clients.
●
Reference Binding: used to create a client that can connect and communicate to an external service.
REST Binding
REST Binding provides external connectivity for REST over HTTP. You can specify custom HTTP
headers and parameters using REST binding. It supports GET, PUT, POST, and DELETE HTTP
methods. It also supports JSON, XML, and plain text message types.
Binding
This section has the following fields.
Field
Description
Resource
The name of the resource.
Resource Service
Path
Specify the path of the Service Resource.
HTTP Connector
Name
The name of the HTTP Connector.
Request Client
Format
The type of request message format.
Reply Client Format
Click on the HTTP Connector Name field to display details about
the HTTP Connector resource.
The two available request message type options are: Body and Form.
●
Body: Provides two request body format option: JSON and XML. Both or
any one of these options can be used.
●
Form: This option can be used to inject the parameters of a Web form into
a RESTful web service.
The type of reply message format.
The two available reply message format options are: JSON and XML.
Operations
This section shows the following details.
Field
Description
Name
The name of the HTTP method used, for example, GET, PUT, POST, and
DELETE.
TIBCO BusinessWorks™ Container Edition Palette Reference
25
Field
Description
Nickname
The specified name of the service, for example, getBooks.
Operation Details
This section shows the following details.
Field
Description
Summary
This tab has the following available options:
Request
●
Summary: The summary of the REST resource
●
HTTP Method: Displays the HTTP Method specified in the Operations
section. These are the available HTTP methods:
—
POST
—
GET
—
PUT
—
DELETE
Specifies the resource created, using the POST method.
Request and Response depend on the method selected.
TIBCO BusinessWorks™ Container Edition Palette Reference
26
Field
Description
Response
This tab has the following available options:
Response Status
●
Use HTTP Headers: Selecting this check box includes the REST Web
service application (or client) within the HTTP headers and body of a
request, all of the parameters, context, and data required by the serverside component to generate a response.
●
Use Custom Status Line: You can specify a custom status line (status
code and reason phrase) to the outgoing message. The codes used must
be defined in the configuration under the Response Status tab.
●
Response with Status Code Only: The operation returns a status code as
response, when this check box is selected. Message body is not required.
For example, using a POST operation returns a 201 status code which
means "Created" and responds with the resource URL.
●
Resource Schema: Displays the schema selected. This option is not
available when the Use Custom Status Line and Response with Status
Code Only check boxes are selected. These are the available options:
—
String
—
Integer
—
Boolean
—
XSD element: Selecting this option to either select the XSD schema
element available under the Schemas folder of your project or a
create new XML schema resource. Click Create New Schema to a
create new XML schema resource using the Simplified Schema Editor
wizard.
Specifies the response code for the operation and the code message. For
example, code 201 means Created or code 503 means Service Unavailable.
You can also add your own custom code and reason phrase.
Parameters
This section shows the following details.
Parameter Name
Type
Required
Parameter name of
the operation used
The parameter type. It can be any
one of the following:
Whether this parameter is required.
The available options are Yes or No.
●
String
●
Integer
●
Boolean
Working with Path and Query Parameters
TIBCO Businessworks Container Edition REST binding supports the use of path parameters for the
resource service path (for example, /books/{isbn} instead of /books} in the REST service. The user
must specify every parameter by enclosing it in brackets { }. For example, /book/{isbn} specifies
TIBCO BusinessWorks™ Container Edition Palette Reference
27
the user can have isbn as a parameter. The client invokes this service using the URL http:/
<host>:<port>/book/<isbn> where <isbn> is an actual value. Using the path parameters combined
with static URL, for example, /book/{isbn}/events, is also supported.
The Query and Path parameter names should not be same as the Form parameters name. For example,
if Form parameter contains name as one of its parameter, the following path and query parameters are
not allowed and throws an exception:
/resource/{name}
/resource?name={name}
All the parameters defined in the resource service path are made available to the user as an Input for
every operation. Refer to Support for Path and Query Parameters. See the following image for the /book/
{isbn} ) example to see the Input for the GET operation.
About Swagger UI
Using the Swagger UI you can visualize RESTful services. It specifies the format (URL, method, and
representation) to describe REST the web services.
Authentication support has been added to the REST binding. Hence, the Swagger UI displays Basic
Auth Username and Password fields, regardless of whether the Authenticate check box is selected or
not selected in REST binding.
Partial Response in REST
Using the Partial Response feature in REST, you can retrieve only the data you need, instead of bulk
data as a response. You can also request only those fields that are required as part of the response.
For example, in the Swagger UI to select the immediate children nodes of an object, specify the required
field names separated by comma such as ISBN, author, bookName, and so on.
The partial response feature uses a fields query parameter.
The fields keyword is reserved to be used internally by BusinessWorks Container Edition. Adding the
fields keyword as a query parameter automatically triggers support for partial responses.
Partial responses do not support selecting particular objects from an array. For example, using the
fields keyword for /books/isbn, the isbn's of all the books are returned.
Format: The values of the fields keyword can be a comma separated value of fields of the response
message. Fields can be specified directly, for example, using isbn or hierarchy /book/isbn.
TIBCO BusinessWorks™ Container Edition Palette Reference
28
Rest Service Wizard
Rest Service Wizard is used to create new Businessworks Rest Resource or add Rest Services to an
existing resource.
The Rest Service Wizard has the following fields:
Field
Description
Resource Name
The name of the BusinessWorks Container Edition REST Resource.
Summary
The summary or description of the REST Resource.
Resource Service
Path
The relative path for this REST Service.
Type of Resource
This field has two options: Collection or Single.
For example, Books is a collection resource and Book is a single resource. This
is dictated by the schema element used in the Resource Schema field.
Resource Schema
The XSD schema element to be used for creating the REST resource.
You can also use this to create the input and output of each operation
defined. You can override this on the next screen if required, for each
operation.
Operations
These are the HTTP methods implemented by this REST Service.
Currently BusinessWorks Container Edition only supports POST, GET , PUT
and DELETE methods for users to implement.
TIBCO BusinessWorks™ Container Edition Palette Reference
29
Field
Description
Implementation Data
The implementation data field can be Structured or Opaque.
●
Structured: The XSD element structure is preserved for the input and
output of every operation. You need not manually parse the payload to
generate the actual element to be used in the process.
●
Opaque: Use this mode to apply the pass through mechanism. A user
gets a messageBody element in the input or output of every operation
and needs to use either Parse activities for JSON or XML to get a
Structured output for the payload.
To add additional services to an BusinessWorks Container Edition process, click the Create A Rest
Service icon
on the top left of the process canvas.
REST Reference
Create a REST Reference binding to consume a REST endpoint. You cannot edit the REST Reference
binding configuration.
Prerequisites
Swagger 2.0-compliant REST API documents must be imported into the TIBCO Business Studio ™
Container Edition project's Service Descriptors folder. This will give you the ability to expand and
collapse endpoints, operations, parameters and response codes in the Project Explorer view.
To consume a REST API that exists in the Service Descriptor of the project, do the following:
Procedure
1. Expand the Swagger 2.0 files in the Service Descriptors special folder to view the endpoints,
operations, parameters, response codes.
2. Drag and drop an endpoint on the right side of the canvas to create a REST Reference Binding.
This will create a cloud shaped icon with a right facing arrow. The cloud is an indication that it is a
REST Reference whereas the arrow within the cloud indicates that it is a binding. Since the binding
is within a cloud, it is an indication that it is a REST binding. You cannot convert a REST binding to
a SOAP binding or vice versa.
When you create a REST reference for the service, make sure to edit the Default Host field
in the HTTP Client Resource to reflect the actual host name. By default, the Default Host
field is set to localhost.
3. Drag and drop an operation from the Reference Binding on to the canvas.
This creates an Invoke activity which is pre-configured to invoke the operation. It also creates an
HTTP Client Shared Resource with the host name and port number. The configuration for these
entities is copied from the Swagger document from which you created the Reference Binding. The
Reference consists of the name of the API as well as the operations it supports.
When invoking a POST or PUT method, you must provide the request string in the Input tab. To do
so, click the column next to item under postRequest in XPath Expression and provide the request
string in the drop-down box.
4. Test the configured process using the TIBCO Business Studio ™ Container Edition Debugger.
SOAP Binding
You can use SOAP binding to create service providers and service consumers, based on the SOAP
protocol. TIBCO BusinessWorks Container Edition supports SOAP 1.1 and SOAP 1.2 protocol.
TIBCO BusinessWorks™ Container Edition Palette Reference
30
Messages created by SOAP binding can either use HTTP or JMS transport for communication.
Depending upon whether you want to create a service provider or a service consumer, there are two
types of SOAP bindings: SOAP Service Binding and SOAP Reference Binding.
Terminology
TIBCO BusinessWorks Container Edition uses specific terminology to identify the purpose of the
message, that is exchanged between a service provider and a service consumer.
Terms Used For SOAP Messages
The following table describes the terms used to describe a SOAP message.
Term
Description
ServiceRequest
A request message received by a service provider
ServiceReply
The response message sent by a service provider
ReferenceRequest
A request message generated by a service consumer
ReferenceReply
A response message received by a service consumer
SOAP Headers
Refer to the following table for the terminology used to described different configurations that can be
used to create a SOAP Header.
Term
Description
Described
Described denotes that the WSDL message definition used to create a SOAP
header is available in the concrete WSDL.
Undescribed
Undescribed denotes that the WSDL message definition used to create a
SOAP header is not available in the concrete WSDL.
Bound
Specifies that the SOAP header definition is the part of the same WSDL
message, that is also used to create a SOAP body. In such cases, a WSDL
message contains multiple parts. Some parts are defined to describe SOAP
headers and others are defined to describe the SOAP body.
Unbound
Specifies that the SOAP header definition is not a part of the same WSDL
message, that is also used to create a SOAP body
Based on the definitions in the SOAP Headers table, SOAP headers can be categorized into any of the
following three types of configurations:
●
Described bound headers
●
Described unbound headers
●
Undescribed unbound headers
SOAP Attachments
Refer to the following table for SOAP attachment types and their relevant description.
TIBCO BusinessWorks™ Container Edition Palette Reference
31
SOAP Attachment
Types
Description
Described Bound
Attachments
In this configuration, a part of the input or output WSDL message of type
base64binary is configured as an attachment. In a concrete WSDL, the
attachment is described as a mime part of the multipart message.
Undescribed
Unbound
Attachments
None of the parts of the WSDL input or output message is configured to be
an attachment. The concrete WSDL does not indicate whether an attachment
is in the input or output message.
Attachment mapping is done at the Binding Configuration under Context
Mapping (Request/Response)
Generating Concrete WSDL
The SOAP service binding helps you to create the concrete WSDL using Concrete WSDL Generation
Wizard.
Generate Concrete WSDL
To generate the WSDL, do the following.
1. Click Generate Concrete WSDL.
2. In the Concrete WSDL Generation Wizard, the Location field shows Workspace and File System
tabs.
3. Click the Workspace tab to create the WSDL in your workspace and specify a location where WSDL
is to be created.
4. To select location:
a.
Click the Workspace tab if you want to create the WSDL in your workspace and select a
location. It is recommended to select the Service Descriptor folder to contain all project related
WSDLs.
b.
Click File System tab if you want to save the concrete WSDL on a disk location other than the
workspace.
TIBCO BusinessWorks™ Container Edition Palette Reference
32
Click Finish if you want to generate WSDL with default settings.
5. The File Name field shows the name of the WSDL, for example BooksService_gen.wsdl. Override
it as per requirement.
6. Click Next.
7. Select the Embed Abstract WSDL and Embed Schema check boxes on the next screen. (The
following image is of SOAP over HTTP binding.)
By default the Embed Abstract WSDL and Embed Schema check boxes are selected.
With Embed Abstract WSDL check box selected, the concrete WSDL generated has an abstract
WSDL content in it.
In this case, the namespace of the concrete WSDL is the same as that of an abstract WSDL. If the
check box is not selected, then the namespace of the concrete WSDL is different than that of the
abstract WSDL.
When you select Embed Schema check box, the concrete WSDL generated has the schema definition
(mentioned in the abstract WSDL) in it. Schema with no target namespace is not supported.
To avoid any namespace resolution error in the application module: If the concrete
WSDL is placed in a workspace location (as mentioned in the earlier step), clear the
Embed Abstract WSDL check box.
8. For advance configuration of the concrete WSDL such as Namespace URI, Service Name, Host, and
Port (for SOAP over HTTP), click the Advance tab. Override them as per requirement.
9. Click Finish.
TIBCO BusinessWorks™ Container Edition Palette Reference
33
SOAP Service Binding
Using SOAP service binding you can create a service provider through the SOAP protocol.
Binding
This section has the following fields.
Field
Description
Name
The name of the service binding.
Description
A short description of the service getting exposed.
Target Namespace
The Target Namespace of the service.
Generate Concrete WSDL
The SOAP service binding helps you to create the concrete WSDL using Concrete WSDL Generation
Wizard. See Generating Concrete WSDL for more details.
SOAP Default Configuration
This section has the following fields.
Field
Description
SOAP Version
The version of the SOAP specification: 1.1 or 1.2. The default is 1.1.
Style
The default SOAP binding style for all operations. Specify either
Document or RPC style.
Encoding
Encoding is literal.
Attachment Style
Select the default attachment style for all the binding operations. Can be
overidden at the operations level for each operation.
The following attachment styles are available:
●
SwA - Supports both, Bound and Unbound Attachments
●
MTOM
The MTOM attachment style is available only if SOAP 1.2 specification is
used.
Transport Configuration
This section has the following fields.
Field
Transport
Type
Literal Value/
Module
Property
None
Description
The transport over which SOAP message is sent. The HTTP and
JMS transports are supported.
TIBCO BusinessWorks™ Container Edition Palette Reference
34
Field
Connector
Name
Literal Value/
Module
Property
None
Description
The name of the shared resource. This points to either the HTTP
or JMS shared transport configuration.
Configuration for HTTP Transport
HTTP
Connector
Name
None
Endpoint URI
Yes
Name of the HTTP Connector resource.
Click on the HTTP Connector Name field to display
details about the HTTP Connector resource.
The endpoint URI for the service.
Configuration for JMS Transport
JMS
Connection
Name
None
The name of the JMS Connector resource.
Click on the JMS Connection Name field to display
details about the JMS connector resource.
TIBCO BusinessWorks™ Container Edition Palette Reference
35
Field
Acknowledge
Mode
Literal Value/
Module
Property
None
Description
The acknowledge mode for service request messages. It can be
one of the following:
●
Auto: The message is acknowledged when it is received by a
SOAP Service Binding.
●
Client: The message is not acknowledged when it is received
by the SOAP Service Binding. You can confirm the message
by using the Confirm activity in the BusinessWorks process
that is configured as an operation implementation. If the
Confirm activity is not used, the message is automatically
acknowledged by the SOAP Service Binding while sending
the service reply.
●
Dups OK:The message is acknowledged automatically when
it is received by a SOAP Service Binding. JMS provides this
mode for lazy acknowledgment , but BusinessWorks
Container Edition acknowledges messages upon receipt.
●
Tibco EMS Explicit: (only available for TIBCO Enterprise
Message Service™)
The message is not acknowledged when it is received by a
SOAP service binding. You can confirm the message by using
the Confirm activity in the BusinessWorks Container Edition
process that is configured as the operation implementation.
If the Confirm activity is not used, then the message is
automatically acknowledged by the SOAP Service Binding
while sending the service reply.
The session is not blocked and one session handles all
incoming messages for each process instance.
●
Tibco EMS Explicit Dups OK: (only available for TIBCO
Enterprise Message Service)
The message is not acknowledged when it is received by a
SOAP service binding. You can confirm the message by using
the Confirm activity in the BusinessWorks Container Edition
process that is configured as the operation implementation.
If the Confirm activity is not used, the message is
automatically acknowledged by SOAP Service Binding while
sending the service reply.
The session is not blocked and one session handles all the
incoming messages for each process instance. The messages
however, are lazily acknowledged.
Message
Type
None
Specifies the type of the service request messages. It can be either
Text message or Bytes message.
Messaging
Style
None
Specifies the style of the service request messages. It can be
Generic, Queue, or Topic.
TIBCO BusinessWorks™ Container Edition Palette Reference
36
Field
Literal Value/
Module
Property
Description
JMS
Destination
Yes
Specifies the name of the destination for the service request
messages. The syntax of the destination name is specific to the
JMS provider you are using.
JMS
Application
Properties
None
User-defined JMS Properties expected to be available in the
service request messages.
JMS
Application
Properties
(Response)
None
Max Sessions
None
NOTE: JMS Application properties should be defined in a
schema only through a complex type. Also, all JMS Application
properties should be direct child of this complex type.
User-defined JMS Properties expected to be sent in the the
service response messages.
NOTE: JMS Application properties should be defined in a
schema only through a complex type. Also all JMS Application
properties should be direct child of this complex type.
When the Acknowledge Mode field is set to Client, this field
configures the maximum number of JMS sessions that is created
for the service request messages.
When a message is received, the session is blocked until the
message is acknowledged in the process. If acknoledgement is
not done at process level then it is automatically acknowleged
when the SOAP Service Binding sends a service reply.
After reaching the maximum number of sessions, no new
incoming messages can be processed. Once any one of the
messages is processed ,the total number of active sessions
decreases and then another incoming message can be processed.
Operations
None
This field is available only when Topic is selected in the JMS
Destination Type field.
Operation Name - Specifies the operation name.
Durable Subscription - Set to true if the client is a durable
subscriber.
Subscription Name - Specify the Subscription Name if Durable
Subscription is set to true.
Imported projects display the HTTP Authentication check box under the Transport Configuration
section if the check box was selected in a previous version TIBCO ActiveMatrix BusinessWorks 6.x.
Authentication remains enabled on the SOAP Service Binding if you do not clear the check box. If you
clear the Authentication check box, a warning message is displayed prompting you to confirm your
action. To remove authentication from the binding, click OK. Once you have removed authentication
from the SOAP Service Binding, you can reapply it using the Basic Authentication policy. For
additional details, refer to the sections "Enforcing Basic Authentication" and "Enforcing WSS Provider"
in the TIBCO ActiveMatrix BusinessWorks Application Development guide.
Persistence Configuration
This section has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
37
Field
Literal
Value/
Module
Property
Persistence Type
None
Description
Select any one from the available Persistence configuration
types. They are NONE and File.
Selecting the File option displays the Directory, Create
Directories, and Threshold Size fields.
Directory
Yes
The directory where attachments will be serialized.
Create
Directories
Yes
Creates new directories if not present on the disk.
Threshold Size
Yes
The maximum size of the attachment that can be kept in
memory. Attachments larger than the specified size will be
written to the disk.The file name generated for serialization is
random except when the Content-disposition header is available
for the attachment. Here, the name is the same as the contentdisposition header value.
You can configure the size to Bytes, KB or MB.
Threading Policy Details
The following are the details for the SOAP Service Binding threading policy.
Activity Type
MultiThreaded?
Default Thread Count
Thread Count Configuration
Transport: HTTP
ProcessStarte
r
Yes
●
Minimum thread pool
threads = 10
●
Maximum thread pool
threads = 75
It can be configured on the HTTP
Connector shared resource using the
following fields:
●
Minimum QTP threads
●
Maximum QTP threads
Add Binding
You can add a binding. Click the Add Binding icon
to add a binding.
Delete Binding
You can delete a binding. Click the Delete Binding icon
to delete a binding.
TIBCO BusinessWorks™ Container Edition Palette Reference
38
Policy
Bindings that support policies will display the Policy field. To associate a new or existing policy with
the SOAP HTTP Binding, click the Add Policy
The Policy section has the following fields.
icon. To edit policy details, click Policy Name.
Field
Description
Policy Name
The name of the policy.
Policy Type
The type of policy associated with the binding. The SOAP HTTP Service
Binding can support the following policies:
Description
●
Basic Authentication
●
WSS Provider
A description of the policy.
SOAP Reference Binding
Using SOAP reference binding you can create a service consumer using SOAP protocol.
Binding
This section has the following fields.
Field
Description
Name
The name of the reference binding.
Description
A short description of the HTTP reference binding.
WSDL Service
Specifies the service name and its target namespace.
WSDL Port
Specifies the binding implemented by the service. If more than one
implementation is available in concrete WSDL, select an appropriate
implementation.
SOAP Version
The version of the SOAP specification: 1.1 or 1.2.
Attachment Style
The attachment style for the incoming and outgoing messages. The
following attachment styles are available:
●
SwA
●
MTOM
The attachment style MTOM is available only if the activity uses SOAP 1.2
and is not displayed when SOAP 1.1 is used.
Transport Configuration
This section has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
39
Field
Literal Value/Module Property
Description
Transport
Type
None
The transport over which the SOAP
message is sent. HTTP and JMS transports
are supported.
Application for HTTP Transport
Default Host/
Port
None
Specifies the default host and port
configuration available in the concrete
WSDL.
HTTP Client
Name
None
Name of the HTTP Client resource.
Endpoint URI
Yes
The endpoint of the service through which
SOAP clients can access the service.
Application for JMS Transport
JMS
Connection
Name
None
Name of the JMS Connector resource
JMS
Destination
Yes
Specifies the name of the destination for
the incoming JMS messages. The syntax of
the destination name is specific to the JMS
provider you are using.
Messaging
Style
None
Specifies the style of the incoming
messages on the specified destination. It
can be Generic, Queue, or Topic.
Message Type
None
Specifies the type of the incoming
messages on the specified destination. It
can be either Text Message or Bytes
Message.
Delivery
Mode
No
The delivery mode of messages.
Click on the JMS Connection
Name field to display details
about the JMS Connector
resource.
●
Persistent Messages are stored and
forwarded.
●
Non-Persistent Messages are not
stored and can be lost due to failure.
The default is Persistent.
Expiration
Yes
The length of time a message can remain
active. 0 means that the message does not
expire.
TIBCO BusinessWorks™ Container Edition Palette Reference
40
Field
Literal Value/Module Property
Description
Priority
Yes
The priority of the message. Priority is a
value from 0-9. Higher numbers signify a
higher priority (that is, 9 is a higher
priority than 8).
The default is 4.
JMS
Application
Properties
None
The user-defined JMS Properties required
to be available in the incoming message.
JMS
Application
Properties(Re
sponse)
None
The user-defined JMS Properties required
to be sent in the outgoing message.
Persistence Configuration
This section has the following fields.
Field
Literal
Value/
Module
Property
Persistence Type
None
Description
Select any one from the available persistence configuration
types.
●
None
●
File
Selecting the File option displays the Directory, Create
Directories, and Threshold Size fields.
Directory
Yes
The directory to write attachments that exceed the specified
threshold size.
Create
Directories
Yes
Creates new directories if not already present on the disk.
Threshold Size
Yes
The maximum size (in bytes) of an incoming message
attachment that can be kept in memory. Attachments larger than
the specified size are written to a file in the specified directory.
The file name is the output, so that subsequent activities in the
process can access the file and read its contents.
TIBCO BusinessWorks™ Container Edition Palette Reference
41
General Activities
General Activities palette comprises various general purpose activities and process starters. For
example, Timer, a process starter activity, is used to start a process at a specific time.
Assign
Assign is a synchronous activity. You can use this activity to assign a value to a process-defined
variable. The Assign activity is used to assign a value to the process-defined as well as scope-defined
variables. Ensure to set all the essential values when using the Assign activity to set a process variable.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Process Variable to
Set
A drop-down list of the available user-defined process variables for the
process.
Select any user-defined process variable to modify.
Description
Provide a short description of the activity.
Input
Input Item
Description
<schema>
The specified data schema for the user-defined process variable selected on
the General tab.
Output
The schema for the output is determined by the schema specified for the process variable.
Call Process
The Call Process is an asynchronous activity that calls and executes an existing process.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Service
The endpoint of the service provided by the sub-process.
TIBCO BusinessWorks™ Container Edition Palette Reference
42
Description
Provide a short description for the activity.
Input
The following is the input for the activity.
Input Item
Datatype
Description
input
varies
The input to the called process is defined in the Output
Editor tab of the Start activity of the called process.
Output
The following is the output for the activity.
Output Item
Datatype
Description
output
varies
The output of the called process is defined in the Input
Editor tab of the End activity of the called process.
Confirm
Confirm is a synchronous activity that confirms any confirmable message received by the process
instance.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
ConfirmEvent
The message you want to confirm.
This is a drop-down list of any process starter or activity awaiting an
incoming event in the current process.
You can confirm messages only from the reliable sources, for example, JMS
messages. E-mail is also confirmable when received by the Receive Mail
process starter (the e-mail message is deleted from the server when it is
confirmed).
Select only the event that sent the confirmable message.
Description
Provide a short description for the activity.
TIBCO BusinessWorks™ Container Edition Palette Reference
43
Get Shared Variable
Get Shared Variable is a synchronous activity that retrieves the current value of a module shared
variable or job shared variable.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Inline
Specify the type of shared variable (Module Shared Variable or Job Shared
Variable).
Shared Variable
The module shared variable or job shared variable whose value you want to
retrieve.
Description
Provide a short description here.
Output
The following is the output for the activity.
Output Item
Description
schema
The value of the shared variable specified in the Shared Variable field of
the General tab is the output for this activity.
The schema for the output is determined by the schema specified for the
shared variable.
Inspector
Inspector activity is used to write the output of any or all activities and module properties to a file or
stdout. This is particularly useful when debugging processes and you want to see the entire schema
instead of mapping specific elements to the Write File activity.
You can use the Inspector activity to write the output of any activity or module properties in the
current process. Activities and module properties in a subprocess are not available to the Inspector
activity (but the output of a Call Process activity can be written using the Inspector activity). If you
want to obtain the output from one or more activities or module properties in a subprocess, place the
Inspector activity in the process of the subprocess.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
TIBCO BusinessWorks™ Container Edition Palette Reference
44
Field
Description
Inspect
The output of the processes you want. Select any one from available items on
the drop-down list to output.
●
All
●
ModuleProperties
●
_processContext
Only activities that have output and are executed prior to the Inspector
activity are visible in the drop-down list.
Stdout
Specifies whether the output of this activity should be sent to stout (standard
output). Select this check box to send the output to stdout.
If this check box is not selected, the output is not sent to stdout.
Append to File
Select this check box to specify that the output is appended to the file
specified in this activity’s input.
Not selecting this check box overwrites any file that exists with the specified
name.
Suppress Header
Select this check box to suppress the output of header information, such as the
process instance ID and the timestamp.
If this check box is not selected, the header information for the current process
instance is written before the output of the activity or module property.
Description
Provide a short description of the activity.
Input
The following is the input for the activity.
Input Item
Datatype
Description
fileName
string
The absolute path to the file you want to write. This file
contains the output of the specified activity or module
property.
Output
The following is the output of this activity.
Output Item
Datatype
Description
output
string
The output of the module property or activity specified
on the General tab in string form.
You can use this output in subsequent activities, in
addition to writing the output to a file or stdout.
TIBCO BusinessWorks™ Container Edition Palette Reference
45
Log
Log is a synchronous activity that writes a message to the log.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Logger Name
Specifies the name of a message category. The value of the logger-name is
case-sensitive and can be a single name or a hierarchical name.
Log Level
Select one of the following log levels recognized by the process engine.
Suppress Job Info
●
Error: logs error conditions and messages.
●
Warning: is the warning message of an unexpected error in the process.
●
Info: logs informational messages highlighting the application/engine
progress.
●
Debug: can be used for debug-level messages.
If selected, no additional information is added to the log entry.
If not selected, each log message prepends JobId, ProcessInstanceId, Activity
Name, Document Update: December 2014 and Version, Deployment Unit
Name, and Version name to the message text.
Description
Provide a short description of the activity.
Input
The following is the input for the activity.
Input Iten
Datatype
Description
msgCode
string
The error code of the message. This is used as an identifier for the
message so that applications can scan the log for the message.
loggerName
string
The name of a message category specified in the Logger Name field
in the General tab.
logLevel
string
The log level specified in the Log Level field in the General tab.
message
string
The message to be displayed in the log.
When the message contains non-ASCII data, the default
encoding of the Java Virtual Machine used by the process
engine is used for text encoding, when writing to the log
file.
TIBCO BusinessWorks™ Container Edition Palette Reference
46
Mapper
Mapper is a synchronous activity that adds a new process variable to the process. This variable can be
an inline schema, primitive element, or a complex element. You can map the data values from the
current list of process variables to the elements of the variable with the Mapper activity.
General
Specify the name of the activity here.
Description
A short description of the activity.
Input Editor
The Input Editor tab defines the structure of the process variable to add to the process. You can use a
simple datatype, or you can define a group of data elements on this tab.
You can also reference XML schema stored in the project. The data specified here becomes the input
and output schema of the Mapper activity. This data is then available to other activities in the process.
Input
The input for the activity is defined by the specified data elements on the Input Editor tab.
Output
The output for the activity is defined by the specified data elements on the Output Editor tab.
Set Shared Variable
Set Shared Variable is a synchronous activity that you can use to change the value of a shared variable.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Inline
Specify the type of the shared variable (Module Shared Variable or Job
Shared Variable).
Shared Variable
The module shared variable or job shared variable whose value you want to
retrieve.
Description
Provide a short description for the activity.
Input
The following is the input for the activity.
TIBCO BusinessWorks™ Container Edition Palette Reference
47
Input Item
Description
schema
The value of the shared variable specified in the Shared Variable field of
the General tab is the input for this activity.
The schema for the input is determined by the schema specified for the
shared variable.
Output
The following is the output for the activity.
Output Item
Description
schema or no output
The value of the shared variable specified in the Shared Variable field of
the General tab is the output for this activity.
The schema for the output is determined by the schema specified for the
shared variable.
Sleep
Sleep is an asynchronous activity that suspends the process on the current transition for the specified
time. For a process with multiple control flows, only the current execution branch of the process is
suspended.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Description
Provide a short description for the activity.
Input
The following is the input for the activity.
Input Item
Datatype
Description
IntervalInMilli
sec
integer
The amount of time interval, in milliseconds, to suspend the
current branch of the process. The default time interval is 3
minutes.
Timer
Timer is a process starter activity that starts the process at a specific time. You can also specify the
processes to be started periodically.
General
The General tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
48
Field
Literal Value/
Module
Property/
Process
Property?
Name
None
The name to be displayed as the label for the activity in the
process.
Start Time
Yes
The day and time to start the process. To run the process
periodically, the start time indicates the first time to run the
process.
Description
The local machine’s time zone is used to determine the process
start. If the project is running on machines in different time zones,
the time zone of the machine where the project was saved, is
used. Use a process property in this field to provide start times
relative to the time zone where the project is deployed. If you
provide a process property for this field, the format of the
specified time must be: yyyy MMM dd HH:mm:ss z
Run Once
None
Indicates this process should be run only once on the day and
time indicated by the Start Time field.
If you do not select this check box, the Time Interval and Interval
Unit fields are displayed that you can use to specify the frequency
of the process.
Time
Interval
Yes
The integer indicating the number of units specified in the
Interval Unit field. For example, if a value of 1 is specified and
the Interval Unit field is specified as Hour, a new process is
started every hour beginning at the time specified in the Start
Time field.
●
If a value of 2 is specified and the Interval Unit field is
specified as Month, a process is started every other month,
beginning at the time specified in the Start Time field.
●
If the value specified is less than one second (1000
milliseconds), the timer ignores the specified interval and is
triggered once every second.
Using Literal Value, Module Property, and Process
Property in this field, specifies the time interval in
milliseconds and the Interval Unit field is not
displayed.
Interval Unit
None
The unit of time to use with the Time Interval field to determine
how often to start a new process. The units can be: Millisecond,
Second, Minute, Hour, Day, Week, Month, and Year.
TIBCO BusinessWorks™ Container Edition Palette Reference
49
Field
Literal Value/
Module
Property/
Process
Property?
End After
None
Description
Specify the number of occurrences or the end time here. Select
from the following available options:
●
Never: Click the Never radio button if you want to
continuously execute the process instance. For example, if the
Time Interval value specified is 5 and the Interval Unit
specified is Second, the process instance executes every 5
seconds.
●
Occurrences: Clicking the Occurrences radio button displays
the Occurrences field. Specify the number of occurrences of
the process instance execution. This field can be configured
with Literal Value, Module Property, and Process Property.
●
End Time: Clicking the End Time radio button displays the
End Time field. Specify the end time and date when you want
the process to end. This field can be configured with Literal
Value, Module Property, and Process Property.
Description
Provide a short description of the activity.
Advanced
The Advanced tab has the following fields.
Field
Description
Sequencing Key
This field contains an XPath expression that specifies which processes should
run in sequence. Process instances with sequencing keys evaluating to the same
value, are executed sequentially in the sequence the process instance was
created.
Custom Job Id
This field contains an XPath expression that specifies a custom job ID for every
job in the process instance.
Output
The following is the output of the activity.
TIBCO BusinessWorks™ Container Edition Palette Reference
50
Output Item
Description
TimerOutputSchem
a
The time the process instance started.
The time is represented by several items in the output schema indicating:
●
Now
●
Hour
●
Minute
●
Second
●
Week
●
Month
●
Year
●
Date
●
Time
●
DayOfMonth
Each of these items uses the appropriate datatype.
TIBCO BusinessWorks™ Container Edition Palette Reference
51
HTTP Palette
Using the HTTP Palette you can send and receive HTTP requests.
HTTP Receiver
HTTP Receiver is a process starter activity that starts the process based on the receipt of an HTTP
request.
General
The General tab has the following fields.
Field
Literal Value/
Module
Property/
Process
property?
Name
None
The name to be displayed as the label for the activity in the
process.
HTTP
Connection
Yes
The HTTP Connector resource describes the characteristics of
the connection used to receive incoming HTTP requests.
Description
See HTTP Connector for more information about specifying
shared resources.
Context Path
Yes
Path Spec
This is the prefix of a URL path that is used to select the
contexts to which an incoming request is passed.
You can either specify both Context Path and Path Spec, any,
or none of these elements. For example, the path displays as
the http://hostname.com/contextPath/pathSpec format.
If the Context Path is not specified, the context path is
referred to as the root context.
Output Style
None
The type of output. It can be either String or Binary.
Parse Post
Method Data
None
Specifies to parse the message body of the HTTP request into
a schema for the output of the activity.
When this check box is selected, the parameters specified in
the Parameters field are used to validate the incoming
request and parse it into the output schema.
For an incoming GET request, there is no message
body, hence this field has no effect on the incoming
GET requests.
TIBCO BusinessWorks™ Container Edition Palette Reference
52
Field
Literal Value/
Module
Property/
Process
property?
Description
Parameters
None
The parameters of the incoming HTTP request.
If you specify parameters in this table, the incoming request is
parsed and represented as a schema in this output of the
activity. For each parameter, you must provide a name,
datatype, and whether the field is Optional, Required, or
Repeating.
Use the
and
buttons to the right of the parameter table
to add and remove parameters.
Specifying parameters in this field parses the query
string of the request into the output schema,
regardless of whether the Parse Post Method Data
check box is selected. Selecting the Parse Post
Method Data check box and specifying parameters
here is required to parse the message body along
with the query string of the request.
Expose Security
Context
None
Places the information from the user’s security context (either
authentication or SSL certificate information) into the Context
or SecurityContext output element.
This is a fairly expensive operation and SSL certificates can
consume memory resources. Hence, select this option only if
you require information from the user’s security context for
later use in your process.
Default
Encoding
Yes
Specifies the encoding to use if no charset is specified in the
Content-Type header of the message. This encoding is used
for the message body and URL.
However, when URIEncoding is specified in the HTTP
Connector shared resource, the Default Encoding parameter
specified here applies to the contentType alone and not to the
URIEncoding property.
Description
Provide a short description for the activity in this field.
Advanced
The Advanced tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
53
Field
Process
Property/
Module
Property?
Write to File
None
Description
Select this check box to write incoming requests that exceed
the specified threshold size to a file instead of storing the
request in memory. You can accept large incoming requests
without consuming a great deal of memory. Selecting this
check box displays the Directory, Creating Non-Existing
Directories, and Threshold Data Size(bytes) fields.
This option is not intended to be used with the
Parse Post Method Data option on the General
tab. When you select Write to File, the PostData
output element becomes a choice element
containing either the output FileName or the
PostData. This depends upon whether the data
exceeds the size specified in the Threshold Data
Size field. It is recommended to use either the
Write to File option or the Parse Post Method
Data option, but not both at the same time.
Not selecting this field keeps the incoming requests in
memory.
After writing, the files created using this option
are not deleted automatically. You must manage
the storage used by these files and delete them
when they are no longer used.
Directory
Yes
The directory to write messages that are above the specified
threshold. The process engine does not attempt to create the
directory if the specified directory does not exist. Therefore,
create the directory before starting the process engine.
Create NonExisting
Directories
None
When this check box is selected, all directories in the path
specified in the Directory field are created, if they do not
already exist.
If this check box is not selected and there are one or more
directories in the specified path in the Directory field that
do not exist, an exception is raised.
Threshold Data
Size(bytes)
Yes
The maximum size (in bytes) of an incoming request that
can be kept in the memory. Requests larger than the
specified size are written to a file in the specified directory.
The file’s name is output so that subsequent activities in the
process can access the file and read its contents.
Specify zero (0) in this field for all incoming requests to be
saved to a file.
TIBCO BusinessWorks™ Container Edition Palette Reference
54
Field
Process
Property/
Module
Property?
Sequence Key
None
This field can contain an XPath expression that specifies
which processes should run in sequence. Process instances
with sequencing keys that evaluate to the same value are
executed sequentially in the sequence the process instance
was created.
Custom Job Id
None
This field can contain an XPath expression that specifies a
custom ID for the process instance.
Description
Special Characters in HTTP Requests
Depending upon the content type of the data for the request, the request can contain URL-encoded data
and the server is expected to decode the data. For example, an incoming request may have the
following message body:
name=John%20Smith&address=500%201%2F2%20Main%20Street
If the message body is not parsed (Parse Post Method Data check box is not selected on the General
tab), the body of the message remains URL-encoded in the PostData output element. If the message
body is parsed, the data is decoded before being placed in the PostData output element, and that
element would display as follows:
name=John Smith&address=500 1/2 Main Street
The sequence of the parameters may not be the same in the PostData output element as the sequence in
the original HTTP request sent by the client when the message body is parsed.
The PostData output element can contain different data and be a different length depending upon
whether the message body is parsed. Hence, ensure that you obtain data from the parameters output
element when the message body is parsed.
Output Editor
The Output Editor tab describes the data structure for the headers of the HTTP request. You can use
the default structure, or you can alter the structure, if the incoming request has a specific data structure
for the header of the request.
The header structure is defined by the HTTP protocol. See the HTTP protocol specification for more
information about the fields and content of the header of an HTTP request. You can obtain this
specification at www.w3.org.
Output Header
Element
Datatype
Description
Accept
string
This field specifies media types that are acceptable for
response messages for the incoming request. For example,
text/*,text/html. Media types are described in the HTTP
specification.
If no Accept-Header field is present, it is assumed that the
client accepts all media types.
TIBCO BusinessWorks™ Container Edition Palette Reference
55
Output Header
Element
Datatype
Description
Accept-Charset
string
This field specifies the character sets that are acceptable for
response messages for the incoming request. For example,
iso-8859-5, unicode-1-1. Character sets are described in the
HTTP specification.
If no Accept-Charset header is present, it is assumed that the
client accepts any character set.
AcceptEncoding
string
This field specifies the content-coding values that are
acceptable for response messages. For example, compress,
gzip. See the HTTP specification for more information about
this header field.
Content-Type
string
This field indicates the media type of the entity body sent to
the receiver. For example, text/html; charset=ISO-8850-4.
Media types are described in the HTTP specification.
Content-Length
string
This field indicates the size of the entity body (in decimal
number of OCTETs) sent to the receiver.
This field takes into account the encoding of the message
body. See Special Characters in HTTP Requests for more
information on when the message body is URL encoded.
Connection
string
Using this field the requestor can specify options required for
this connection. For example, the option close specifies that
the requestor would like the connection to be closed when the
request is complete.
Cookie
string
See the HTTP specification for more information about this
field.
If you want to receive more than one cookie, set the
cardinality for this field to repeating (*).
Pragma
string
This field is used to include implementation-specific directives
that might apply to the receiver. See the HTTP specification
for more information about using this field.
Output
The following is the output for the activity.
Output Item
Datatype
Description
Method
string
The method specified in the request. For example, GET or
POST.
RequestURI
string
The address portion of the request. This is the portion before
the question mark (?).
HTTPVersion
string
The version field of the HTTP request.
TIBCO BusinessWorks™ Container Edition Palette Reference
56
Output Item
Datatype
Description
PostData or
BinaryContent or
FileName
string
The message body of the HTTP request. The content of this
element depends upon whether the message body is parsed.
Parsing behavior is controlled by the Parse Post Method
Data field on the General tab.
See Special Characters in HTTP Requests for more
information.
If the Write to File field is selected on the Advanced tab, and
the incoming message exceeds the specified threshold size,
thePostData field can also contain the file name of the file
containing the message.
QueryString
string
The query string portion of the request. This is the portion
after the question mark (?).
Header
string
The header of the HTTP request.
Protocol
string
This can be HTTP or HTTPS depending upon the protocol
used by the request.
Port
string
The port number on which the request was received. This is
the port number configured in the HTTP Connector resource.
Headers
complex
The fields of the header specified on the Output Editor tab.
See the description of the Output Editor tab for more
information about these items.
Parameters
complex
The parameters for the incoming request. These parameters
are configured in the Parameters field on the General tab.
When the Parse Post Method Data check box on the General
tab is selected, the parameters include the parameters in the
query string and message body of the incoming HTTP
request.
When the Parse Post Method Data check box is not selected,
the parameters include only the query string of the incoming
request.
TIBCO BusinessWorks™ Container Edition Palette Reference
57
Output Item
Datatype
Description
DynamicHeaders
complex
The dynamic header is an additional header parameter to
receive header parameters from incoming HTTP requests.
This element is specified in the Output Editor tab. The
DynamicHeaders consists of the following information:
●
Name: the name of the header
●
Value: the value of the header
The following overriding conditions can be considered:
●
Overrides the value of HeaderName with the value found
in DynamicHeaders, if it is a non-repeating header. If
more than one occurrence of this header is found under
DynamicHeaders, it throws the "The header
[ headerName ] is defined as non-Repeating
Header in Input Headers. This header cannot
have multiple occurences in DynamicHeaders."
exception.
mimeEnvelopeEleme
nt
complex
●
If it is a repeating element, add the respective name value
pairs under dynamic headers, which is added to the
existing list maintained for this element.
●
For a repeating element, if the new header name is not
found under the "Headers" section declared through
TIBCO Business Studio Container Edition, the following
is added into the HTTP Headers.
—
Shows only one value, if found once in
DynamicHeaders.
—
Shows array of values, if found repeating in
DynamicHeaders.
This element contains the message attachments.
This element contains a repeating element named mimePart
that contains each mime attachment.
TIBCO BusinessWorks™ Container Edition Palette Reference
58
Output Item
Datatype
Description
mimeHeaders
complex
This element contains the mime header for each mimePart.
Mime headers can contain the following information:
●
content-disposition: To suggest a filename for an
attachment, use "*;filename=<filename>" in this
element.
HTTP servers may alter or ignore the suggested
name.
●
content-type
●
content-transfer-encoding
●
content-id
●
any element
See http://www.faqs.org/rfcs/rfc2045.html for more
information about MIME headers and their syntax.
When the content type is specified as "text/*"
(for example, "text/xml"), the attachment content
is expected to be in either the textContent input
element or the file name storing the attachment is
expected to be in the fileName input element.
When the content type is anything other than
"text/*", the attachment content is expected to be
in either the binaryContent input element or the
file name storing the attachment is expected to be
in the fileName input element.
binaryContent |
textContent |
fileName
Context
choice
This element contains the mime attachment.
The element can be one of the following:
complex
●
binaryContent: content of the attachment content of the
attachment when the attachment is binary data.
●
textContent: content of the attachment when the
attachment is text data.
●
fileName: the file name of the attachment written to the
disk.
Contains information about the client’s environment.
This element holds the optional RemoteAddress element.
RemoteAddress
string
The IP address of the client that submitted the HTTP request.
Send HTTP Request
Send HTTP Request is an asynchronous activity that sends an HTTP request and waits for a response
from the web server. This activity sends a request to a server that is compliant with either the HTTP 1.1
or 1.0 specification. TIBCO BusinessWorks Container Edition automatically sends the request using the
correct version based on the version supported by the HTTP server. Therefore, do not specify the HTTP
version of the server you are sending the request to.
TIBCO BusinessWorks™ Container Edition Palette Reference
59
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
HTTP Client
Specifies the HTTP Client shared resource. For details, refer to HTTP Client.
Parameters
The parameters of the HTTP request. For each parameter, you must provide:
●
Parameter Name
●
Parameter Type as string
●
Parameter Cardinality as Optional, Required, or Repeating
These parameters are specified in the parameters element on the General tab.
Description
Provide a short description of the activity.
Advanced
The Advanced tab has the following fields.
Field
Literal Value/
Module
Property?
Write to File
None
Description
Select this check box to write the incoming requests that
exceed the specified threshold size to a file instead of storing
the request in memory. You can accept large incoming
requests without consuming a great deal of memory.
Selecting this check box displays the Directory and
Threshold Data Size fields.
To keep the incoming requests in memory, do not
select this check box.
The files created using this option after writing are
not deleted automatically. You must manage the
storage used by these files. Delete these files when
they are no longer in use.
Directory
Yes
The directory to write messages that are above the specified
threshold. The process engine does not attempt to create the
directory if the specified directory does not exist. Therefore,
create the directory before starting the process engine.
TIBCO BusinessWorks™ Container Edition Palette Reference
60
Field
Literal Value/
Module
Property?
Creating NonExisting
Directories
No
Threshold Data
Size(bytes)
Yes
Description
Selecting this check box creates all directories in the path
specified in the Directory field, if they do not already exist.
Not selecting this check box with one or more non-existing
directories in the specified path in the Directory field, raises
an exception.
The maximum size (in bytes) of an incoming request to be
kept in memory. Requests larger than the specified size are
written to a file in the specified directory. The file’s name is
the output so that subsequent activities in the process can
access the file and read its contents.
Specifying zero (0) in this field causes all incoming requests
to be saved to a file.
Input Editor
Input Editor comprises the data structure of the headers of the HTTP request and HTTP reply message.
You can either use the default structure or modify the structure, if the outgoing request or the reply to
the request has a specific data structure for the header.
Input Header
Datatype
Description
Accept
string
This field specifies media types that are acceptable for
response messages for the request. For example, text/*,
text/html. Media types are described in the HTTP
specification.
If no Accept-Header field is specified, all media types are
acceptable on the server.
Accept-Charset
string
This field specifies the character sets that are acceptable for
response messages for the request. For example,
iso-8859-5, unicode-1-1. The character sets are described
in the HTTP specification.
If no Accept-Charset header is specified, any character set is
acceptable on the server.
Accept-Encoding
string
This field specifies the content-coding values that are
acceptable for response messages. For example, compress
and gzip. See HTTP specification (http://www.w3.org/
Protocols/Specs.html) for more information about this
header field.
Content-Type
string
This field indicates the media type of the entity body for the
outgoing message and the incoming response. Media types
are described in the HTTP specification. An example of the
media type is text/html; charset=ISO-8850-4.
TIBCO BusinessWorks™ Container Edition Palette Reference
61
Input Header
Datatype
Description
Cookie
string
A name and value pair (also known as a cookie) containing
information that the HTTP server may be expecting. You can
set the cardinality for this element to Repeating (*) to specify
more than one cookie. You can also specify multiple name or
value pairs in a single non-repeating element by separating
each pair with a comma (for example, "name1=value1,
name2=value2").
Pragma
string
This field is used to include implementation-specific
directives that might apply to the receiver. See the HTTP
specification (http://www.w3.org/Protocols/Specs.html) for
more information about using this field.
Output Editor
Output Editor comprises the data structure of the headers of the HTTP request and HTTP reply
message. You can either use the default structure or modify the structure, if the outgoing request or the
reply to the request has a specific data structure for the header.
The header structure is defined by the HTTP protocol. See the HTTP protocol specification for more
information about the fields and content of the header of an HTTP request. You can obtain this
specification at http://www.w3.org/.
Output Header
Datatype
Description
Allow
string
This field lists the set of methods supported by the resource
identified by RequestURI.
Content-Type
string
This field indicates the media type of the entity body for the
outgoing message and the incoming response. Media types
are described in the HTTP specification. An example of the
media type is text/html; charset=ISO-8850-4.
Content-Length
string
This field indicates the size of the entity body (in decimal
number of OCTETs) of the response message.
Content-Encoding
string
This field is used as a modifier to the content-type. When
present, its value indicates what additional content encoding
has been applied to the entity-body. Also, what decoding
mechanisms must be applied to obtain the media-type
referenced by the Content-Type header field.
Content-Encoding is primarily used to allow a document to
be compressed without losing the identity of its underlying
media type. See the HTTP specification for more information
about this field.
Date
string
The date and time when the response message was sent.
Location
string
This field is used to redirect the receiver to a location other
than RequestURI for completion of the request or for
identification of a new resource.
TIBCO BusinessWorks™ Container Edition Palette Reference
62
Output Header
Datatype
Description
Set-Cookie
string
If you want to receive more than one cookie, set the
cardinality for this field to Repeating (*).
See the HTTP specification for more information about this
field.
Pragma
string
This field is used to include implementation-specific
directives that might apply to the receiver.
See the HTTP specification for more information about using
this field.
Input
The following is the input for the activity.
Input Item
Datatype
Description
Host
string
The HTTP host you want to connect to. Specifying a value for
this input item overrides any value specified on the General
tab.
Port
string
The port number that the HTTP server uses for incoming
requests. Specifying a value for this input item overrides any
value specified on the General tab.
Method
string
The HTTP method to use for the request. All HTTP 1.1
methods are supported, but the connect method is
unnecessary because TIBCO BusinessWorks Container
Edition automatically uses the CONNECT method when
connecting through a proxy server.
If no method is specified in this element, the GET method is
used by default.
RequestURI
string
The address portion of the request. This is the portion of the
URI before the question mark (?).
PostData
string
The message body of the HTTP request. Do not specify this
element when the method of the request is GET.
For details on this input element, refer to Sending Data in the
HTTP Request
QueryString
string
The query string portion of the request. This is the part after
the question mark (?).
For details on this input element, refer to Sending Data in the
HTTP Request
Timeout
integer
The amount of time (in milliseconds) to wait for a response
from the HTTP server.
TIBCO BusinessWorks™ Container Edition Palette Reference
63
Input Item
Datatype
Description
Headers
complex
The header fields to send for the request. When this element
is specified on the Input Editor tab, you can use this input
item to provide values for the header when sending the
request.
DynamicHeaders
complex
The dynamic header is an additional header parameter to
add runtime headers to the outgoing HTTP messages. This
element is specified in the Input tab.
You can use only US-ASCII characters in
DynamicHeaders.
The DynamicHeaders consists of the following information:
●
Name: the name of the header
●
Value: the value of the header
You can consider the following overriding conditions.
●
Overrides the value of HeaderName with the value found
in DynamicHeaders if it is a non-repeating header. If
more than one occurrence of this header is found under
DynamicHeaders, it throws the following exception.
The header [ headerName ] is defined as nonRepeating Header in Input Headers. This header
cannot have multiple occurences in
DynamicHeaders.
mimeEnvelopeEl
ement
complex
●
If it is a repeating element, add the respective name value
pairs under dynamic headers, which is then added to the
existing list maintained for this element.
●
For a repeating element, if the new header name is not
found under the "Headers" section declared through
TIBCO Business Studio Container Edition , the following
is added into HTTP Headers.
—
Shows only one value, if found once in
DynamicHeaders.
—
Shows an array of values, if found repeating in
DynamicHeaders.
This element contains the message attachments.
This element contains a repeating element named mimePart
that contains each mime attachment.
TIBCO BusinessWorks™ Container Edition Palette Reference
64
Input Item
Datatype
Description
mimeHeaders
complex
This element contains the mime header for each mimePart.
mimeHeaders can contain the following information:
content-disposition: To suggest a filename for an
attachment, use "*;filename=<filename>" in this
element.
●
The HTTP servers may alter or ignore the
suggested name.
●
content-type
●
content-transfer-encoding
●
content-id
See http://www.faqs.org/rfcs/rfc2045.html for more
information about MIME headers and their syntax.
When the content type is specified as "text/*"
(for example, "text/xml"), the attachment content
is in either the textContent input element or the
file name storing the attachment is in the fileName
input element. When the content type is anything
other than "text/*", the attachment content is in
either the binaryContent input element or the file
name storing the attachment is in the fileName
input element.
binaryContent |
choice
This element contains the mime attachment.
The element is binaryContent: the content of the attachment
when the attachment is binary data.
Output
The following is the output of the activity.
Input Item
Datatype
Description
Header
complex
The fields of the header specified on the Output Editor tab.
See the description of the Output Editor tab for more
information about these items.
StatusLine
complex
This field is the first line of the response message. This
consists of the protocol version, a numeric status code, and
the text phrase explaining the status code.
See the HTTP specification for more information about status
codes in the HTTP responses.
TIBCO BusinessWorks™ Container Edition Palette Reference
65
Input Item
Datatype
Description
httpVersion
string
The HTTP method to use for the request. All HTTP 1.1
methods are supported, but the connect method is
unnecessary because TIBCO BusinessWorks Container
Edition automatically uses the CONNECT method when
connecting through a proxy server.
If no method is specified in this element, by default the GET
method is used.
statusCode
string
The address portion of the request. This is the portion of the
URI before the question mark (?).
reasonPhrase
string
The message body of the HTTP request. Do not specify this
element when the method of the request is GET.
For details on this input element, refer to Sending Data in the
HTTP Request
binaryContent
string
The binary content of the response to the request from the
HTTP server.
asciiContent
integer
The ASCII content of the response to the request from the
HTTP server.
Headers
complex
The header fields of the reply. The structure of this output
item is specified on the Output Headers tab.
TIBCO BusinessWorks™ Container Edition Palette Reference
66
Input Item
Datatype
Description
DynamicHeaders
complex
The dynamic header is an additional header parameter to
add runtime headers to the outgoing HTTP messages. This
element is specified in the Input tab.
You can use only US-ASCII characters in
DynamicHeaders.
The dynamic headers consist of the following information:
●
Name: the name of the header
●
Value: the value of the header
You can consider the following overriding conditions.
●
Overrides the value of HeaderName with the value found
in DynamicHeaders if it is a non-repeating header. If
more than one occurrence of this header is found under
DynamicHeaders, it throws the following exception.
The header [ headerName ] is defined as nonRepeating Header in Input Headers. This header
cannot have multiple occurences in
DynamicHeaders.
mimeEnvelopeEl
ement
complex
●
If it is a repeating element, add the respective name or
value pairs under DynamicHeaders, which is added to
the existing list maintained for this element.
●
For a repeating element, if the new header name is not
found under the "Headers" section declared through
TIBCO Business Studio Container Edition, the following
is added into HTTP Headers.
—
Shows only one value, if found once in
DynamicHeaders.
—
Shows an array of values, if found repeating in
DynamicHeaders.
This element contains the message attachments.
This element contains a repeating element named mimePart
that contains each mime attachment.
TIBCO BusinessWorks™ Container Edition Palette Reference
67
Input Item
Datatype
Description
mimeHeaders
complex
This element contains the mime header for each mimePart.
mimeHeaders can contain the following information:
●
content-disposition: to suggest a filename for an
attachment, use "*;filename=<filename>" in this
element.
The HTTP servers may alter or ignore the
suggested name.
●
content-type
●
content-transfer-encoding
●
content-id
See http://www.faqs.org/rfcs/rfc2045.html for more
information about MIME headers and their syntax.
When the content type is specified as "text/*"
(for example, "text/xml"), the attachment content
is expected to be in either the textContent input
element or the file name storing the attachment is
expected to be in the fileName input element.
When the content type is anything other than
"text/*", the attachment content is in either the
binaryContent input element or the file name
storing the attachment is in the fileName input
element.
binaryContent |
textContent |
fileName
choice
This element contains the mime attachment.
The element can be one of the following:
●
binaryContent: content of the attachment content of the
attachment when the attachment is binary data.
●
textContent: content of the attachment when the
attachment is text data.
●
fileName: the file name of the attachment written to the
disk.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective actions to take.
Fault
Thrown When..
ActivityTimedOutException
The timeout for the activity is attained.
HttpClientException
The HTTP server responds with a message containing the 4XX
status code.
TIBCO BusinessWorks™ Container Edition Palette Reference
68
Fault
Thrown When..
HttpServerException
The HTTP server responds with a message containing the 5XX
status code.
HttpCommunicationException
An HTTP exception occurred while executing the specified
method, or when trying to read the response.
Sending Data in the HTTP Request
You can use several HTTP methods in an HTTP request. Each method sends data in the request in a
different manner. For example, the GET method uses the query string of the RequestURI to pass
parameter and value pairs. Other methods use the HTTP message body to send data in the request.
The Send HTTP Request activity has the following three input elements for sending data in a request:
●
Post Data: corresponds to the body of the HTTP message. All methods except the GET method
accept data in this element.
●
Query String: corresponds to the query string of the RequestURI. You can use this input element to
dynamically construct the query string using an XPath expression when you do not know the
names or number of the input parameters for the request until the activity executes.
●
Parameters: corresponds to the parameters defined in the Parameters field on the General tab. This
is useful if you have a fixed set of parameters to send with the request. For requests using the GET
method, these parameters are passed as the query string of the RequestURI. For requests using the
POST method, these parameters are usually sent as the body of the HTTP message. They can also be
included in the query string.
These input elements are mutually exclusive for some methods. For example, for POST requests, you
can either specify parameters on the General tab and in the parameters input element or you can
specify a PostData input element. However, do not specify both input elements. In the case of a POST
request, the PostData input element is ignored when you specify parameters on the General tab.
For GET requests, you can either specify the parameters on the General tab and in the parameters input
element or you can specify a QueryString input element. If you know the list of parameters for the
request, configure the parameters on the General tab. If the list of parameters is not known until the
activity executes, use the QueryString element. However, when you specify all parameters on the
General tab as Optional, you can use the QueryString input element instead of the parameters input
element. If any element in the parameters element contains an expression, the QueryString element is
ignored.
Special Characters in HTTP Requests
Depending upon the content type of the data for the request, the request can contain URL-encoded data
and the server decodes the data. If this is the case and you want to send special characters such as +, /,
or = in your HTTP request, your data string must be URL-encoded if you send the data using the
PostData or QueryString input elements. If you send the data using the parameters specified on the
General tab, encoding is done automatically.
For example, if you want to specify the following PostData:
name=John Smith&address=500 1/2 Main Street,
the PostData input element should result in the following string:
name=John%20Smith&address=500%201%2F2%20Main%20Street
For more information about the URL specification, see http://www.rfc-editor.org/rfc/rfc1738.txt.
TIBCO BusinessWorks™ Container Edition Palette Reference
69
Send HTTP Response
Send HTTP Response is a synchronous activity that sends a response to a previously received HTTP
request. The default status line returned by this activity is "200 OK".
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Reply For
The HTTP Receiver process starter activity that received the request. This is a
list of available activities that can receive HTTP requests.
Flush Response
You can specify whether the response is to be flushed after each Send HTTP
Response activity.
By default, this property is not selected. This check box is useful when there are
a large number of Send HTTP Response activities in a job. In such cases, the
Close Connection check box is selected in the last activity to indicate the
response is complete.
However, selecting the Flush Response check box overrides this behavior and
causes the response to be flushed after each Send HTTP Response activity.
Close
Connection
Specifies that this activity contains the last part of an HTTP response. This field
is used when you have more than one Send HTTP Response activities in a
process and each activity sends a part of the response to the client. All Send
HTTP Response activities in a process should have this check box clear, except
the last Send HTTP Response activity. Select this check box for the last Send
HTTP Response activity to indicate the response is complete.
Select this check box, if the entire response is sent by only one Send HTTP
Response activity in the process.
Description
Provide a short description for the activity.
Input Editor
Input Editor tab describes the data structure for the headers of the HTTP response. You can use the
default structure, or you can alter the structure, if the outgoing response has a specific data structure for
the header of the request.
The header structure is defined by the HTTP protocol. See the HTTP Protocol specification for more
information about the fields and content of the header of a HTTP request. You can obtain this
specification at www.w3.org.
The following are the default header fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
70
Header
Datatype
Description
StatusLine
string
This field is the first line of a response message. This consists
of the protocol version, a numeric status code, and the text
phrase explaining the status code.
See the HTTP specification for more information about status
codes in HTTP responses.
Content-Type
string
This field indicates the media type of the entity body sent to
the receiver. The media types are described in the HTTP
specification. An example of the media type is: text/html;
charset=ISO-8850-4.
By default this item is set to text or html. If you are using
this activity and the Retrieve Resources activity to retrieve a
WSDL file, you should set the type to text or xml when
specifying values on the Input tab.
Set-Cookie
string
See the HTTP specification for more information about this
field.
Pragma
string
This field is used to include implementation-specific
directives that might apply to the receiver. See the HTTP
specification for more information about using this field.
Location
string
This field is used to redirect the receiver to a location other
than the RequestURI for the completion of the request or for
identifying a new resource.
Input
The following is the input for the activity.
Input Item
Datatype
Description
binaryContent
binary
The binary content of the response to the request.
asciiContent
string
The ASCII content of the response to the request.
Headers
complex
The fields of the header specified on the Input Editor tab. See
the description of the Input Editor tab for more information
about these items.
Only the first Send HTTP Response activity in the
process can set the Headers element. If your process
contains multiple Send HTTP Response activities, the
headers are set by the first activity and this element is
ignored for all subsequent activities.
TIBCO BusinessWorks™ Container Edition Palette Reference
71
Input Item
Datatype
Description
DynamicHeade
rs
complex
The dynamic header is an additional header parameter to add
runtime headers to the outgoing HTTP messages. This element
is specified on the Input tab. DynamicHeaders consists of the
following information:
●
Name: the name of the header
●
Value: the value of the header
You can consider the following overriding conditions:
●
Overrides the value of the HeaderName with the value
found in the DynamicHeaders, if it is a non-repeating
header. If more than one occurrence of this header is found
under DynamicHeaders, it throws the following exception:
The header [ headerName ] is defined as nonRepeating Header in Input Editor. This header
cannot have multiple occurences in DynamicHeaders.
mimeEnvelope
Element
complex
●
If it is a repeating element, add the respective name value
pairs under DynamicHeaders. This is added to the existing
list maintained for this element.
●
For a repeating element, if the new header name is not found
under the "Headers" section in TIBCO Business Studio
Container Edition, the following is added into the HTTP
headers.
—
Shows only one value, if found once in the
DynamicHeaders.
—
Shows an array of values, if found repeating in
DynamicHeaders.
This element contains the message attachments.
This element contains a repeating element named mimePart that
contains each mime attachment.
TIBCO BusinessWorks™ Container Edition Palette Reference
72
Input Item
Datatype
Description
mimeHeaders
complex
This element contains the mime header for each mimePart.
mimeHeaders can contain the following information:
●
content-disposition: to suggest a filename for an attachment,
use "*;filename=<filename>" in this element.
The HTTP servers may alter or ignore the
suggested name.
●
content-type
●
content-transfer-encoding
●
content-id
●
any element
See http://www.faqs.org/rfcs/rfc2045.html for more information
about MIME headers and their syntax.
When the content type is specified as "text/*" (for
example, "text/xml"), the attachment content is
either the textContent input element or the file name
storing the attachment is in the fileName input
element. When the content type is anything other than
"text/*", the attachment content is in either the
binaryContent input element or the file name storing
the attachment is in the fileName input element.
binaryContent
|
choice
This element is the content of the attachment when the
attachment is binary data.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective action to take.
Fault
Thrown When..
HttpCommunicationExceptio
An HTTP exception occurred when sending the response.
n
TIBCO BusinessWorks™ Container Edition Palette Reference
73
JAVA Palette
The Java palette has activities for executing Java code as well as converting between Java objects and
XML documents.
Converting JAVA Class to XML Schema
This topic lists the rules that need to be followed when converting Java class to XML schema.
The Java class is converted to an XML schema using the following rules:
●
The Java class public member should not have the public getter and setter methods for it.
●
The Java class member public variable name is mapped to an XML element with the same name. For
example, a Java class member variable declared as public int ZipCode is mapped to an XML
element named ZipCode.
●
The Java Bean accessors and modifiers are mapped to appropriate XML element names. For
example, a Java class method public int getBalance() or public void setBalance(int Balance) are
mapped to an XML element named Balance.
●
Only one XML element is created regardless of how many members of the Java class share the same
name. For example, there may be an attribute named MySalary and accessors named getMySalary()
and setMySalary(). This translates to one element named MySalary in the resulting XML document.
●
All Java primitive types are supported. Datatypes that extend java.util.Collections, are also
supported (for example, List, ArrayList, and Vectors). Arrays (for example, int[ ] and string[ ]) are
also supported.
●
Use Java generics and provide the type information while declaring and creating the collection for
example,
Instead of using List list = new ArrayList();
use generics: List<String> list = new ArrayList<String>();
●
The datatype java.util.Map or any types that extend java.util.Map are not supported. For
example, HashMap is not supported.
Creating Custom XPath Functions
This topic provides the detailed procedure of creating a custom XPath function group. You can use the
Custom XPath Function wizard to create your custom XPath function group. It uses the
com.tibco.xml.cxf.customXPathFunction extension.
Procedure
1. Launch TIBCO Business Studio and select File > New > Project.
2. In the New Project window, select Plug-in Project and click Next.
TIBCO BusinessWorks™ Container Edition Palette Reference
74
3. Specify a name for the project that reflects the XPath functions, for example,
MyCustomXPathFunctions. Retain all other default selections and click Next.
4. On the Plug-in Content page, locate the Options group and ensure This plug-in will make
contributions to the UI is selected.
5. Accept all of the defaults and click Next.
TIBCO BusinessWorks™ Container Edition Palette Reference
75
6. Select Custom XPath Function Wizard on the Templates page, and click Next.
TIBCO BusinessWorks™ Container Edition Palette Reference
76
7. In the New Custom XPath Function Group plug-in project window provide values for the following
fields and click Next to continue.
●
Category: The name of the category that includes the custom XPath functions
●
Prefix: The prefix for the functions
TIBCO BusinessWorks™ Container Edition Palette Reference
77
●
Namespace: The namespace for the functions
●
Help Text: The description of the functions
8. Specify the XPath Function and XPath Function Parameters in the XPath Function Group Creation
Section dialog.
9. Click the Add button located on the right side of the XPath Functions table and provide values for:
●
Name: the name of the function
●
Return Type: the return type of the function
●
Description: the description of the function
10. Click the Add button located on the right side of the XPath Function Parameters table. Specify
values for the following parameters and click Finish:
●
Name: the name of the parameter
●
Type: the data type of the parameter
●
Optional: select the check box if the parameter is optional.
11. The Open Associated Perspective dialog displays. Click Yes.
TIBCO Business Studio opens in Plug-in and the Plug-in Development perspective.
12. Open the Java class in the newly created Custom XPath function plug-in and implement the
Custom XPath function.
TIBCO BusinessWorks™ Container Edition Palette Reference
78
Now your Custom XPath function is ready for use at design time and run time.
Using Custom XPath Function at Design Time and Run Time
You can use the newly created Custom XPath functions at design time and run time.
Making Your Custom XPath Function Available at Design Time
Procedure
1. Right-click the Custom XPath Function Plug-in project and select Export from the menu. On the
Export window, select Plug-in Development > Deployable plug-ins and fragments and click Next.
2. Select the Install into host Repository radio button on the Deployable plug-ins and fragments
screen and click Finish.
TIBCO BusinessWorks™ Container Edition Palette Reference
79
The Custom XPath function plug-in is exported into the TIBCO Business Studio ™ instance to use at
design time.
3. You may be prompted with the following security warning message. Click OK.
4. Click Restart Now when the following window is displayed.
5. In TIBCO Business Studio ™, the Custom XPath function is available for use in any activity mapper
in an TIBCO BusinessWorks ™ process.
TIBCO BusinessWorks™ Container Edition Palette Reference
80
Making Custom XPath Function Available at Run Time
●
After using the Custom XPath function in an activity in an TIBCO BusinessWorks ™ process
at design time, include the Custom XPath function plug-in the application project.
●
After including the Custom XPath Function Plug-in in the application project, test it in the
Debugger and then, export it as an EAR, and deploy at run time.
Deleting Custom XPath Functions
This topic lists the steps to uninstall a Custom XPath function so that it is not visible in the mapper.
Procedure
1. On the menu bar, click Help. On Mac, this is located under the "BusinessWorks" menu.
TIBCO BusinessWorks™ Container Edition Palette Reference
81
2. Click Installation Details.
The following dialog box is displayed.
3. Select the Custom XPath function you want to uninstall, and click the Uninstall button.
4. Restart the workspace.
JAVA Invoke
Java Invoke is a synchronous activity that can be used to invoke a Java class method. You can construct
an instance of the specified Java class, if you invoke the constructor for the class.
General
The General tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
82
Field
Literal Value/
Module
Property
Name
None
The name to be displayed as the label for the activity in the
process.
Java Global
Instance
None
Specify the resource in this field to execute methods on shared
Java objects created by Java Global Instance resources.
Description
Refer to Java Global Instance for more information about the
shared Java objects created by Java Global Instance resources.
This disables the options on the Advanced tab. In the dropdown list in the Method field, you can select the method to
execute.
If the configuration of the Java Global Instance
resource changes, select and view any Java Invoke
activities in your process that reference the Java
Global Instance to automatically propagate the
changes. An exception is raised if you attempt to test
your process before refreshing the reference to the
Java Global Instance. You may need to manually
update the mappings of any input or output, if you
select a new method with a different signature in the
Java Global Instance resource.
MultiOutput
None
Select this check box to specify multiple parameters in the Java
invoke method.
Class Name
None
The declared Java class whose method you want to execute.
Use the Browse A Class button to select the class, or use the
Java Global Instance field to specify a shared Java object.
Method
None
The method in the selected Java class you want to execute.
You can use the drop-down list to select a different method in
the selected Java class, if required.
TIBCO BusinessWorks™ Container Edition Palette Reference
83
Field
Literal Value/
Module
Property
Parameters
None
Description
The parameters for the Java Invoke activity. This element is
available when the MultiOutput check box is selected.
This element contains a list of input and output parameters that
are required for the Java invoke. This element is not available
when the selected method has no parameters.
Each Input and Output parameter has the following fields.
●
Field Type: It can be either
●
Field Name: The name of the parameter. When creating a
new parameter, provide the name of the parameter. The
setter/getter methods get automatically generated for the
same, or select the options from the drop-down list of the
names of class member variables that have setter/getter
methods.
●
Type: The datatype of the parameter. The default is string.
Specify one of the supplied Java primitive types, or specify
Object Reference when accepting a Java object from another
Java activity as input.
●
Occurrence: Specify whether the parameter is Required,
Optional, or Repeating.
●
Click
to add the input parameter.
●
Click
to add the output parameter.
●
Click
to delete the parameter.
In
or Out.
Description
Provide a short description for the activity.
Advanced
The Advanced tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
84
Field
Instantiate the
referenced class
Literal Value/
Module
Property
Description
None
This field controls one of the following:
●
The referenced class must be constructed when the activity
is executed,
●
An object reference must be supplied in the activity’s input
schema.
Select this check box, if you want to construct the referenced
class using the default constructor when the activity executes.
In this case, the referenced class is not included in the
activity’s input schema.
Do not select this check box, if you want to provide an object
reference for the class name specified on the General tab. The
object must be created and contained in the output schema of
a previously executed activity.
In this case, the referenced class is included in the activity’s
input schema.
This check box is not available when MultiOutput on the
General tab is selected.
Cache the object
None
This option is available only when the Instantiate the
referenced class check box is selected.
Select this check box to specify that all instances of this Java
Invoke activity share the instance of the instantiated
referenced class. A cached referenced object is kept in the
memory until the process engine terminates.
Not selecting this check box leads to each instance of this Java
Invoke activity creating its own copy of the referenced class.
Invoke Cleanup
Method
None
This check box is available only when the Cache the object
check box is selected.
When selected, you can invoke a method on the cached object
before the object is released from memory, when the process
engine terminates. You can perform cleanup activities, such as
closing connections, updating database tables, and so on.
Select this check box to display the Cleanup Method field.
Cleanup Method
None
This field is available only when the Invoke Cleanup Method
check box is selected.
Using this field you can specify the name of the method to
invoke, before the cached class in memory is released.
The selected method cannot contain any parameters, therefore
only methods with no parameters are listed in this field. Any
values returned by the selected method are ignored, but
exceptions raised by the selected method are sent to the log.
TIBCO BusinessWorks™ Container Edition Palette Reference
85
Input
The following is the input for the activity.
Input Item
Datatype
Description
Parameters
varies
This element contains a list of input parameters that are
required for the Java invoke Method selected on the General
tab.
This element is not available when the selected method has no
parameters.
Output
The following is the output of the activity.
Output Item
Datatype
Description
MethodReturnValue
varies
The Output tab has the return value specified for the Java
invoke Method selected on the General tab.
This element is not available for methods that return void.
Parameters
varies
The Output tab lists all output parameters specified on the
General tab.
Selecting MultiOutput on the General tab makes this output
item available.
Fault
The Fault tab lists the exceptions thrown by this activity. Selecting a method to invoke lists the
exceptions thrown by the method.
In theJava Invoke activity:
●
If MultiOutput is selected, the Fault tab throws the InvocationException exception with error
schema element as msg,msgCode,methodName,exceptionClassName,exceptionMessage.
●
If MultiOutput is not selected, the Fault tab shows the exceptions thrown by the method selected in
it with error schema elements as: 1:Java exception Object 2:exceptionClassName
3:exceptionMessage
●
If MultiOutput is not selected and method does not throw any exception, again the Fault tab shows
InvocationException with error schema element as msg, msgCode, methodName,
exceptionClassName, and exceptionMessage.
Error Schema Element
Datatype
Description
msg
string
The TIBCO BusinessWorks Container Edition error
message. For details, refer to Error Codes.
msgCode
string
The TIBCO BusinessWorks Container Edition error code.
For details, refer to Error Codes.
TIBCO BusinessWorks™ Container Edition Palette Reference
86
Error Schema Element
Datatype
Description
methodName
string
The name of the Java method that raised the exception.
exceptionClassName
string
The exception class name.
The value of this element is obtained by calling the
<exception>.getClass().getName() method.
exceptionMessage
string
The exception message.
The value of this element is obtained by calling the
<exception>.getMessage() method.
Java Process Starter
Java Process Starter is a process starter activity. You can use this activity to create a custom starter
written in Java.
Java Process Starter Abstract Class
The JavaProcessStarter abstract class defines the interface of your Java Process Starter with the TIBCO
BusinessWorks Container Edition application. You must define an implementation for the following
methods:
●
init() : this method is called when the process engine starts up. This method should initialize any
resource connections. You could also specify a Java global instance on the Advanced tab that
initializes resource connections. Java global instances are also loaded and initialized during
application start up. You can call this .getJavaGlobalInstance() to obtain the Java global instance
resource in your process starter code.
●
onStart() : this method is called by the process engine to activate the process starter. This method
should activate any event notifier or resource observer code. The notifier or observer code can then
call the onEvent() method to start a process instance.
●
onStop(): this method is called by the application to deactivate the process starter. This method
should deactivate any event notifier or resource observer code.
●
onShutdown(): this method is called by the application when the runtime shuts down. This method
should release any resources and resource connections and perform any required clean up
operations.
The following methods are already implemented and can be used in your code:
●
onEvent(Object object): this method is called when a listener or resource observer catches a new
event. The input to this method is a Java object containing the event data.
●
getGlobalInstance(): this method returns an object reference to the Java global resource specified on
the Advanced tab of the process starter. This is useful if you want to place initialization code or
other shared information in a Java global resource instead of in the init() method of this class.
●
onError(): this method throws the exception specified in the input parameter. Use this method to
propagate an error to the TIBCO BusinessWorks Container Edition process instance when a listener
or resource observer fails to generate an event.
Passing Java Objects Between Java Activities
You can create instances of Java objects in Java Invoke activity or by using the Java Invoke or XML To
Java activities. These Java objects can be passed using an output parameter to another activity later in
the process definition. The Java Invoke activity receiving a Java object accepts the object into an input
parameter. Map the output Java object to the input object of the receiving Java Invoke object.
TIBCO BusinessWorks™ Container Edition Palette Reference
87
Any Java objects passed by input and output parameters between activities should have the capability
to serialize.
General
The General tab has the following fields.
Field
Process
Property
Name
No
The name to be displayed as the label for the activity in the
process.
Class Name
No
The name of the compiled Java class that is implemented by
extending the JavaProcessStarter abstract class.
Description
Use the Browse a Class
button to select the class from the
specified class library. This shows the classes that extend from
the JavaProcessStarter abstract class.
Initialize with
Parameters
No
Selecting this check box displays the Init Method field and Init
Parameters table.
Init Method
No
Selecting the Initialize with Parameters check box displays this
field.
You can use the drop-down list, if required, to select a different
method in the selected Java class.
Init Parameters
No
Specify default values in this table for the input parameters of
the init() method. Each input parameter has three fields:
●
Parameter Name: the name of the parameter.
●
Parameter Type: the datatype of the parameter.
●
Parameter Value: specify a default value for the parameter.
Description
Provide a short description for the activity.
Advanced
The Advanced tab has the following fields.
Field
Description
Sequence key
This field can contain an XPath expression that specifies which processes
should run in sequence. Process instances with sequencing keys that
evaluate to the same value are executed in the sequence the process
instance was created.
Custom Job Id
This field can contain an XPath expression that specifies a custom job ID
for the process instance.
TIBCO BusinessWorks™ Container Edition Palette Reference
88
Field
Description
Java Global Instance
A Java global instance resource. Specify a value in this field to reference a
Java global instance resource in your JavaProcessStarter implementation
class. Refer to Java Global Instance for details.
You can use the getGlobalInstance() method to obtain a reference to the
Java global instance resource.
Output
The following is the output of the activity.
Output Item
Dataty
pe
Description
javaObject
varies
The Java object that was passed to the onEvent() method.
By default, this element is a Java object reference.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective action to take.
Error Schema
Element
Datatype
Description
msg
string
The BusinessWorks Container Edition error message. For
details, refer to Error Codes.
msgCode
string
The BusinessWorks Container Edition error code. For details,
refer to Error Codes.
Java To XML
Java To XML is a synchronous activity. You can use this activity to convert Java object's data members
into an XML document.
If the class does not have a public data member and only has a Java bean modifier that sets the data, the
input schema contains an element for the modifier, but the resulting XML document has no value set
for the corresponding element. For example, the Java object has a method declared as public int setID(),
but there is no method for getting the ID and the data member ID is not public. In this case, an element
named ID in this activity’s output schema exists, but that element has no value because there is no
public mechanism for getting the data.
General
The General tab has the following fields.
Field
Module
Property?
Description
Name
No
The name to be displayed as the label for the resource.
TIBCO BusinessWorks™ Container Edition Palette Reference
89
Field
Module
Property?
Description
Class Name
No
The class name in the Java schema to use.
Use the Browse button to bring up the dialog to select the Java
class.
Click the Reload button to regenerate the schema.
Description
Provide a short description for the activity.
Advanced
The Advanced tab has the following fields.
Field
Description
Instantiate the
referenced class
This field controls one of the following:
●
The referenced class must be constructed when the activity is
executed.
●
An object reference must be supplied in the activity’s input schema.
Select this check box to construct the referenced class using the default
constructor when the activity executes. In this case, the referenced class
is not included in the activity’s input schema.
Do not select this check box if you want to provide an object reference
for the class name specified on the General tab. The object must be
created and contained in the output schema of a previously executed
activity.
In this case, the referenced class is included in the activity’s input
schema.
Cache the object
This option is available only when you select the Instantiate the
referenced class check box.
Select this check box to specify that all instances of this Java Invoke
activity share the instance of the instantiated referenced class. A cached
referenced object is kept in the memory until the process engine
terminates.
Not selecting this check box leads to each instance of this Java To XML
activity creating its own copy of the referenced class.
Input
The following is the input for the activity.
TIBCO BusinessWorks™ Container Edition Palette Reference
90
Input item
Datatype
Description
referenced class
Java Object
An object reference to the Class Name specified on the
General tab. This element is only available when you do not
select the Instantiate the referenced class check box on the
Advanced tab.
Output
The following is the output of the activity.
Output Item
Datatype
Description
XML Schema
varies
The output is the XML schema from the converted Java object.
The elements in the schema display in alphabetical order.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and possible the corrective actions to take.
Fault
Thrown When...
JavaToXMLConversionExceptio
An error occurred when converting the Java object to XML.
n
XML To Java
XML to Java is a synchronous activity. You can use this activity to create an instance of a Java object
based on data from an XML document. The XML schema for providing the input to the Java object or
Java schema specified on the General tab of this activity.
The specified Java class must meet the following requirements:
●
The Java class must have a public default constructor (that is, a constructor with no arguments).
●
The Java class must be eligible to be serialized (that is, the class must implement or be a subclass of a
class that implements java.io.Serializable).
If the class does not have a public data member and only has a Java bean accessor that retrieves the
data, the input schema contains an element for the accessor. However, the resulting Java object has no
value set for the member. For example, the object has a method declared as public int getID(), but there
is no method for setting the ID and the data member ID is not public. In this case, an element named ID
in this activity’s input schema, but mapping a value to the element does not result in setting the ID
member of the output Java object. This is because there is no public mechanism for setting the data.
General
The General tab has the following fields.
Field
Module
Property?
Description
Name
No
The name to be displayed as the label for the resource.
TIBCO BusinessWorks™ Container Edition Palette Reference
91
Field
Module
Property?
Description
Class Name
No
The class name in the Java schema to use.
Use the Browse button to bring up the dialog to select the Java
class.
Description
Provide a short description of the activity.
Input
The following is the input for the activity.
Input Item
Datatype
Description
XML Schema
varies
The XML schema you want to convert to a Java object. The
content of this schema depends upon the Java class or Java
schema defined in the Class Name field on the General tab.
The elements in the schema display in an alphabetical order.
Output
The following is the output of the activity.
Output Item
Datatype
Description
referenced
class
Java Object
A Java object that is created out of the XML schema.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the possible corrective actions.
Fault
Thrown When..
XMLToJavaConversionExceptio
An error occurred when converting the XML schema to a Java
object.
n
TIBCO BusinessWorks™ Container Edition Palette Reference
92
JDBC Palette
The JDBC palette contains activities for querying, updating, or calling stored procedures in the
database.
JDBC Call Procedure
JDBC Call Procedure is an asynchronous activity that calls a database procedure or function using the
specified JDBC connection. If this activity is not part of a transaction group, the SQL statement is
committed after the activity completes.
If this activity is part of a transaction group, the SQL statement is committed or rolled back with the
other JDBC activities in the group at the end of the transaction.
To override the default behavior of transaction groups for certain JDBC activities in a transaction
group, select the Override Transaction Behavior check box on the Advanced tab. This specifies that the
activity is outside of the transaction and the SQL statement is committed when the activity completes,
even if the activity is in a transaction group.
General
The General tab has the following fields.
Field
Literal Value/
Process
Property/
Module
Property?
Name
None
The name to be displayed as the label for the activity in the
process.
JDBC Shared
Resource
Yes
The path to the shared resource containing the JDBC
connection information.
Description
For more information, see JDBC Connection.
Timeout
Yes
The time (in seconds) to wait for the procedure call to
complete. If the call does not complete in the specified time
limit, it returns an error.
Maximum Rows
Yes
The maximum number of rows to retrieve. To retrieve all
rows, specify 0.
Description
Provide a short description for the activity in this field.
Procedure
The Procedure tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
93
Field
Literal Value/
Process
Property/
Module
Property?
Schema
Yes
Description
The schema in which the procedure resides. This name is used to
resolve naming conflicts, if more than one schema in the database has
the selected procedure with the same name.
Configure the Schema field to use a Process Property or a Module
Property if a schema has been defined for the project, and you know
the schema name. To search for a schema, configure the field to use a
Literal Value , and click the Browse button to select a schema from
the database that is using the specified JDBC Connection.
Catalog or
Package
Yes
The catalog or package in which the procedure resides. This name is
used to resolve naming conflicts if more than one catalog or package
in the database has selected procedures with the same name.
Configure the Catalog or Package field to use a Process Property or a
Module Property if a catalog or package has been defined for the
project, and you know their names. To search for a catalog or
package, configure the field to use a Literal Value , click the Browse
button, and select a catalog or package from the database using the
specified JDBC Connection. If a schema is specified in the Schema
field, only catalogs or packages in the specified schema are listed.
This field is only applicable to databases with more than one catalog
and package. See your database documentation for more information
about catalogs and packages.
Procedure
/ Function
No
The name of the database procedure or user-defined function to call.
Click the Browse button to select the database for available
procedures or functions after specifying the JDBC Connection field.
Click the Refresh button to retrieve the changes from the database, if
you change the parameters or signatures while editing your project.
The list of available procedures and functions is limited by the values
supplied in the Schema and Catalog or Package fields.
Parameter
s
No
This field displays the parameters for the procedure and you can
override the data type (IN, OUT, IN/OUT) for each parameter in the
Direction column.
The parameters listed in the table show the Parameter Name, Data
Type, and the Direction (IN, OUT, IN/OUT) of the each parameter.
All IN and IN/OUT parameters listed in the Parameters table are
shown in the Input tab of the activity for the user to provide values.
Advanced
The Advanced tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
94
Field
Description
ThreadPool
SharedResource
Specifies a queue of threads available to run a queue of tasks. Thread pools
are used to improve performance when executing large numbers of
asynchronous tasks by reducing per task invocation overhead, provide a
means of bounding, and managing the resources consumed when executing
a collection of tasks.
Override
Transaction
Behavior
Overrides the default behavior of a transaction group. If this activity is in a
transaction group, the activity is normally committed or rolled back with the
other transactional activities.
Select this check box to specify that this activity is not part of the transaction
group and is committed when it completes. Also, select this check box to use
a separate database connection to perform the activity and commit the SQL
statement.
Override JDBC
Connection
Selecting this option overrides the default datasource connection, and allows
for SQL queries to be executed against the optional datasource.
After selecting this option, the sharedResourceName field is enabled under
the Input > Data Source tab. From the sharedResourceName field, type the
complete path with the name of the optional datasource, which can be found
under the Resources folder. For example, if a JDBC shared resource is
located at Resources > Package_Name > JDBC_SR_Name, then the value
you enter should be Package_Name.JDBC_SR_Name. The value you enter
in the XPath Expression field is case sensitive and must be a string.
To avoid mapping issues, ensure the optional datasource maintains a
structure that is identical to the default database, and that both datasources
are using the same datatypes.
Transactions between multiple datasources is not supported.
Interpret Empty
String as Null
Specifies how empty strings in the activity’s input elements should be
handled. Selecting this check box sends the nulls to the database where
empty strings are supplied.
Empty strings are treated as zero-length strings, if this check box is not
selected. Whether you use this option or not, you can still use XPath to set
input elements explicitly to null.
ResultSets Use
Schema
Specifies that the design-time must try to fetch the schema when a resultset
is expected from a stored procedure call.
When selected, TIBCO Business Studio tries to invoke the stored procedure
with default values and get the metadata for the resultset.
If the check box is not selected, or if TIBCO Business Studio does not get any
metadata, the results are displayed as ’unknown resultsets’.
Input
The input for this activity is dependent upon the input parameters of the database procedure.
TIBCO BusinessWorks™ Container Edition Palette Reference
95
Input Item
Datatype
Description
inputSet
complex
The input parameters of the database procedure. The
datatype contained in this element varies depending upon
the parameters specified for the database procedure.
The IN and IN/OUT parameters displayed in the Parameters
table on the Procedure tab are displayed here for the user to
set values.
ServerTimeZone
string
Specifies the time zone for the database server.
timeout
number
The time (in seconds) to wait for the procedure call to
complete. The call if not completed in the specified time
limit, returns an error.
maxRows
number
The maximum number of rows to retrieve. To retrieve all
rows, specify 0.
Output
The output of the activity is depends upon the output parameters of the database procedure.
Output Item
Datatype
Description
outputSet
complex
The output of the database procedure. The datatype
contained in this element varies depending upon what the
database procedure returns.
UnresolvedResult
Sets
string
The output of the database procedure may return other result
sets. These result sets are returned in this output item as an
XML string. Create a schema resource to describe these result
sets, and then use the Parse XML activity to parse the XML
based on the schema. You can then use the parsed output in
subsequent activities.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the possible corrective action to take.
Fault
Thrown When..
JDBCConnectionNotFoundException
An error occurred when attempting to connect
to the specified database.
InvalidTimeZoneException
An invalid time zone was specified.
JDBCSQLException
An SQL error occurred.
LoginTimedOutException
A timeout occurred while attempting to
connect to the database.
ActivityTimedOutException
The operation times out.
TIBCO BusinessWorks™ Container Edition Palette Reference
96
JDBC Query
JDBC Query is an asynchronous activity that performs the specified SQL SELECT statement.
General
The General tab has the following fields.
Field
Literal Value/
Module
Property?
Name
None
The name to be displayed as the label for the activity in the
process.
JDBC Shared
Resource
Yes
The path to the shared configuration resource containing the
JDBC connection information. For details, refer to JDBC
Connection.
Timeout(sec)
Yes
The time (in seconds) to wait for the query to complete. If the
query does not complete in the given time limit, an error is
returned.
Maximum rows
Yes
The maximum number of rows to retrieve. To retrieve all
rows, specify 0.
Description
Description
Provide a short description for the activity.
Statement
The Statement tab has the following fields.
Field
Description
Statement
This is the SQL SELECT statement to perform in the database. You can use a
SQL Builder wizard to build the query for the desired database.
Prepared Statement
The Prepared Statement contains the Parameter Name and Data Type fields.
All the parameters defined in the Prepared Statement table are shown in the
Input tab of the activity for the user to provide values.
Each prepared statement corresponds to the question mark in the same
position in the SQL statement. That is, the first prepared statement in the list
corresponds to the first question mark, the second prepared statement in the
list corresponds to the second question mark, and so on. The warning is for
the purpose of information only. Ensure that the parameters in this field
correctly correspond to the statement.
You can optionally specify names for each prepared parameter. By default, the prepared statements are
named Parameter1, Parameter2, and so on. You must supply the datatype of each parameter to the SQL
statement, and this datatype is used in the input schema for the statement.
Execute the Query Button
TIBCO BusinessWorks™ Container Edition Palette Reference
97
Runs the JDBC Select statement entered in the Statement field and shows the results in the Results
View. These results are persisted in the workspace.
SQL Button
Launch Eclipse SQL Builder. For more information on using the SQL Builder to visually build queries,
go to: http://help.eclipse.org/luna/index.jsp?topic=%2Forg.eclipse.datatools.sqltools.doc.user%2Fdoc
%2Fhtml%2Fasc1229700427574.html
Fetch Button
Using the Fetch button on this activity, you can synchronize the activity with the contents of the
database. When you first configure a JDBC activity, click the Fetch button to retrieve the schema for the
output result set before applying your changes by saving your project.
After you have configured your activity, the Fetch button is useful when you make a change to the
database while editing a process containing this activity in TIBCO BusinessWorks Container Edition.
The Fetch button synchronizes with the database and changes the output schema, if necessary.
Advanced
The Advanced tab has the following fields.
Field
Description
ThreadPool
SharedResource
Specifies a queue of threads available to run a queue of tasks. Thread pools
are used to improve performance when executing large numbers of
asynchronous tasks by reducing per task invocation overhead, provide a
means of bounding, and managing the resources consumed when executing a
collection of tasks.
Override
Transaction
Behavior
Overrides the default behavior of a transaction group. If this activity is in a
transaction group, the activity is normally committed or rolled back with the
other transactional activities.
This activity is not part of the transaction group and is committed when it
completes, when this check box is selected. Selecting this option uses a
separate database connection to perform the activity and commit the SQL
statement.
Use Nil
Specifies whether NULLs are represented as optional schema elements or
whether each item that can contain a NULL has subitems.
Interpret Empty
String as Null
Specifies how empty strings in the activity’s input elements should be
handled. Selecting this check box sends the nulls to the database where
empty strings are supplied. Empty strings are treated as zero-length strings,
when this check box is not selected. Whether you use this field or not, you
can still use XPath to set input elements explicitly to null.
Many databases treat empty strings and nulls as the same, so this
field does not affect how the database interprets empty strings.
TIBCO BusinessWorks™ Container Edition Palette Reference
98
Field
Description
Process In Subsets
Selecting this check box specifies that you want to process the result set in
smaller batches rather than processing the entire result set at once. When this
check box is selected, the subsetSize input element is displayed for you to
specify the size of each batch of records you want to process. Also, the
lastSubset output element is displayed and is set to true when the last batch
of records is being processed.
Not selecting this check box returns the whole result set.
Input
The following is the input for the activity.
Input Item
Datatype
Description
ServerTimeZone
string
Specifies the time zone for the database server.
timeout
number
The time (in seconds) to wait for the query to complete. If the
query does not complete in the given time limit, an error is
returned.
maxRows
number
The maximum number of rows to retrieve. To retrieve all rows,
specify 0.
Output
The following is the output of the activity.
Output Item
Datatype
Description
resultSet
complex
The root class for the output of the JDBC Query activity. This
class contains all output items for the activity.
Record
complex
The result of the database query. The contents of the Record
element depends upon the columns returned by the query.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective action to take.
Fault
Thrown When..
JDBCConnectionNotFoundException
An error occurred when attempting to connect to the
specified database.
InvalidTimeZoneException
An invalid time zone was specified.
JDBCSQLException
An SQL error occurred.
TIBCO BusinessWorks™ Container Edition Palette Reference
99
Fault
Thrown When..
LoginTimedOutException
A timeout has occurred while attempting to connect to
the database.
InvalidSQLTypeException
A parameter’s datatype does not match the datatype of
the table column.
DuplicatedFieldNameException
A duplicate field name was specified.
ActivityTimedOutException
The operation has timed out.
JDBC Update
JDBC Update is an asynchronous activity that performs the specified SQL INSERT, UPDATE, or
DELETE statement.
If this activity is not part of a transaction group, the SQL statement is committed after the activity
completes. If this activity is part of a transaction group, the SQL statement is committed or rolled back
with the other JDBC activities in the group at the end of the transaction.
If you want to override the default behavior of transaction groups for certain JDBC activities in a
transaction group, you can select the Override Transaction Behavior check box on the Advanced tab.
This specifies that the activity is outside of the transaction and the SQL statement is committed when
the activity completes, even if the activity is in a transaction group.
The SQL statement is committed after the activity completes.
General
The General tab has the following fields.
Field
Literal
Value/
Module
Property?
Name
None
The name to be displayed as the label for the activity in the
process.
JDBC Shared
Resource
Yes
The path to the shared resource containing the JDBC connection
information.
Description
For details, refer to JDBC Connection.
Timeout
Yes
The time (in seconds) to wait for the query to complete. If the
query does not complete in the given time limit, an error is
returned.
Description
Provide a short description for the activity.
Statement
The Statement tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
100
Field
Description
Statement
This is an SQL INSERT UPDATE OR DELETE statement to perform in the
database. You can use the SQL Builder wizard to build the query for the
desired database.
Prepared Statement
The Prepared Statement contains the Parameter Name and Datatype fields.
All the parameters defined in the Prepared Statement table are shown in the
Input tab of the activity for the user to provide values.
Each prepared statement corresponds to the question mark in the same
position in the SQL statement. That is, the first prepared statement in the list
corresponds to the first question mark, the second prepared statement in the
list corresponds to the second question mark, and so on. The warning is for
informational purposes only, you must make sure the parameters in this field
correctly correspond to the statement.
Advanced
The Advanced tab has the following fields.
Field
Description
ThreadPool
SharedResource
Specifies a queue of threads available to run a queue of tasks. Thread pools
are used to improve performance when executing large numbers of
asynchronous tasks by reducing per task invocation overhead, provide a
means of bounding, and managing the resources consumed when executing a
collection of tasks.
Insert if record
doesn't exist
Select this check box to insert the record if it does not exist in the database.
Override
Transaction
Behavior
Overrides the default behavior of a transaction group. If this activity is in a
transaction group, the activity is normally committed or rolled back with the
other transactional activities.
If you select this check box, this activity is not part of the transaction group
and is committed when it completes. Selecting this option uses a separate
database connection to perform the activity and commit the SQL statement.
Override JDBC
Connection
Selecting this option overrides the default datasource connection, and allows
for SQL queries to be executed against the optional datasource.
After selecting this option, the sharedResourceName field is enabled under
the Input > Data Source tab. From the sharedResourceName field, type the
complete path with the name of the optional datasource, which can be found
under the Resources folder. For example, if a JDBC shared resource is located
at Resources > Package_Name > JDBC_SR_Name, then the value you enter
should be Package_Name.JDBC_SR_Name. The value you enter in the
XPath Expression field is case sensitive and must be a string.
To avoid mapping issues, ensure the optional datasource maintains a
structure that is identical to the default database, and that both datasources
are using the same datatypes.
Transactions between multiple datasources is not supported.
TIBCO BusinessWorks™ Container Edition Palette Reference
101
Field
Description
Interpret Empty
String as Null
Specifies how empty strings in the activity’s input elements should be
handled.
Selecting this check box sends the nulls to the database where empty strings
are supplied.
When the check box is not selected, empty strings are treated as zero-length
strings. Whether you use this check box option or not, you can still use XPath
to set input elements explicitly to null.
Many databases treat empty strings and nulls as the same, so this
check box does not affect how the database interprets empty
strings.
Batch Update
Selecting this check box signifies that you want to perform multiple
statements by supplying an array of records as input to the activity where
each record matches the prepared parameters for the statement. The
statements are performed in one batch at the end of the activity’s execution.
If you do not select this check box, the expected input is the list of prepared
parameters for the statement (no array of records). Some database drivers
may not support batch updates. A JDBCSQLException is thrown, if the
database driver does not support batch updates.
Input
The following is the input for the activity.
Input Item
Datatype
Description
ServerTimeZone
string
Specifies the time zone for the database server.
timeout
number
The time (in seconds) to wait for the query to complete. If the
query does not complete in the given time limit, an error is
returned.
Output
The following is the output for the activity.
Output Item
Datatype
Description
noOfUpdates
integer
The number of updates performed by the statement specified
on the General tab.
This element can also return -2 that indicates, in the event of a
batch update, that the updates were successful, but it is
unknown how many updates were performed.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective action to take.
TIBCO BusinessWorks™ Container Edition Palette Reference
102
Fault
Thrown When..
JDBCConnectionNotFoundException
An error occurred when attempting to connect to the
specified database.
InvalidTimeZoneException
An invalid time zone was specified.
JDBCSQLException
An SQL error occurred.
LoginTimedOutException
A timeout has occurred while attempting to connect to the
database.
InvalidSQLTypeException
A parameter’s datatype does not match the datatype of the
table column.
ActivityTimedOutException
The operation has timed out.
SQL Direct
SQL Direct is an asynchronous activity that executes an SQL statement that you supply. With this
activity you can build an SQL statement dynamically using other activities, then pass the SQL
statement into this activity's input. You can use this activity to execute DDL SQL statements like
CREATE and DROP. You can also execute SQL statements that are not supported by other activities in
the JDBC palette.
If this activity is not part of a transaction group, the SQL statement is committed after the activity
completes. If this activity is part of a transaction group, the SQL statement is committed or rolled back
with the other JDBC activities in the group at the end of the transaction.
General
The General tab has the following fields.
Field
Literal
Value/
Module
Property?
Name
None
The name to be displayed as the label for the activity in the
process.
JDBC Shared
Resource
Yes
The path to the shared resource containing the JDBC connection
information.
Description
For details, refer to JDBC Connection.
Timeout
Yes
The time (in seconds) to wait for the query to complete. If the
query does not complete in the given time limit, an error is
returned.
Maximum Rows
Yes
The maximum number of rows to retrieve. To retrieve all rows,
specify 0.
TIBCO BusinessWorks™ Container Edition Palette Reference
103
Description
Provide a short description for the activity in this field.
Advanced
The Advanced tab has the following field.
Field
Description
ThreadPool
Sharedresource
Specifies a queue of threads available to run a queue of tasks. Thread pools
are used to improve performance when executing large numbers of
asynchronous tasks by reducing per task invocation overhead, provide a
means of bounding, and managing the resources consumed when executing
a collection of tasks.
Override
Transaction
Behavior
Overrides the default behavior of a transaction group. If this activity is in a
transaction group, the activity is normally committed or rolled back with the
other transactional activities.
If you select this check box, this activity is not part of the transaction group
and is committed when it completes. Selecting this option uses a separate
database connection to perform the activity and commit the SQL statement.
Override JDBC
Connection
Selecting this option overrides the default datasource connection, and allows
for SQL queries to be executed against the optional datasource.
After selecting this option, the sharedResourceName field is enabled under
the Input > Data Source tab. From the sharedResourceName field, type the
complete path with the name of the optional datasource, which can be found
under the Resources folder. For example, if a JDBC shared resource is
located at Resources > Package_Name > JDBC_SR_Name, then the value
you enter should be Package_Name.JDBC_SR_Name. The value you enter
in the XPath Expression field is case sensitive and must be a string.
To avoid mapping issues, ensure the optional datasource maintains a
structure that is identical to the default database, and that both datasources
are using the same datatypes.
Transactions between multiple datasources is not supported.
Input
The following is the input for the activity.
Input Item
Datatype
Description
statement
string
The SQL statement you want to execute. You can use any
process variables to build the statement dynamically, if
required.
ServerTimeZone
string
Specifies the time zone for the database server.
TIBCO BusinessWorks™ Container Edition Palette Reference
104
Input Item
Datatype
Description
timeout
number
The time (in seconds) to wait for the query to complete. If the
query does not complete in the specified time limit, an error is
returned.
maxRows
number
The maximum number of rows to retrieve. To retrieve all rows,
specify 0.
Output
The following is the output of the activity.
Output Item
Datatype
Description
noOfUpdates
string
The number of updates performed by the statement specified
on the General tab.
This element can also return -2 that indicates, in the event of a
batch update, that the updates were successful, but it is
unknown how many updates were performed.
unknownResult
Set
string
The result of the database statement. The result element
depends upon what is returned by the statement.
The result set is a list of zero or more rows with zero or more
columns. Each column contains a name and a value element.
You can use XPath expressions to retrieve the desired row and
column from the result set. There can be multiple result sets
returned by the statements executed by this activity.
Because of this, this output item is a repeatable list of result sets.
The first item in the list of result sets corresponds to the result
set returned by the first statement executed by this activity. The
second item in the list of result sets corresponds to the result set
returned by the second statement executed by this activity, and
so on.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective action to take.
Fault
Thrown When..
JDBCConnectionNotFoundException
An error occurred when attempting to connect to the
specified database.
InvalidTimeZoneException
An invalid time zone was specified.
JDBCSQLException
An SQL error occurred.
LoginTimedOutException
A timeout has occurred while attempting to connect to the
database.
TIBCO BusinessWorks™ Container Edition Palette Reference
105
Fault
Thrown When..
ActivityTimedOutException
The operation has timed out.
TIBCO BusinessWorks™ Container Edition Palette Reference
106
JMS Palette
Java Message Service (JMS) is a specification about sending and receiving messages between two or
more applications in a Java environment. The JMS palette is used to send and receive JMS messages in
a process.
The models supported are:
●
Point-to-Point (queues): Message delivered to one recipient
●
Publish/Subscribe (topics): Message delivered to multiple recipients
JMS supports these two models by using distinct interfaces within the API for each messaging model.
Refer to the documentation of the JMS provider or JMS specifications for more information about JMS
and its message models.
Common JMS Properties and Headers
JMS properties comprise message headers and message properties. MessageHeader properties are set
by the JMS client sending the message. You can view these after the message is received. You can also
set MessageProperties on the outgoing messages on the Input tab of the activity that sends messages.
Message Headers
The following table describes the messages headers.
MessageHeaders
Property
Dataype
Description
JMSDestination
string
The destination where the message is sent.
JMSReplyTo
string
The JMS destination where the reply message should
be sent.
JMSDeliveryMode
string
The delivery mode of the message. Can be one of the
following:
●
PERSISTENT: signifies the messages are stored and
forwarded.
●
NON_PERSISTENT: messages are not stored and
may be lost due to failures in transmission.
JMSMessageID
string
The unique ID of the message.
JMSTimestamp
long
The time a message was handed off to a JMS provider
to be sent. The time is expressed as the amount of time,
in milliseconds, since midnight, January 1, 1970, UTC.
JMSExpiration
long
The expiration time of the message. The time is
expressed as the amount of time, in milliseconds since
midnight, January 1, 1970, UTC. If set to 0, the message
does not expire.
JMSRedelivered
boolean
Typically this item is set when the JMS provider has
delivered the message at least once before.
TIBCO BusinessWorks™ Container Edition Palette Reference
107
MessageHeaders
Property
Dataype
Description
JMSPriority
integer
The priority of the message. Priority is a value from 0-8.
Higher numbers signify a higher priority (that is, 7 is a
higher priority than 8).
JMSCorrelationID
string
This ID is used to link a response message with its
related request message. This is usually the message ID
of a request message when this field is found in a reply
message.
JMSType
string
The JMS provider-supplied string to describe the type
of the message. Some JMS providers use this property
to define messages in the provider’s repository. See the
JMS provider documentation for more information
about the use of this field.
Message Properties
The following table describes the messages properties.
MessageProperties
Dataype
Description
JMSXUserID
string
The ID of the user sending the message.
This property is optionally set on incoming messages
by the JMS application. This property is not set on
outgoing messages.
JMSXAppID
string
The ID of the application sending the message.
This property is optionally set on incoming messages
by the JMS application. This property is not set on
outgoing messages.
JMSXProducerTIXID
string
The transaction identifier of the transaction where this
message was produced.
This property is optionally set on incoming messages
by the JMS application. This property is not set on
outgoing messages.
JMSXConsumerTXID
string
The transaction identifier of the transaction where this
message was consumed.
This property is optionally set on incoming messages
by the JMS application. This property is not set on
outgoing messages.
JMSXRcvTimestamp
integer
The time the JMS server delivered the message to the
consumer. The time is expressed as the amount of time,
in milliseconds since midnight, January 1, 1970, UTC.
This property is optionally set on incoming messages
by the JMS server. This property is not set on outgoing
messages.
TIBCO BusinessWorks™ Container Edition Palette Reference
108
MessageProperties
Dataype
Description
JMSXDeliveryCount
integer
The number of delivery attempts for this message.
JMSXGroupID
string
The identity of the message group this message is a
part of.
You can set this property on outgoing messages to
group messages into a numbered sequence.
JMSXGroupSeq
integer
The sequence number of this message in its group.
You can set this property on outgoing messages to
group messages into a numbered sequence.
Get JMS Queue Message
Get JMS Queue Message is an asynchronous activity that retrieves a message from the specified
queue. You can use this activity to perform a receive operation on the queue as opposed to waiting for a
queue message to be delivered to the Wait for JMS Queue Message activity.
You can use the Message Selector field on the Advanced tab to retrieve a specific queue message from
the queue.
General
The General tab has the following fields.
Field
Literal Value/
Process
Property/
Module
Property?
Name
None
The name to be displayed as the label for the activity in the
process.
JMS Connection
Literal Value
The JMS connection. For details refer to, JMS Connection.
Description
Module
Property
Destination
Yes
The name of the queue from which to retrieve the message.
The syntax of the destination name is specific to the JMS
provider you are using. See the JMS provider
documentation for more information about queue names.
TIBCO BusinessWorks™ Container Edition Palette Reference
109
Field
Literal Value/
Process
Property/
Module
Property?
Description
Message Type
Yes
The type of the message which can be one of the following:
Max Sessions
No
●
Text: The message is a java.lang.String.
●
Bytes: A stream of bytes.
●
Map: A set of name or value pairs. The names are
strings, and the values are simple datatypes (JAVA
primitives), an array of bytes (use the Binary datatype
when mapping this data), or a string. Each item can be
accessed sequentially or by its name.
●
Object: A Java object that can be serialized.
●
Object Ref: An object reference to a Java object.
●
Simple: A message with no body part.
●
Stream: A stream of Java primitives, strings, or arrays
of bytes. Each value must be read sequentially.
●
XML Text: The message is XML text.
Specifies the maximum number of client sessions that can
connect with the messaging server. This property is
enabled only when the Client ACK mode is used.
The default value is 1.
Description
Provide a short description for the activity here.
Advanced
The Advanced tab has the following fields.
Field
Literal Value/
Process
Property?
Message Selector
Yes
Description
A string to determine whether a message should be
received. The syntax of the message selector is determined
by the JMS provider (where message properties are used
instead of table column names).
See the JMS provider documentation for more information
and syntax for a message selector string.
Application
Properties Type
None
The type of application-specific message properties that is
part of the message.
TIBCO BusinessWorks™ Container Edition Palette Reference
110
Output Editor
The Output Editor tab defines the schema to use for messages of type Map, Stream, or XML Text. Map
messages are name or value pairs, and using this schema you can define the structure of the retrieved
destination queue message. The schema defined on the Output Editor tab becomes the body of the
message on the Output tab. For XML Text message type, select an XSD element. For Map and Stream
message types, select an XSD type in the Output Editor tab.
Input
The following is the input for the activity.
Input Item
Datatype
Description
destinationQueu
e
string
The queue to which to send the request. This input item
overrides the Destination field on the General tab.
timeout
integer
Specifies how long the message can remain active (in seconds).
If set to 0, the message does not expire.
selector
string
A string to determine whether a message should be received.
The value of this element overrides any value specified in the
Message Selector field of the Advanced tab. The syntax of the
message selector is determined by the JMS provider, but it is
usually a subset of SQL92 (where message properties are used
instead of table column names).
See the JMS provider documentation for more information and
syntax for a message selector string.
Output
The following is the output of the activity.
Output Item
Datatype
Description
JMSHeaders
complex
The message header fields for the message. See Common JMS
Properties and Headers for more information about message
header fields.
Only properties applicable to this type of message are displayed.
JMSProperties
complex
The message properties for the message. See Common JMS
Properties and Headers for more information about message
properties.
Only properties applicable to this type of message are displayed.
Body
as per
message
type
The body of the message.
TIBCO BusinessWorks™ Container Edition Palette Reference
111
Output Item
Datatype
Description
DynamicPropertie
s
complex
Dynamic properties is an additional parameter to add runtime
property to the outgoing JMS messages that are specified in the
Input tab. This is an optional element with only one instance.
Dynamic property can have multiple property elements.
Each property element denotes a single dynamic property and
can contain the following elements:
Name - Required. Name of the property with one instance.
Value - Required. Value of the property with one instance.
Type - Optional. Type of the property. If not provided, it will be
considered as string.
The following data types are supported:
●
string
●
boolean
●
short
●
integer
●
long
●
float
●
double
●
byte
The DynamicProperty will overwrite the value of a
property (with the same name) added using the JMS
Application Property.
The DynamicProperties will be also added to the outgoing
message.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective action to take.
Fault
Thrown When..
JMSInvalidInputException
The input to the activity is not valid.
JMSSessionCreateException
The JMS session could not be created.
JMSReceiveException
The JMS receive operation failed.
ActivityTimedOutException
The specified timeout is attained and the activity has not
completed its execution.
TIBCO BusinessWorks™ Container Edition Palette Reference
112
JMS Receive Message
JMS Receive Message is a process starter activity that starts the process based on the receipt of a
message for the specified JMS destination.
General
The General tab has the following fields.
Field
Literal Value/
Process
Property/
Module
Property?
Name
None
The name to be displayed as the label for the activity in the
process.
Messaging Style
Yes
Select from one of the following available messaging style
options:
Description
●
Generic: This options corresponds to an abstract JMS
Destination. If you are not sure whether your
destination is a Queue or Topic, select Generic.
●
Queue
●
Topic
JMS Connection
None
The JMS connection. See JMS Connection for more
information.
Destination
Yes
The JMS destination from where the process starter
receives the message.
Message Type
None
The type of the message. This can be one of the following:
●
Text: the message is a java.lang.String.
●
Byte: a stream of bytes.
●
Map: a set of name or value pairs. The names are
strings, and the values are simple datatypes (JAVA
primitives), an array of bytes (use the Binary datatype
when mapping this data), or a string. Each item can be
accessed sequentially or by its name.
●
Object: a Java object that can be serialized.
●
Object Ref: an object reference to a Java object.
●
Simple: a message with no body part.
●
Stream: a stream of Java primitives, strings, or arrays of
bytes. Each value must be read sequentially.
●
XML Text: the message is XML text.
TIBCO BusinessWorks™ Container Edition Palette Reference
113
Field
Literal Value/
Process
Property/
Module
Property?
Description
Durable Subscriber
Yes
Specifies a durable subscription.
You must specify a name in the Subscription Name field
that is registered with the JMS application as the durable
subscriber name. This field is only available if the
Messaging Style is Generic or Topic.
Subscription Name
Yes
The subscription name registered with the JMS application
for durable subscriptions. This field is only available when
you select the Durable Subscriber check box.
After creating a durable subscription you can only be
remove this by accessing the administration tool of the JMS
provider. See the documentation of the JMS provider for
more information about managing durable subscriptions.
Suppress Local
Messages
Yes
Specifies to not receive messages on the specified topic
name when the message origin is the JMS application on
the same connection as the process engine.
If the process publishes and subscribes to messages with
the same topic name, this option is useful if you want to
specify whether to receive messages sent by the same JMS
application that published the message.
Selecting this check box prevents the process from
receiving messages sent by the same connection.
Keep this check box clear to specify that the messages sent
by the same connection should be received.
TIBCO BusinessWorks™ Container Edition Palette Reference
114
Field
Literal Value/
Process
Property/
Module
Property?
Acknowledge Mode
Yes
Max Sessions
Description
The acknowledge mode for incoming messages. It can be
one of the following:
No
●
Auto: the message is automatically acknowledged,
when it is received.
●
Client: the message is acknowledged at a later point by
using the Confirm activity. If the message is not
confirmed before the process instance ends, the
message is redelivered and a new process instance is
created to handle the new incoming message. Ensure
that your process confirms the message when using the
acknowledge mode.
●
Dups Ok: the message is acknowledged automatically
when it is received. JMS provides this mode for lazy
acknowledgment, but TIBCO BusinessWorks Container
Edition acknowledges messages upon receipt.
●
TIBCO EMS Explicit Client: (only available for TIBCO
Enterprise Message Service) a message which is not
acknowledged using the Confirm activity before the
process instance ends, will be redelivered instead of all
messages in the session. The session is not blocked and
one session handles all incoming messages for each
process instance.
●
TIBCO EMS Explicit Client Dups OK: (only available
for TIBCO Enterprise Message Service) a message
which is not acknowledged using the Confirm activity
before the process instance ends, will be redelivered
instead of all messages in the session. The session is not
blocked and one session handles all the incoming
messages for each process instance. The messages
however, are lazily acknowledged.
●
TIBCO EMS No Acknowledge: messages delivered
using this mode do not require acknowledgment.
Therefore, messages in this mode are not redelivered
regardless of whether the delivery was successful.
Specifies the maximum number of client sessions that can
connect with the messaging server. This property is
enabled only when the Client ACK mode is used.
The default value is 1.
Description
Provide a short description for the activity.
TIBCO BusinessWorks™ Container Edition Palette Reference
115
Advanced
The Advanced tab has the following fields.
Field
Literal Value/
Process
Property/
Module
Property?
Message Selector
Yes
Description
A string to determine whether a message should be
received. The syntax of the message selector is determined
by the JMS provider.
See the JMS provider documentation for more information
and syntax for a message selector string.
Application
Properties Type
None
Any application-specific message properties that is part of
the message. This is specified by the JMS application
properties shared configuration object.
Polling Interval (sec)
None
Specifies the polling interval to check for new messages. If
no value is specified for the property, the default polling
interval is one second.
Set a value in this field to specify the polling interval (in
seconds) for this activity. The value in this field overrides
the default polling interval.
Sequence Key
None
This field can contain an XPath expression that specifies
which processes should run in sequence. Process instances
with sequencing keys that evaluate to the same value are
executed in the sequence the process instances were
created.
Custom Job Id
None
This field can contain an XPath expression that specifies a
custom ID for the process instance.
Output Editor
The Output Editor tab defines the schema to use for incoming messages whose Message Type is Map,
Stream, or XML Text. Map messages are name or value pairs, and you can use the schema to define the
structure of the incoming message. The schema on the Output Editor tab becomes the structure used
for the body of the message displayed on the Output tab. For XML Text message type, select an XSD
element. For Map and Stream message types, select an XSD type in the Output Editor tab.
Output
The following is the output of this activity.
TIBCO BusinessWorks™ Container Edition Palette Reference
116
Output Item
Datatype
Description
JMSHeaders
complex
The message header fields for the message. See Common JMS
Properties and Headers for more information about message
header fields.
Only properties applicable to this type of message are displayed.
JMSProperties
complex
The message properties for the message. See Common JMS
Properties and Headers for more information about message
properties.
Only properties applicable to this type of message are displayed.
Body
as per
message type
The body of the message.
JMS Request Reply
JMS Request Reply is an asynchronous activity that is used to send a request to a JMS destination and
wait for a response from the JMS client.
This activity uses temporary destinations to ensure that reply messages are received only by the
process that sent the request. However, the user has the ability to use preexisting JMS destinations.
General
The General tab has the following fields.
Field
Literal Value/
Process
Property/
Module
Property?
Name
None
The name to be displayed as the label for the activity in the
process.
Messaging Style
Yes
Select from one of the following available options:
Description
●
Generic
●
Queue
●
Topic
JMS Connection
None
The JMS connection. See JMS Connection for more
information.
Destination
Yes
The name of the destination of the outgoing message.
TIBCO BusinessWorks™ Container Edition Palette Reference
117
Field
Literal Value/
Process
Property/
Module
Property?
Description
Message Type
None
The type of the message. This can be one of the following:
●
Text: the message is a java.lang.String.
●
Byte: a stream of bytes.
●
Map: a set of name or value pairs. The names are
strings, and the values are simple datatypes (JAVA
primitives), an array of bytes (use the Binary datatype
when mapping this data), or a string. You can access
each item sequentially or by its name.
●
Object: a Java object that can be serialized.
●
Object Ref: an object reference to a Java object.
●
Simple: a message with no body part.
●
Stream: a stream of Java primitives, strings, or arrays of
bytes. Each value must be read sequentially.
●
XML Text: the message is XML text.
Description
Privide a short description for the activity here.
Advanced
The Advanced tab has the following fields.
Field
Description
Reply To Destination
The destination to use for replies for this activity.
If more than one job has the same Reply To Destination, each job
may not receive the correct reply. Ensure to specify an expression
in this field that assigns a different Reply To Destination to each
process instance.
Deliver Mode
The delivery mode of the message. Can be one of the following:
●
Persistent: signifies that the messages are stored and forwarded.
●
Non_Persistent: signifies that the messages are not stored and may be
lost due to transmission failure.
●
TIBCO_EMS_Reliable_Delivery: this mode is only available when
using TIBCO Enterprise Message Service. See the TIBCO Enterprise
Message Service documentation for more information.
TIBCO BusinessWorks™ Container Edition Palette Reference
118
Field
Description
JMS
Expiration(msec)
Corresponds to the JMSExpiration property that specifies how long the
message can remain active (in seconds).
If set to 0, the message does not expire.
This field is set in seconds, but the JMSExpiration property is displayed in
milliseconds.
Priority
The priority of the message. You may set the priority to a value from 0-8.
The default value is 4.
Type
The value to supply to the JMSType header property.
Application
Properties Type
Any application-specific message properties that is part of the message. This
is specified by the JMS application properties shared configuration object.
Input Editor and Output Editor
The Input Editor and Output Editor tabs define the schema to use for messages of type Map, Stream,
or XML Text. Map messages are name or value pairs, and you can use the schema to define the
structure of the outgoing request and the incoming reply. The schema defined on the Input Editor tab
becomes the body of the message on the Input tab. The schema defined on the Output Editor tab
becomes the body of the message on the Output tab. For XML Text message type, select an XSD
element. For Map and Stream message types, select an XSD type in the Input Editor or Output Editor.
Input
The following is the input for the activity.
Input Item
Datatype
Description
Destination
string
The destination to which to send the request. This input
item overrides the Destination field on the General tab.
replyTo
string
The destination to use for replies for this activity.
If more than one job has the same Reply To
Destination, then each job may not receive the
correct reply. Ensure to specify an expression
in this field that assigns a different Reply To
Destination to each process instance.
JMSExpiration
integer
Specifies how long the message can remain active (in
seconds). If set to 0, the message does not expire.
JMSPriority
string
The priority of the message. This item overrides the
priority set on the Advanced tab.
TIBCO BusinessWorks™ Container Edition Palette Reference
119
Input Item
Datatype
Description
JMSDeliveryMode
string
The delivery mode of the message. Can be one of the
following:
●
Persistent: signifies that the messages are stored and
forwarded.
●
Non_Persistent: signifies that the messages are not
stored and may be lost due to transmission failure.
●
TIBCO_EMS_Reliable_Delivery: this mode is only
available when using TIBCO Enterprise Message
Service. See the TIBCO Enterprise Message Service
documentation for more information.
JMSCorrelationID
string
This ID is used to link a response message with its related
request message. This is usually the message ID of a
request message when this field exists in a reply message.
JMSType
string
The type of the message. This item overrides the value
specified on the Advanced tab.
JMSProperties
complex
The message properties. For details, refer to Common
JMS Properties and Headers.
Body
depends on the
message type
The body of the message.
requestTimeout
integer
This field specifies the amount of time (in milliseconds)
that the activity waits before it times out.
TIBCO BusinessWorks™ Container Edition Palette Reference
120
Input Item
Datatype
Description
DynamicProperties
complex
Dynamic properties is an additional parameter to add
runtime property to the outgoing JMS messages that are
specified in the Input tab. This is an optional element
with only one instance. Dynamic property can have
multiple property elements.
Each property element denotes a single dynamic
property and can contain the following elements:
Name - Required. Name of the property with one
instance.
Value - Required. Value of the property with one
instance.
Type - Optional. Type of the property. If not provided, it
will be considered as string.
The following data types are supported:
●
string
●
boolean
●
short
●
integer
●
long
●
float
●
double
●
byte
The DynamicProperty will overwrite the value
of a property (with the same name) added
using the JMS Application Property.
The DynamicProperties will be also added to the
outgoing message.
Output
The following is the output of this activity.
Output Item
Datatype
Description
JMSHeaders
complex
The message header fields for the message. See Common JMS
Properties and Headers for more information about message
header fields.
Only properties applicable to this type of message are displayed.
JMSProperties
complex
The message properties for the message. See Common JMS
Properties and Headers for more information about message
properties.
Only properties applicable to this type of message are displayed.
TIBCO BusinessWorks™ Container Edition Palette Reference
121
Output Item
Datatype
Description
Body
as per
message type
The body of the message.
DynamicPrope
rties
complex
Dynamic properties is an additional parameter to add runtime
property to the outgoing JMS messages that are specified in the
Input tab. This is an optional element with only one instance.
Dynamic property can have multiple property elements.
Each property element denotes a single dynamic property and
can contain the following elements:
Name - Required. Name of the property with one instance.
Value - Required. Value of the property with one instance.
Type - Optional. Type of the property. If not provided, it will be
considered as string.
The following data types are supported:
●
string
●
boolean
●
short
●
integer
●
long
●
float
●
double
●
byte
The DynamicProperty will overwrite the value of a
property (with the same name) added using the JMS
Application Property.
The DynamicProperties will be also added to the outgoing
message.
Fault
The Fault tab lists the possible exceptions thrown by this activity.
Fault
Thrown When..
JMSInvalidInputExceptio
The input to the activity is not valid.
n
JMSMessageCreateExcepti
The JMS message could not be created.
on
JMSSessionCreateExcepti
The JMS session could not be created.
on
JMSSendException
The JMS send operation failed.
TIBCO BusinessWorks™ Container Edition Palette Reference
122
Fault
Thrown When..
JMSReceiveException
The JMS receive operation failed.
ActivityTimedOutExcepti
The specified timeout has been attained and the activity has not
completed its execution.
on
JMS Send Message
JMS Send Message is a synchronous activity that sends a message to the specified JMS destination.
General
The General tab has the following fields.
Field
Literal Value/
Process
Property/
Module
Property?
Name
None
The name to be displayed as the label for the activity in the
process.
Messaging Style
None
Select from one of the following available options:
Description
●
Generic
●
Queue
●
Topic
JMS Connection
None
The JMS connection. See JMS Connection for more
information.
Destination
Yes
The name of the destination of the outgoing message.
Message Type
None
The type of the message. This can be one of the following:
●
Text: the message is a java.lang.String.
●
Byte: a stream of bytes.
●
Map: a set of name or value pairs. The names are strings,
and the values are simple datatypes (JAVA primitives),
an array of bytes (use the Binary datatype when
mapping this data), or a string. Each item can be
accessed sequentially or by its name.
●
Object: a Java object that can be serialized.
●
Object Ref: an object reference to a Java object.
●
Simple: a message with no body part.
●
Stream: a stream of Java primitives, strings, or arrays of
bytes. Each value must be read sequentially.
●
XML Text: the message is XML text.
TIBCO BusinessWorks™ Container Edition Palette Reference
123
Description
Provide a short description for the activity.
Advanced
The Advanced tab has the following fields.
Field
Description
Reply To
Destination
The destination to use for replies for this activity.
Deliver Mode
The delivery mode of the message. Can be one of the following:
JMS
Expiration(msec)
If more than one job has the same Reply To Destination, each job
may not receive the correct reply. Ensure to specify an expression
in this field that assigns a different Reply To Destination to each
process instance.
●
Persistent: signifies that the messages are stored and forwarded.
●
Non_Persistent: signifies that the messages are not stored and may be lost
due to transmission failure.
●
TIBCO_EMS_Reliable_Delivery: this mode is only available when using
TIBCO Enterprise Message Service. See the TIBCO Enterprise Message
Service documentation for more information.
Corresponds to the JMSExpiration property that specifies how long the
message can remain active (in seconds).
If set to 0, the message does not expire.
This field is set in seconds, but the JMSExpiration property is displayed in
milliseconds.
Priority
The priority of the message. You may set the priority to a value from 0-8. The
default value is 4.
Type
The value to supply to the JMSType header property.
Application
Properties Type
Any application-specific message property that is part of the message. This is
specified by the JMS application properties shared configuration object.
Override
Transaction
Behavior
Overrides the default behavior of a transaction group. If this activity is in a
transaction group, the JMS message is normally committed or rolled back
with the other participants in the transaction.
If this check box is selected, the JMS message does not participate in the
transaction.
Input Editor
The Input Editor tab defines the schema to use for outgoing messages whose message type is Map,
Stream, or XML Text. Map messages are name or value pairs, and you can use the schema to define the
structure of the outgoing message. After defining the schema on the Input Editor tab, it becomes the
TIBCO BusinessWorks™ Container Edition Palette Reference
124
structure used for the body of the message displayed on the Input tab. For the XML Text message type,
select an XSD element. For Map and Stream message types, select an XSD type in the Input Editor tab.
Input
The following is the input for the activity.
Input Item
Datatype
Description
Destination
string
The destination to which to send the message. This input
item overrides the Destination field on the General tab.
replyTo
string
The destination to use for replies for this activity.
If more than one job has the same Reply To
Destination, each job may not receive the
correct reply. Ensure to specify an expression
in this field that assigns a different Reply To
Destination to each process instance.
JMSExpiration
integer
Specifies how long the message can remain active (in
seconds). If set to 0, the message does not expire.
JMSPriority
string
The priority of the message. This item overrides the
priority set on the Advanced tab.
JMSDeliveryMode
string
The delivery mode of the message. Can be one of the
following:
●
Persistent: signifies that the messages are stored and
forwarded.
●
Non_Persistent: signifies that the messages are not
stored and may be lost due to transmission failure.
●
TIBCO_EMS_Reliable_Delivery: this mode is only
available when using TIBCO Enterprise Message
Service. See the TIBCO Enterprise Message Service
documentation for more information.
JMSCorrelationID
string
This ID is used to link a response message with its related
request message. This is usually the message ID of a
request message when this field exists in a reply message.
JMSType
string
The type of the message. This item overrides the value
specified on the Advanced tab.
JMSProperties
complex
The message properties. For details, refer to Common
JMS Properties and Headers.
Body
depends on the
message type
The body of the message.
TIBCO BusinessWorks™ Container Edition Palette Reference
125
Input Item
Datatype
Description
DynamicProperties
complex
Dynamic properties is an additional parameter to add
runtime property to the outgoing JMS messages that are
specified in the Input tab. This is an optional element
with only one instance. Dynamic property can have
multiple property elements.
Each property element denotes a single dynamic
property and can contain the following elements:
Name - Required. Name of the property with one
instance.
Value - Required. Value of the property with one
instance.
Type - Optional. Type of the property. If not provided, it
will be considered as string.
The following data types are supported:
●
string
●
boolean
●
short
●
integer
●
long
●
float
●
double
●
byte
The DynamicProperty will overwrite the value
of a property (with the same name) added
using the JMS Application Property.
The DynamicProperties will be also added to the
outgoing message.
Output
The following is the output of the activity.
Output Item
Datatype
Description
MessageID
string
The unique identifier of the message.
Fault
The Fault tab lists the possible exceptions thrown by this activity.
Fault
Thrown When..
JMSInvalidInputExceptio
The input to the activity is not valid.
n
TIBCO BusinessWorks™ Container Edition Palette Reference
126
Fault
Thrown When..
JMSMessageCreateExcepti
The JMS message could not be created.
on
JMSSessionCreateExcepti
The JMS session could not be created.
on
The JMS send operation failed.
JMSSendException
Reply to JMS Message
Reply To JMS Message is a synchronous activity that sends a reply to a previously received JMS queue
or topic message. The Reply For Event field in the General tab lists the activities that can receive the
JMS message. The activity you select determines the response of the reply message.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label of the activity.
Reply For Event
A drop-down list of activities that can receive JMS queue or topic messages.
The activity you select determines the message this activity replies to. The
reply-to queue or topic name from the message in the selected activity is used
to send the reply message. The listed activity is WaitforJMSRequest.
Message Type
The type of the message. This can be one of the following:
●
Text: the message is a java.lang.String.
●
Byte: a stream of bytes.
●
Map: a set of name or value pairs. The names are strings, and the values are
simple datatypes (JAVA primitives), an array of bytes (use the Binary
datatype when mapping this data), or a string. Each item can be accessed
sequentially or by its name.
●
Object: a Java object that can be serialized.
●
Object Ref: an object reference to a Java object.
●
Simple: a message with no body part.
●
Stream: a stream of Java primitives, strings, or arrays of bytes. Each value
must be read sequentially.
●
XML Text: the message is XML text.
Description
Provide a short description for the activity.
Advanced
The Advanced tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
127
Field
Description
Deliver Mode
The delivery mode of the message. This can be one of the following:
JMS
Expiration(msec)
●
Persistent: signifies that the messages are stored and forwarded.
●
Non_Persistent: signifies that the messages are not stored and may be lost
due to transmission failure.
●
TIBCO_EMS_Reliable_Delivery: this mode is only available when using
TIBCO Enterprise Message Service. See the TIBCO Enterprise Message
Service documentation for more information.
Corresponds to the JMSExpiration property that specifies how long the
message can remain active (in seconds).
If set to 0, the message does not expire.
This field is set in seconds, but the JMSExpiration property is displayed in
milliseconds.
Priority
The priority of the message. You may set the priority to a value from 0-8. The
default value is 4.
JMSType
The value to supply to the JMSType header property.
Application
Properties Type
Any application-specific message property that is part of the message. This is
specified by the JMS application properties shared configuration object.
Input Editor
The Input Editor tab defines the schema to use for outgoing messages whose message type is Map,
Stream, or XML Text. Map messages are name or value pairs, and you can use the schema to define the
structure of the outgoing message. After defining the schema on the Input Editor tab, it becomes the
structure used for the body of the message displayed on the Input tab. For XML Text message type,
select an XSD element. For Map and Stream message type, select an XSD Type in the Input Editor tab.
Input
The following is the input for the activity.
Input Item
Datatype
Description
Destination
string
The destination to which to send the request. This input
item overrides the Destination field on the General tab.
replyTo
string
The destination to use for replies for this activity.
If more than one job has the same Reply To
Destination, each job may not receive the
correct reply. Ensure to specify an expression
in this field that assigns a different Reply To
Destination to each process instance.
JMSExpiration
integer
Specifies how long the message can remain active (in
seconds). If set to 0, the message does not expire.
TIBCO BusinessWorks™ Container Edition Palette Reference
128
Input Item
Datatype
Description
JMSPriority
string
The priority of the message. This item overrides the
priority set on the Advanced tab.
JMSDeliveryMode
string
The delivery mode of the message. Can be one of the
following:
●
Persistent: signifies that the messages are stored and
forwarded.
●
Non_Persistent: signifies that the messages are not
stored and may be lost due to transmission failure.
●
TIBCO_EMS_Reliable_Delivery: this mode is only
available when using TIBCO Enterprise Message
Service. See the TIBCO Enterprise Message Service
documentation for more information.
JMSCorrelationID
string
This ID is used to link a response message with its related
request message. This is usually the message ID of a
request message when this field exists in a reply message.
JMSType
string
The type of the message. This item overrides the value
specified on the Advanced tab.
JMSProperties
complex
The message properties. For details, refer to Common
JMS Properties and Headers.
Body
depends on the
message type
The body of the message.
TIBCO BusinessWorks™ Container Edition Palette Reference
129
Input Item
Datatype
Description
DynamicProperties
complex
Dynamic properties is an additional parameter to add
runtime property to the outgoing JMS messages that are
specified in the Input tab. This is an optional element
with only one instance. Dynamic property can have
multiple property elements.
Each property element denotes a single dynamic
property and can contain the following elements:
Name - Required. Name of the property with one
instance.
Value - Required. Value of the property with one
instance.
Type - Optional. Type of the property. If not provided, it
will be considered as string.
The following data types are supported:
●
string
●
boolean
●
short
●
integer
●
long
●
float
●
double
●
byte
The DynamicProperty will overwrite the value
of a property (with the same name) added
using the JMS Application Property.
The DynamicProperties will be also added to the
outgoing message.
Fault
The Fault tab lists the possible exceptions thrown by this activity.
Fault
Thrown When..
JMSInvalidInputExceptio
The input to the activity is not valid.
n
JMSMessageCreateExcepti
The JMS message could not be created.
on
JMSSessionCreateExcepti
The JMS session could not be created.
on
JMSSendException
The JMS send operation failed.
TIBCO BusinessWorks™ Container Edition Palette Reference
130
Parse Palette
The Parse palette provides shared configuration resources for parsing and rendering the
formatted text. This is useful if you want to transform the formatted lines of text into a data schema or
transform a data schema into a formatted text string.
The text lines can be formatted either by delimiters separating each field or offsets can be specified to
determine where each field begins and ends.
Parsing a Large Number of Records
The input for this activity is placed in a process variable and takes up memory as it is being processed.
When reading a large number of records from a file, the process may consume significant machine
resources. To avoid too much memory, you may want to read the input in parts, parsing and
processing a small set of records before moving on to the next set of records.
This procedure is a general guideline for creating a loop group for parsing a large set of input records
in parts. You may want to modify the procedure to include additional processing of the records, or you
may want to change the XPath expressions to suit your business process. If processing a large number
of records, do the following.
Procedure
1. Select and drop the Parse Data activity on the process editor.
2. On the General tab, specify the fields and select the Manually Specify Start Record check box.
3. Select the Parse Data activity and click the group icon on the tool bar to create a group containing
the Parse Data activity.
4. Specify Repeat Until True Loop as the Group action, and specify an index name (for example, "i").
The loop must exit when the EOF output item for the Parse Data activity is set to true. For
example, the condition for the loop can be set to the following: string($ParseData/Output/done) =
string(true())
5. Set the noOfRecords input item for the Parse Data activity to the number of records you want to
process for each execution of the loop.
If you do not select the Manually Specify Start Record check box on the General tab of the Parse
Data activity, the loop processes the specified noOfRecords with each iteration, until there are no
more input records to parse.
You can optionally select the Manually Specify Start Record check box to specify the startRecord
on the Input tab. If you do this, you must create an XPath expression to properly specify the
starting record to read with each iteration of the loop. For example, the count of records in the input
starts at zero, so the startRecord input item could be set to the current value of the loop index minus
one. For example, $i - 1.
MimeParser
This activity is responsible for parsing MTOM messages into a SOAP message that contains binary
attachments as an inline data of the SOAP message. The output can be either in a Text or a Binary
format.
General
The General tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
131
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Input Style
The input message format. (Currently only MTOM is available.)
Output Style
The output message format.
You can select either Text or Binary format for the output messages.
Description
Provide a short description for the activity.
Advanced
The Advanced tab has the following.
Field
Description
Generate Strict Parsing
Errors
Select this check box to generate strict parsing validation errors.
Input
The following is the input for the activity.
Input Item
Datatype
Description
MimeBinaryData
Binary
This is the incoming binary data.
Output
The following is the output of the activity.
Output Item
Datatype
Description
soapMessage
Binary or String
Depends on the type selected in the Output Style format.
StrictValidation
Errors
Complex
This displays only when the Generate Strict Parsing Errors
check box is selected.
ErrorString
String
Shows strict parsing validation error logs.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective action to take.
Fault
Thrown When...
XOPParseException
The input has XOP related exceptions.
TIBCO BusinessWorks™ Container Edition Palette Reference
132
Fault
Thrown When...
MimeParseException
The input has MIME related exceptions.
InvalidXMLException
The input has invalid xml related exception.
Parse Data
The Parse Data activity takes a text string or input from a file and processes it by converting it
into a schema tree based on the specified Data Format shared resource.
You can use any mechanism to obtain or create a text string for processing. For example, you can use
the Read File activity to obtain text from a file. You can also use this activity to specify a text file to read.
You can use this activity in various scenarios. For example, a user has a file comprising multiple lines
with comma-separated values (as in data obtained from a spreadsheet) and this data has to be inserted
into a database table. In such a scenario, read and parse the file into a data schema with the Parse Data
activity.
General
The General tab has the following fields.
Field
Module
Property?
Name
No
The name to be displayed as the label for the activity in the
process.
Data Format
No
The Data Format shared resource to use when parsing the text
input.
Input Type
No
Specify the type of input for this activity.
Description
Input can either be String or File. If the input is a text string,
provide the string to the text input item. If the input is a file,
provide the file name and location to the fileName input item.
Encoding
Yes
The encoding of the input file.
To enable this field, select the File option in the Input Type
field . Any valid Java encoding name can be used.
Skip Blank
Spaces
No
Select this check box to skip any empty records when parsing
the text input.
When this check box is not selected, parsing stops at the first
blank line encountered in the input.
TIBCO BusinessWorks™ Container Edition Palette Reference
133
Field
Manually
Specify Start
Record
Module
Property?
No
Description
You can specify the record in the input where you want to start
parsing.
This is useful if you have a large number of records and you
want to read the input in parts (to minimize memory usage).
Selecting this check box displays the startRecord input item.
See Parsing a Large Number of Records for more information
on how to read the input stream in parts.
Strict
Validation
No
Validates every input line for the specified number of fields for
the fixed format text.
For example, if the format states that there are three fields per
line and this check box is selected, all lines in the input must
contain three fields.
Continue On
Error
No
Continues parsing the next record in the input after
encountering an error, if any.
If an error occurs, the error information is separated from the
output of the successfully parsed records and is provided in the
output schema of the activity.
When this check box is not selected, the Parse Data activity
quits parsing if an error is encountered while parsing the
records in the input.
Irrespective of whether this check box is selected or not, the
Parse Data activity quits when any data validation errors
occur.
Input
The following is the input for the activity.
Input Item
Datatype
Description
text
string
The text string to parse.
This input item is available only when String is specified in the
Input Type field of the General tab.
fileName
string
The location and name of the file to read. The file's content is
used as the input text string for this activity.
This input item is available only when File is specified in the
Input Type field of the General tab.
TIBCO BusinessWorks™ Container Edition Palette Reference
134
Input Item
Datatype
Description
startRecord
number
The line number of the input stream to begin parsing. All lines
before the specified line are ignored. This input item is available
only if the Manual Specify Start Record check box on the
General tab is selected.
The input stream begins with the line number 1 (one). This is
useful for reading the input stream in parts to minimize
memory usage.
See Parsing a Large Number of Records for more information.
noOfRecords
number
The number of records to read from the input stream. Specify -1
if you want to read all records in the input stream.
This is useful for reading the input stream in parts to minimize
memory usage.
See Parsing a Large Number of Records for more information.
SkipHeaderCharac
ters
integer
The number of characters to skip when parsing. You can skip
over any file headers or other unwanted information.
Output
The following is the output of the activity.
Output
item
Datatype
Description
Rows
complex
This output item contains the list of parsed lines from the input. This is
useful to determine the number of records parsed by this activity.
The schema specified by the Data Format resource is contained in this
output item.
schema
complex
ErrorRows
The schema containing the data from the parsed input text. This output
item contains zero or more parsed records.
This output item is available when you select Continue on Error, and
error(s) while parsing the records in the input.
Raw input data is put in the error string.
This field contains the list of error lines for the records from the input
that failed parsing.
done
boolean
if no more records are available for parsing. false if there are
more records available.
true
This output item is useful to check whether there are no more records
in the input stream when reading the input in parts to preserve
memory.
TIBCO BusinessWorks™ Container Edition Palette Reference
135
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective action to take.
Fault
Thrown When..
FileNotFoundException
The specified input file cannot be located.
BadDataFormatException
The input format is not valid.
Render Data
The Render Data activity takes an input of a data schema and renders it as a text string. The
schema processed is based on a specified Data Format shared resource.
You can use this activity in various scenarios, for example, retrieving a result set from a database table.
You may want to:
●
Format this result set as a formatted text string (with line breaks between each row in the result set),
and then write that text string out to a file.
●
Use the Render Data activity to render the data schema as a formatted text string.
●
Use the Write File activity to write the string to a file.
General
The General tab has the following fields.
Field
Module
Property?
Name
No
The name to be displayed as the label for the activity in the
process.
Data Format
No
The Data Format shared resource to use when rendering the text
output.
Description
Input
The following is the input for the activity.
Input Item
Datatype
Description
Rows
complex
The element containing the list of items to render.
root
complex
The complex element containing data schema (specified by the Data
Format shared resource) to render as a text string. This is a repeating
element which renders more than one output record.
Output
The following is the output of the activity.
TIBCO BusinessWorks™ Container Edition Palette Reference
136
Output
Item
Datatype
Description
text
string
The output text string as a result of rendering the specified data
schema. Line breaks separate records of the data schema.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective action to take.
Fault
Thrown When..
BadDataFormatException
The output format is not valid.
TIBCO BusinessWorks™ Container Edition Palette Reference
137
REST and JSON
The activities of REST and JSON Palette can be used to invoke RESTful web services and expose
processes as RESTful web services. The activities in this group can also be used to convert data between
JSON format and XML format.
BW JSON Utils
BW JSON utils provide an easier way to create XML schema (XSD files) from JSON payload or SQL
statements.
Create XSD Schema from JSON payload
To create schema from an available JSON payload:
1. From the Project Explorer pane, right-click on the Schemas folder and clickNew > XML Schema File
from JSON Payload.
2. In the JSON to Schema Wizard, enter the name of the schema file in the Schema File Name field.
3. Enter the JSON payload, to be used during the conversion, in the JSON Sample field, and click
Next.
A validation error displays in Business Studio if any values from the JSON payload are not
valid.
The message JSON payload parsed
JSON to Schema Wizard window.
succesfully...Crated schema <Name>.xsd
displays in the
After the JSON payload is successfully converted to an XML schema, close the wizard and create the
file.
Create Schema from an SQL String
To create SQL schema, do the following:
1. In the Process package, click Resources > JDBC Connection Resource and verify whether the JDBC
connection is able to connect to the database successfully.
2. Right-click the fully configured JDBC Connection Resource > BW JSON Utils > Create Schema
from SQL.
3. In the SQL Query Builder, provide the query statement to fetch the required information and click
OK.
4. A "Schema has been
message is displayed.
created successfully under the Schemas folder with <Name>.xsd."
Invoke REST API
Invoke REST API asynchronous activity invokes RESTful web services and receives responses from
the service provider.
For the Invoke REST API activity to work, an HTTP Client shared resource is required. In the HTTP
Client shared resource, make sure Apache HttpComponents (Supported by HTTP and REST) is
selected as the Implementation Library in the HTTP Client section.
General
The General tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
138
Field
Module
Property
Name
No
The name to be displayed as the label for the activity in the
process.
HTTP Client
Yes
The HTTP client resource.
Resource Path
No
The resource of the REST service.
Description
Spaces and special characters are not supported in
the path and query parameter name.
HTTP Method
No
The REST methods used for the requests.
Select from one of the following available methods:
Request Type
Response Type
No
No
●
POST
●
GET
●
PUT
●
DELETE
●
Patch
The value of the Content-Type header set while invoking the
REST operation.
●
JSON: the service provider returns the data in the JSON
format.
●
XML: the service provider returns the data in the XML
format.
●
Custom: to override the Content-Type value in the Input
tab, select CUSTOM and provide the value in the Input
tab.
The value of the Accept header set while invoking the REST
Operation.
●
JSON: the service provider returns the data in the JSON
format.
●
XML: the service provider returns the data in the XML
format.
●
Custom: to override the Accept header value in the Input
tab, select CUSTOM and provide the value in the Input
tab.
Description
Provide a short description for the activity.
Advanced
The Advanced tab has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
139
Field
Description
Output HTTP Response
Headers
Request Entity Processing
This field has two values:
●
BUFFERED: the request entity is buffered in memory to determine
the content length that is sent as a Content-Length header in the
request.
●
CHUNKED: the entity is sent as chunked encoded (no ContentLength is specified, entity is streamed). The Transfer-Encoding
header is set to Chunked.
The default value is Chunked.
Input
The following is the input for the activity.
Input Item
Datatype
Message Body
asciiContent
Description
The body of the HTTP request message.
string
The ASCII content (ASCII content of the request like POST or
PUT to the server) of the request to the HTTP server.
TIBCO BusinessWorks™ Container Edition Palette Reference
140
Input Item
Datatype
Description
HttpHeaders
string
The header of the HTTP request. The header structure is
defined by the HTTP protocol. See the HTTP protocol
specification for more information about the fields and
content of the header of an HTTP request.
DynamicHeaders
complex
●
Accept: specifies the media types that are acceptable for
response messages for the incoming request. For example,
text/*,text/html. Media types are described in the
HTTP specification.
●
Accept-Charset: specifies the character sets that are
acceptable for response messages for the incoming
request. For example, iso-8859-5, unicode-1-1. Character
sets are described in the HTTP specification.
●
Accept-Encoding: specifies the content-coding values that
are acceptable for response messages. For example,
compress, gzip.
●
Content-Type: the media type of the entity body sent to
the receiver. Media types are described in the HTTP
specification.
●
Content-Length: indicates the size of the entity body sent
to the receiver.
●
Connection: the requestor can specify options desired for
this connection. For example, the option close specifies
that the requestor would like the connection to be closed
when the request is complete.
●
Cookie: See the HTTP specification for more information
about this field.
●
Pragma: is used to include implementation-specific
directives that might apply to the receiver. See the HTTP
specification for more information about using this field.
The dynamic header is an additional header parameter to
add runtime headers to the outgoing HTTP messages. The
DynamicHeaders consists of the following information:
●
Name: the name of the header
●
Value: the value of the header
Output
The Output tab has the following fields.
Output Item
Description
StatusCode
The HTTP Response Code.
ReasonPhrase
ReasonPhrase is intended for giving a short textual description of
StatusCode.
TIBCO BusinessWorks™ Container Edition Palette Reference
141
Output Item
Description
mesageBody
The body of the response message. This is asciiContent.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective action to take.
Fault
Thrown when...
HttpCommunicationExcep
tion
An HTTP exception occurred when trying to execute the specified
method, or when trying to read the response.
HttpClientException
The HTTP server replied with a message that has the 4XX status code.
HttpServerException
The HTTP server replied with a message that has the 5XX status code.
Support for Path and Query Parameters
Invoke REST API activity supports both Path and Query parameters. For Path Parameters, enclose
each path parameter in { } brackets. For example, if the resource path is set as /books/{isbn}, a
PathParameters element is added to the activity input.
Multiple path parameters can be defined in a similar way. The activity also supports static URL content
mixed with path parameters, for example, /books/{isbn}/events/{author}.
Query parameters are defined using the pattern /staticUrl?Param1&Param2.
A QueryParameters element is added to the Input tab of the activity with each of the parameter listed.
For example, if the resource path is set as /books?isbn&author, a QueryParamters element is added to
the activity input.
TIBCO BusinessWorks™ Container Edition Palette Reference
142
Policy
Activities that support policies will display the Policy tab. To associate a new or existing policy with
the Invoke REST API activity, click the Add Policy to Activity
Go to selected Policy
icon. To edit policy details, click
icon. The Policy tab has the following fields.
Field
Description
Name
The name of the policy.
Type
The type of policy associated with the activity. The Invoke REST API
activity can support the Basic Credential Mapping policy.
Description
A description of the policy.
Restrictions on XML Schema
This topic lists the restrictions on XML Schema.
Schema Restrictions
●
No wildcards or attribute wildcards. For example, any element and any attribute is not supported.
●
No foreign-namespace elements or attributes (single namespace).
●
Complex types may not contain both an attribute and a child element with the same local name.
●
Complex types may not be of the pattern "simple type plus attributes".
●
Complex types may not contain mixed content.
●
Attributes that are not part of the default(empty) namespace, cannot be used for Complex Elements.
●
The 'choice' and 'sequence' compositors may not have maxOccurs
'all' in the schema specification).
●
Substitution groups are not allowed.
●
Element of simple type with an attribute is not allowed.
●
The elementFormDefault can only be qualified for schemas used by REST binding and JSON
activities.
> 1
(same as the restriction on
Restrictions on JSON
●
Arrays must have homogeneous content.
●
Arrays cannot directly contain arrays ( [ [ ... ], [ ... ] ] )
Not currently supported
●
JSON nulls
●
Binary content in JSON as a special case
TIBCO BusinessWorks™ Container Edition Palette Reference
143
Parse JSON
Parse JSON activity takes the JSON data, processes it, and converts it into XML data.
General
The General tab has the following fields.
Field
Literal
Value/
Process
Property/
Module
Property
Description
Name
None
The name to display as the label for the activity in the process.
Schema Type
None
Specifies the mode for the output data. The following are the
supported schema types:
●
Generic: converts a JSON string to an XML string
●
XSD: converts a JSON string to an XML document defined
using a schema specified in the Output Editor.
The default value in this field is the XSD schema type.
Badgerfish
None
Specifies the following conversion rules:
●
Select this check box for converting JSON data to XML data
with the mapping of XML namespace, XML attribute,
CDATA, and so on.
●
Do not select this check box if you want normal conversion
rules for mapping data from JSON to XML.
Description
Provide a short description for the activity.
Output Editor
From the Output Editor you can define or reference an XML schema for the activity output. You can
use the BW JSON Utils tool to generate an XML schema file with a specified JSON file. Refer to BW
JSON Utils for more information.
Input
The Input tab has the following fields.
Field
Description
json string
The input JSON data for translation.
TIBCO BusinessWorks™ Container Edition Palette Reference
144
Output
The output for the Parse JSON activity varies depending on the data schema you specified in the
Schema Type field on the General tab.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective action to take.
Fault
Thrown when...
JSONParserException
An exception occurred when parsing the JSON data.
Render JSON
Render JSON activity takes XML data and renders it as a JSON string.
General
The General tab has the following fields.
Field
Literal
Value/
Process
Property/
Module
Property
Name
None
The name to be displayed as the label for the activity in the
process.
Schema Type
None
Specifies a schema type for the output data. The following are the
supported schema types:
Description
●
Generic: converts an XML string to a JSON string
●
XSD: converts an XML string to a JSON document defined
using a schema specified in the Output Editor.
The default value in this field is the XSD schema type.
Badgerfish
None
Specifies the following conversion rules:
●
Select this check box for converting JSON data to XML data
with the mapping of XML namespace, XML attribute,
CDATA, and so on.
●
Do not select this check box if you want normal conversion
rules for mapping data from JSON to XML.
Description
Provide a short description for the activity.
TIBCO BusinessWorks™ Container Edition Palette Reference
145
Input Editor
From the Input Editor tab, you can define or reference an XML schema for the activity input. You can
also use the BW JSON Utils tool to generate an XML schema file with a specified JSON file. See BW
JSON Utils for more information.
Input
The input data for the Render JSON activity is in the XML format. The schema type of the XML data
varies depending on the schema type you specified in the Schema Type field on the General tab.
Output
The Output tab contains the following field.
Field
Description
jsonString
The translated data in JSON string format.
Fault
The Fault tab lists the possible exceptions thrown by this activity. See Error Codes for more information
about error codes and the corrective action to take.
Fault
Thrown when...
JSONRendererException
An exception occurred when rendering the data.
TIBCO BusinessWorks™ Container Edition Palette Reference
146
XML Activities Palette
The XML Activities palette provides activities for parsing XML strings into schemas and rendering
schemas into XML strings.
Parse XML
Parse XML is a synchronous activity that takes a binary XML file or an XML string and converts it into
an XML schema tree based on the XSD specified.
Parsing Date and Datetime Strings
In XML documents parsed by the Parse XML activity, datetime values are read in accordance with the
ISO-8601 standard, as described in the XML Schema specification. For example, the value:
2002-02-10T14:55:31.112-08:00
is 55 minutes, 31 seconds, and 112 milliseconds after 2.00 p.m. on February 10th, 2002 in a time zone
that is 8 hours, 0 minutes behind UTC.
If no time zone field is present, the value is interpreted in the time zone of the machine that is
performing the parsing. This can lead to complications if you are processing XML from a different time
zone, so you are encouraged to always use a time zone.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Input Style
Can be binary, text, or dynamic.
In binary mode, the binary content is read. The encoding used for parsing the
content is either the value specified in the forceEncoding input item, the encoding
specified in the XML header or the xmlBinary input item, or UTF-8 (the default
encoding, if no encoding is specified).
In text mode, (the default and preferred choice) an XML string is passed as an
input item.
In dynamic mode, a choice is offered for input. You can either supply binary or
text input. You can use a choice statement and set substitution in the mapping to
supply the correct type of input at run time.
Description
Provide a short description for the activity.
Output Editor
Use the Output Editor tab to define a schema for the XML output.
Input
The following is the input for the activity.
TIBCO BusinessWorks™ Container Edition Palette Reference
147
Input Item
Datatype
Description
xmlString
string
The XML string to parse.
This input element is available when the Input Style field in the
General tab is set to text.
xmlBinary
complex
Available when you set the Input Style field in the General tab to
binary.
This input item contains a required bytes item for which you specify
the input XML bytes.
This input item also contains an optional forceEncoding item. This
specifies the encoding to use when parsing the XML. If this element is
not specified, the encoding specified in the XML header of the byte
element is used to parse the XML. If the encoding value is not specified
in the XML header, the default encoding (UTF-8) is used.
xmlBinary|
xmlString
choice
Available when the Input Style in the General field is set to dynamic.
You can specify a choice statement and set substitution and supply the
correct input type at run time.
Output
The following is the output of the activity.
Output Item
Datatyp
e
XML Schema
complex
Description
The parsed XML schema is the output of this activity. The contents of
the schema are determined by the schema defined in the Output
Editor tab.
Fault
The Fault tab lists the possible exceptions thrown by this activity.
Fault
Thrown when...
XMLParseException
An exception occurred when parsing the data.
UnsupportedEncodingExcept
An unsupported encoding was specified in the forceEncoding
input item.
ion
MissingByteCountException
An exception occurred while parsing the data with an invalid or
missing byte count.
ValidationException
The file specifies a version of XML that the parser is not prepared
to handle.
Render XML
Render XML is a synchronous activity that takes an instance of an XML schema element and renders it
as a stream of bytes containing XML or an XML string.
TIBCO BusinessWorks™ Container Edition Palette Reference
148
The Render XML activity takes an instance of an XML schema element and renders it as a stream of
bytes containing XML or an XML string. The schema is processed based on the XSD file specified.
Rendering Date and Datetime Strings
UTC time is used when datetime strings are generated. For example, the time 55 minutes, 31 seconds,
and 112 milliseconds after 2.00 p.m.on February 10th, 2002 would be represented by the Render XML
activity as 2002-02-10T14:55:31.112Z
General
The General tab has the following fields.
Field
Literal Value/
Process
Property/
Module
Property?
Name
No
The name to be displayed as the label for the activity in the
process.
Output Style
No
Specifies whether the output should be text or binary data.
Format Using
Default
Namespace
Prefix
No
Prepends the namespace with the default namespace prefix.
Encoding
Yes
This field is available only when the Output Style field is set to
text. This field specifies the encoding value to place into the XML
header of the rendered XML data.
Description
You can specify any valid XML encoding value listed in IANACharsets.
Description
Provide a short description for the activity.
Advanced
Click the Advanced tab and specify which elements in the input schema can contain CDATA sections.
Using CDATA sections you can enclose text within an element that should not be treated as XML.
Click the + button to add elements of the input schema to the list. When you click the + button, a dialog
displays. Using this dialog locate and select the input schema by location in the project or by
namespace. Use the By Location tab if your input schema is located in the project directory. Use the By
Namespace tab if you constructed the input schema on the Input Editor tab.
Use the X button to remove the elements from the list and the up and down arrows to move elements
in the list.
Input Editor
From the Input Editor tab you can define a schema for the incoming XML data you want to render.
TIBCO BusinessWorks™ Container Edition Palette Reference
149
Input
The following is the input for the activity.
Input Item
Type
Description
byteEncodi
ng
string
This is only available when you set the Output Style field in the
General tab to binary.
This specified the encoding value to place into the XML header in the
rendered XML output. This is also the encoding used to encode the
binary data. If this item is not specified, the default encoding of the
java virtual machine used by the process engine is used to encode the
binary data. This value may not be a valid XML encoding.
You can specify any valid XML encoding value listed in IANACharset. See http://www.iana.org/assignments/character-sets for a
complete list. The encoding names are case sensitive.
XML
Schema
string
The XML schema to render. The contents of the schema are determined
by the schema specified in the Input Editor tab.
Output
The following is the output of the activity.
Output
Item
Type
Description
xmlString
string
Available when text is selected in the Output Style field in the General
tab. This item contains a stream of bytes representing the rendered
XML.
xmlBytes
bytes
Available when binary is selected in the Output Style field in the
General tab. This item contains a stream of bytes representing the
rendered XML.
Fault
The Fault tab lists the possible exceptions thrown by this activity.
Fault
Thrown When..
XMLRenderException
An exception occurred when rendering the data.
UnsupportedEncodingExce
An unsupported encoding was specified in the byteEncoding input
item.
ption
MissingByteCountExcepti
on
An exception occurred while rendering the data with an invalid or
missing byte count.
TIBCO BusinessWorks™ Container Edition Palette Reference
150
Transform XML
Transform XML is a synchronous activity that invokes the built-in XSLT processor to apply an XSLT
stylesheet to an XML source document and produce a result document.
Normally, transformation of data occurs by mapping process variables to an activity's input and
applying XPath expression to perform any transformation. If you have an XSLT file that you are using
for transformation, or if an outside source supplies an XSLT file, this activity helps you to use the XSLT
file instead of manually creating the mappings.
For more information about creating and editing XSLT files, see the XSLT specifications at http://
www.w3.org/TR/xslt.
General
The General tab has the following fields.
Field
Description
Name
The name to be displayed as the label for the activity in the process.
Stylesheet
The XSLT file shared configuration resource to use when transforming the XML.
You can also specify an XSLT stylesheet in the stylesheet input element, if desired.
Stylesheets specified in the activity input override the stylesheet specified in this
field.
Input and
Output Style
Specifies whether the input and output is binary data, text, or an XML tree.
Description
Provide a short description for the activity.
Input
The following is the input for the activity.
Input Item
Datatype
Description
xmlString
binary
The XML to transform. If the input/output style is set to binary,
this element is named xmlBytesIn. If the input/output style is set to
text, this element is named xmlString. If the input/output style is
set to tree, this element is named xmlTree.
styleSheet
string
This optional element contains the XSLT stylesheet to use to
transform the XML input. This stylesheet overrides the stylesheet
specified in the styleSheet field in the General tab.
parameter
complex
This repeating element contains the input parameters for the
stylesheet.
Each input parameter is specified as name/value pairs. The name
is a string that corresponds to the name of the parameter specified
in the XSLT stylesheet parameter list.
name
string
The name of the stylesheet input parameters.
TIBCO BusinessWorks™ Container Edition Palette Reference
151
Input Item
Datatype
Description
value
string
The value to supply for the specified stylesheet input parameters.
isXMLDocument
boolean
Specifies whether the parameter is an XML document.
Output
The following is the output for the activity.
Output
Item
xmlString
Datatype
Description
text or
binary or
complex
A binary or text value or an XML tree containing the output schema
specified by the XSLT file.
The element is named xmlString and is of type text when you select
text for the input/output style on the General tab. The element is
named xmlOutput and is of type binary when binary is selected. The
element is named treeOutput and is a complex type when you select
tree.
Fault
The Fault tab lists the possible exceptions thrown by this activity.
Fault
Thrown When..
XMLTransformException
An exception occurred when transforming the data.
UnsupportedEncodingExce
Data was supplied that is encoded in an unsupported encoding.
ption
MissingByteCountExcepti
on
An exception occurred while transforming the data with an invalid
or missing byte count.
TIBCO BusinessWorks™ Container Edition Palette Reference
152
Shared Resources
Shared resources are used to define a resource that contains configuration data that can be referenced
from multiple processes.
You can define a shared resource and then reference it from multiple activities in the same or different
process. For example, you can define a JDBC Connection resource and then use it in any of the JDBC
activities in your process to connect to the database.
Shared resources such as JDBC Connection, JMS Connection, HTTP Connection, and so on are
available at design-time. At runtime, the referencing activities and event sources have full access to
their instances and configuration. Shared resources can be grouped in packages, similar to the way
process packages and Java packages are presented in the file system.
When defined in an application module, shared resources are not visible outside the application
module. However, when defined in a shared module, they are visible outside the shared module.
Data Format
The Data Format shared resource contains the specification for parsing or rendering a text string using
the Parse Data and Render Data activities. This resource specifies the type of formatting for the text
(delimited columns or fixed-width columns), the column separator for delimited columns, the line
separator, the fill character, and field offsets for fixed-width for fixed-width columns.
You must also specify the data schema to use for parsing or rendering the text. When parsing text, each
column of an input line is transformed into the corresponding item in the specified data schema. The
first column of the text line is turned into the first item in the data schema, the second column is
transformed into the second item, and so on. Each line is treated as a record, and multiple lines result in
a repeating data schema containing the lines of the input text string. The following figure illustrates
how an input text string is parsed into a specified data schema.
Parsing a Text String into a Data Schema
When rendering text, each record in the input data schema is transformed into a line of output text. The
first item of the data schema is transformed into the first column of the text line in the output text
string. Rendering a data schema into a text string is exactly the opposite process of parsing a text string
into a data schema.
Data Format Editor
This editor contains General, Data Format Configuration, Data Format Editor, and Field Offsets
sections.
TIBCO BusinessWorks™ Container Edition Palette Reference
153
General
The General section has the following fields.
Field
Description
Name
The name to be displayed as the label for the resource.
Description
A short description of the data format.
Data Format Configuration
You can define the structure of the data file using the Data Format Configuration.
Field
Description
Format Type
The Type of formatting for the text. The text can be either Delimiter separated or
Fixed format.
When you select the Delimiter separated option, the text in each column is
separated by a delimiter character, specified in the Col Separator field. Each line is
separated by the character specified in the Line Separator field.
When Fixed format option is selected, the text in each column occupies a fixed
position on the line. For fixed format text, you must specify the fill character, the
line length, and the column offsets.
Col Separator
This field specifies one or more separator characters between columns when
"Delimiter separated" is specified in the Format Type field.
When rendering text, each element in the input data schema is separated by the
column separator in the output text string. If more than one character is specified in
this field, the Render Data activity places the entire string specified in this field
between each column. For example, if ":;" is specified in this field, then ":;" displays
between each column in the rendered string.
When parsing text, each column becomes an element in the output data schema. If
more than one character is specified in this field, the Parse Data activity uses the
rules specified in the Col Separator Parse Rule field to determine how to parse the
data.
Col Separator
Parse Rule
Specifies the rule to use for multiple column separator characters when parsing
data. The choices are the following:
●
Treat all characters entered as a single column separator string.
The characters entered into the Col Separator field are treated as a single string
that acts as a separator. For example, if the specified Col Separator is ":;" then
Apple:;Orange:;Pear is treated as three columns.
●
Treat each character specified as a potential column separator
Any of the characters will act as a column separator. For example, if the
specified Col Separator is ":;" Apple;Orange:Pear is treated as three columns.
TIBCO BusinessWorks™ Container Edition Palette Reference
154
Field
Description
Line
Separator
Specifies the character(s) that determine the end of each line. Available Line
Separator characters are:
●
New Line
●
Carriage Return
●
Carriage Return/Line Feed(windows)
When parsing text each line is treated as a new record in the output data schema.
When rendering text, each data record is separated by the line separator character
in the output text string.
The last line in your input file must be terminated by the specified line separator.
Fill Character
When processing fixed format columns, this is the type of character that is used to
fill the empty space in a column and between columns. This field is only available
when you select the Fixed format option in the Format Type field. The fill character
is used only by the Render Data activity.
You can select any one from the following available options:
●
Space: fills with a space
●
Dash: fills with a dash
●
Others: specify your own custom fill character in the Fill With field
For example, you have a column that holds an integer and the specified width is 10.
One row has the value "588" for that column. Because the width of 588 is three and
the column width is 10, the remaining 7 characters are filled with the specified fill
character.
Data Format Editor
You can define a custom schema for the text in the Data Format Editor. You can define your own
datatype here. After defining the data type, the data specified here is used to parse a text string into the
specified schema or render the specified schema as a text string. The Header element contains the
following:
●
@attribute
●
(any element)
●
primitive
●
(any element)
Field Offsets
When processing fixed format text, you must specify the line length and the column offsets. This
enables the Parse Data or Render Data activity to determine where columns and lines begin and end.
You can specify the format of fixed-width text using the Field Offsets.
The line length is the total length of input lines, including the line separator characters. Include the
appropriate number of characters for the selected line separator in the Data Format Configuration to
the total length of each line.
The column offset is the starting and ending character position on each line for the column. Each line
starts at 0 (zero). For each column of the line, you must specify the name of the data item associated
TIBCO BusinessWorks™ Container Edition Palette Reference
155
with this column(this is the same name you specified for the corresponding elements in the data
schema), the starting offset for the column, and the ending offset for the column.
Each column offset can begin where the last column offset ended. Many fixed format data files are used
by databases or are generated by automated processes. These files have rigid file record formats and
may not have additional padding space between the columns. When you define each column offset to
begin where the last column offset ends, you can read the data more quickly. This is because you can
read sequentially the bytes of the input reords.
Consider the following text file. The first two lines of the file indicate offset numbers (each 0 indicates
another 10 characters), and the fill character between columns is spaces:
0
12
30
45
01234567890123456789012345678901234567890123456789012345678
57643
Smith
Chris
Account
57644
Jones
Pat
Marketing
57645
Walker
Terry
Development
Delimeter Separated Fields
When processing delimiter-separated text, each field in the input line is separated by the delimiter
specified by the Column Separator field. Leading and trailing spaces are stripped from each field and
the specified Line Separator determines when a new record starts.
In some situations, you may not be able to choose a column separator character that does not display in
any column data. For example, if you choose a comma as the column separator, there may be commas
in some of the column values. To process data that contains column separator characters in a column,
you can surround the column with double quotes (" "). You can also use double quote to include
leading and trailing spaces as well as line breaks in a field. If you want to display a double quote in a
field, escape the double quote by using two consecutive double quotes. That is, use "" to represent a
double quote in a field.
The following data illustrates input lines with each field separated by commas. some fields, however,
contain commas, leading or trailing spaces, double quotes, and line breaks.
57643, Smith, "Chris", Accounting , "State: Be prepared!"
57644, Jones, "Pat ", Marketing , "Statement: To paraphrase JFK, ""Ask not what your
company can do for you, ask what you can do for your company.""
57645, Walker, "Terry", Development, "Statement: May goal si to be CEO someday."
Notice that Pat Jones' statement spans two lines and contains double quotes as well as a comma. The
entire field is surrounded by double quotes, so it is still treated as part of the same record.
HTTP Client
The HTTP Client resource template represents an outgoing HTTP connection.
General
The General section has the following fields.
Field
Description
Package
The name of the package
Name
The name to be displayed as the label for the resource
Description
A short description of the shared resource
TIBCO BusinessWorks™ Container Edition Palette Reference
156
HTTP Client
This section has the following fields.
Field
Implementation
Library
Literal
Value/
Module
Property?
Description
No
Specifies the implementation library to be used:
●
Apache Commons(Supported by HTTP and SOAP): must
be used for SOAP binding.
●
Apache HttpComponents(Supported by HTTP and REST):
must be used for REST binding, when the Invoke REST API
activity needs to be used.
The default is Apache Commons(Supported by HTTP and
SOAP).
The HTTP palette activities work with both Apache
Commons and Apache HttpComponents.
Basic credential mapping is not supported with the Apache
Commons(Supported by HTTP and SOAP) library. To enforce
basic credential mapping on REST or HTTP activities, you must
select Apache HttpComponents(Supported by HTTP and
REST) library.
Disable
Connection
Pooling
Yes
Maximum Total
Connections
Yes
Indicates whether to use the single or multi-threaded
connection manager.
The default value is False.
Specifies the maximum number of concurrent, active HTTP
connections allowed by the resource instance to be opened with
the target service. This property is enabled only if connection
pooling is enabled (the Disable Connection Pooling parameter is
unchecked).
The default value is 200. For applications that create many longlived connections, increase the value of this parameter.
Idle Connection
Timeout(ms)
Yes
Keep-alive time (in milliseconds) for idle HTTP connection in
the Persistent Connection Pool.
TIBCO BusinessWorks™ Container Edition Palette Reference
157
Field
Maximum Total
Connections Per
Host/Route
Literal
Value/
Module
Property?
Yes
Description
Specifies the maximum number of concurrent, active HTTP
connections allowed by the resource instance to the same host
or route. This property is enabled only if connection pooling is
enabled (the Disable Connection Pooling parameter is
unchecked).
This number cannot be greater than Maximum Total
Connections. Every connection created here also
counts into Maximum Total Connections.
The default value is 20.
Stale Check
Yes
Selecting this check box determines whether the stale
connection check is to be used. Disabling the stale connection
check can result in slight performance improvement at the risk
of getting an I/O error, when executing a request over a
connection that has been closed at the server side.
Default Host
Yes
The name of the host that accepts the incoming requests.
For machines that have only one network card, the default
value localhost specifies the current machine. For machines
with more than one network card, this field specifies the host
name of the card used to accept the incoming HTTP requests.
The default is localhost.
Default Port
Yes
The port number on which to invoke outgoing HTTP requests.
The default is 80.
Thread Pool
No
Specifies a queue of threads available to run a queue of tasks.
Thread pools are used to improve performance when executing
large numbers of asynchronous tasks by reducing per task
invocation overhead, provide a means of bounding, and
managing the resources consumed when executing a collection
of tasks.
You can optionally create this client thread pool to route
messages to the target service. The thread pool resource can be
created by either selecting a thread pool resource template or
creating a new one. See Thread Pool for more information.
Advanced
This section has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
158
Field
Literal
Value/
Module
Property?
Socket Timeout
Yes
Description
Specifies the number of milliseconds to wait for data before the
connection is severed.
The value 0 is interpreted as an infinite timeout and is used
when no socket timeout is set in the HTTP method parameters.
Connection
Timeout
Yes
Specifies the number of miliseconds to wait while a connection
is being established.
The value 0 is interpreted as no timeout.
Accept Redirect
Yes
Indicates whether the HTTP method should automatically
follow HTTP redirects.
This option is used when client connection receives the redirect
responses from server like Moved Permanently, Moved
Temporarily, Temporary Redirect and so on.
The default value is False.
Retry Count
Yes
Specifies the maximum number of retry attempts for connecting
to the server if an exception occurs.
The default value is 3.
Use Single
Cookie Header
Yes
Select this check box if multiple name/value pairs must be sent
in a single non-repeating Cookie header element for outgoing
HTTP requests.
The default value is False.
Use NonPreemptive
Authentication
Yes
Select this check box if you want to use non-preemptive
authentication.
HTTP Proxy
No
Specifies the HTTP proxy server to be used to gain access
outside of a firewall. The Proxy Configuration shared
configuration resource specifies the configuration of the proxy
server. See Proxy Configuration for more information.
Security
Security can include any combination of the following characteristics:
TIBCO BusinessWorks™ Container Edition Palette Reference
159
Field
Description
Authentication
To be included when the messages must be authenticated. Authentication
can be performed with user names and passwords.
Identity Provider : Provides username and password credentials
encapsulated in an identity provider resource. Selecting this check box
activates the Identity Provider field.
You can enforce authentication on requests by selecting the
Authentication check box, or by associating the Basic Credential
Mapping policy with REST or HTTP activities. If you choose to
use the policy, ensure the Authentication check box on the HTTP
Client resource is not selected.
Confidentiality
To be included when encrypting or decrypting messages.
Selecting this check box displays the SSL Client Configuration field. For
details, refer to SSL Client Configuration.
HTTP Connector
HTTP Connector resource describes the characteristics of the connection used to receive incoming
HTTP requests. This resource is used when the process requires an HTTP request on a specific port
where the HTTP server is running. For example, the process starter HTTP Receiver and the signal-in
Wait for HTTP Request activity receiving HTTP requests.
There can be only one process with an HTTP Receiver or Wait for HTTP Request activity that uses the
same HTTP Connection resource. With this restriction the HTTP server listening for the incoming
requests dispatches the request to the correct process.
General
The General section has the following fields.
Field
Module
Property
Description
Package
No
The name to be displayed as the label of the resource package.
Name
No
The name to be displayed as the label for the resource.
Description
No
A short description of the activity.
Basic Configuration
The Basic Configuration section has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
160
Field
Module
Property
Host
Yes
Description
Specifies the name of the host that accepts the incoming requests.
For machines that have only one network card, the default value
localhost specifies the current machine. For machines that have
more than one network card, this field specifies the host name of
the card that will be used to accept incoming HTTP requests.
If there is more than one network card on the machine, and you
specify localhost in this field, all network cards on the machine
listen for incoming HTTP requests on the specified port.
When using local host for the system property, use the full name
of your machine as the host in the client.
You can start more than one HTTP server on a single
port by using Context and Path fields on HTTP
Receiver and Wait for HTTP activities. Ensure that
you use a different port, if different Context or Path
are not specified.
Port
Yes
Specifies the port number on which to listen for incoming HTTP
requests.
Accept Queue
Size
Yes
Specifies the number of connection requests to be queued before
the operating system starts sending rejections. The default values
are: -1 and 0.
These default values signify that the queue size is 50 or OSspecific.
Acceptor
Threads
Yes
Specifies the number of acceptor threads. Acceptor threads are
HTTP socket threads for an HTTP connector resource that accept
the incoming HTTP requests.
The default value is 1.
Advanced Configuration
The Advanced Configuration section has the following fields.
Field
Module
Property
Description
Header Buffer Size
(B)
Yes
Specify to set the size of the buffer for request headers. An idle
connection at most has one buffer of this size allocated. The
default is 4K.
Use Non-Blocking
IO Sockets
Yes
Select this check box to use non-blocking threading model for
NIO buffers.
Use this connector when there are many connections with idle
periods. The default is true.
TIBCO BusinessWorks™ Container Edition Palette Reference
161
Field
Module
Property
Description
Request Buffer
Size (B)
Yes
Specify to set the size of the content buffer for receiving
requests. These buffers are used only for active connections
that have requests with bodies that do not fit within the header
buffer. The default is 8K.
Use Direct Buffers
Yes
Specify to determine whether direct byte buffers are used or
not. The default is True.
Response Buffer
Size (B)
Yes
Specify to set the size of the content buffer for sending
responses. These buffers are used only for active connections
that are sending responses with bodies that will not fit within
the header buffer. The default is 24K.
URI Encoding
Yes
Specifies the character encoding used to decode the URI bytes.
If you do not set any value for uriEncoding, the default UTF-8
is used.
Max Idle Time
(ms)
Yes
Specify to set the maximum idle time for a connection. The
Max Idle Time is applied in the following cases:
●
When waiting for a new request to be received on a
connection; when reading the headers and content of a
request
●
When writing the headers and content of a response
Jetty interprets this value as the maximum time between the
progress made on the connection. The timeout is reset if
implemented by jetty if a single byte is read or written.
Enable DNS
Lookups
Yes
Selecting this check box enables a domain name system (DNS)
lookup for HTTP clients so that the IP address is resolved to a
DNS name. This can adversely affect the throughput. This
check box is not selected as default. Select this check box only
when required.
The default is False.
Low Resource Max
Idle Time (ms)
Yes
Compression
Yes
Specifies to set the period in ms for the connection to be idle.
This results in the server rapidly closing idle connections to
gracefully handle high load situations.
Specifies if the output of the HTTP Connection is compressed
using the HTTP/1.1 GZIP compression.
The acceptable values for this field are: True or False
The default is False.
Linger Time (ms)
Yes
Specifes to set the LINGER_TIME on the connection socket.
This setting affects only the close connection socket.
TIBCO BusinessWorks™ Container Edition Palette Reference
162
Field
Module
Property
Description
Compressible
Mime Types
Yes
Specifies the list of MIME types for which HTTP compression
may be used. The default value for this comma separated list
istext/html, text/xml, text/plain.
Max Post Size
Yes
Specifies the maximum size in bytes of the POST that the
container FORM URL parameter parsing can handle.
By default, the value of this field is set to 2M or 2097152
Setting the value less than or equal to zero disables the
limit for maxPostSize.
bytes.
Reverse Proxy
Host
Yes
Specifies the name of the reverse proxy host that accepts the
incoming requests.
Max Save Post Size
Yes
Specifies the maximum size in bytes of the POST that the
container can save/buffer during FORM or CLIENT-CERT
authentication.
●
FORM authentication: the request message is saved while
the user is redirected to the login page. It is retained until
the user authentication succeeds or the session associated
with the authentication request expires.
●
CLIENT-CERT authentication: the request message is
buffered for the entire duration of the SSL handshake. After
processing the request, the buffer is emptied.
However, in both the cases the buffering happens before the
user authentication. By default, the value of this field is set to
4K or 4096 bytes. Setting the value to -1 disables the limit for
this field.
Reverse Proxy Port
Yes
The reverse proxy port number on which to listen for the
incoming HTTP requests.
Minimum QTP
Threads
Yes
The Queued Thread Pool (QTP) uses the default job queue
configuration to The QTP threads accept the requests from the
acceptor threads.
This field specifies the minimum number of QTP threads
available for the incoming HTTP requests. The HTTP server
creates the number of threads specified by this parameter
when it starts up. The default value is 10.
Maximum QTP
Threads
Yes
This field specifies the maximum number of threads available
for the incoming HTTP requests. The HTTP server does not
create more than the number of threads specified by this
parameter. The default value is 75.
Security
Security can include any combination of the following characteristics:
TIBCO BusinessWorks™ Container Edition Palette Reference
163
Field
Description
Confidentiality
To be included when encrypting or decrypting the messages.
Selecting this check box displays the SSL Server Configuration field. Use
this field to specify the SSL parameters for the HTTP Connector shared
resource.
Identity Provider
Identity Provider shared resource provides user name and password credentials.
General
The General section has the following fields.
Field
Description
Name
The name of a Identity Provider shared resource.
Description
A short description of the shared resource.
Identity Provider
This section has the following fields.
Field
Description
Username
Enter a user name.
Password
Enter a password.
JDBC Connection
JDBC Connection resource describes a JDBC connection. JDBC connections are used when specifying
activities from the JDBC palette.
General
The General section has the following fields.
Field
Description
Name
The name to be displayed as the label for the shared resource
Description
A short description of the shared resource
JDBC Connection
This section has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
164
Field
Literal
Value/
Module
Property?
Description
Connection Type
None
Specifies the kind of JDBC connection you want to create.
Maximum
Connections
Yes
The maximum number of database connections to allocate.
The default maximum is 10. The minimum value that can be
specified is 1.
Login Credentials
Yes
The user name used to connect to the database.
The password used to connect to the database.
JDBC Drivers
This section has the following fields.
Field
Literal
Value/
Module
Property?
Database Driver
Yes
Description
The name of the JDBC driver class. You can select from a list
of supported drivers.
If you select a supported driver, the Database URL field is
populated with a template for the URL of the driver.
Database URL
Yes
The URL to use to connect to the database. A template of the
URL is supplied for the selected JDBC driver. You must
supply the portions of the URL that are in angle brackets (<>).
Login Timeout
Yes
The length of time (in milliseconds) to wait for a successful
database connection.
Only JDBC drivers that support connection timeouts can use
this field. If the JDBC driver does not support connection
timeouts, the value of this field is ignored. Most JDBC drivers
support connection timeouts.
Test Connection
Click the Test Connection button to test whether the specified configuration fields result in a valid
connection to a database.
Using Third Party JDBC Drivers
TIBCO BusinessWorks ™ Container Edition currently packages drivers for the following databases:
●
PostgreSQL
●
Microsoft SQL Sever
In addition, the JDBC palette also supports the Oracle, MySQL, and DB2 databases.
TIBCO BusinessWorks™ Container Edition Palette Reference
165
Adding Drivers for Runtime
If you want to use other databases, than the ones mentioned in "Using Third Party JDBC Drivers" listed
above, you must add them for run time separately. This is a one time process for every installation of
TIBCO BusinessWorks ™ Container Edition .
To add the drivers at run time for Oracle, MySQL, or DB2, run the bwinstall command from
Ensure that you run bwinstall with no arguments to access the help and
instructions to add the driver to the development run time.
<BWCE_Home>/1.x/bin.
The script creates driver bundles and adds it to that specific TIBCO BusinessWorks ™ Container Edition
environment.
To use another location for the drivers, a preference is provided in TIBCO Business Studio ™ which can
be updated for the JDBC palette to use drivers at design time. To change the Directory Preference, go
to Windows > Preferences > BusinessWorks > Palettes > JDBC.
If you have changed the preferences and want to use other databases with the JDBC palette at design
time, place the drivers at the <BWCE_Home>/1.x/config/design/thirdparty location.
Uninstalling Drivers for Runtime
To uninstall the drivers at run time for Oracle, MySQL, or DB2, run the bwuninstall command from
Ensure that you run bwuninstall with no arguments to access the help and
instructions to uninstall the driver at run time.
<BWCE_Home>/1.x/bin.
JMS Connection
JMS Connection resource describes a JMS connection. This resource is used to specify activities on the
JMS palette.
General
The General section has the following fields.
Field
Description
Name
The name to be displayed as the label for the resource
Description
A short description of the shared resource
Basic Configuration
This section has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
166
Field
Description
Connection
Factory Type
A connection factory is the object used by a client to create a connection to a
provider. Select from one of the following available options:
Messaging Style
●
JNDI: select to look up the connection factory object. Selecting this option
displays the Queue Connection Factory and Topic Connection Factory
fields, when the Messaging Style selected is Queue/Topic.
●
Direct: select if you want to connect to the JMS server using a URL.
Selecting this option displays the Provider URL field and the Supports XA
Transactions check box. Ensure to select the Queue/Topic in the Message
Style.
The available messaging style options are:
●
Generic:
●
Queue/Topic:
You can combine these styles in a single application or the application can use
any one of these messaging styles.
Queue Connection
Factory
This field is available when you select JNDI in the Connection Factory Type
field and Queue/Topic in the Message Style field.
The QueueConnectionFactory object stored in JNDI is used to create a queue
connection with a JMS application.
See the JNDI provider documentation for more information about creating
and storing QueueConnectionFactory objects.
Topic Connection
Factory
This field is available only when you select JNDI in the Connection Factory
Type field and Queue/Topic in the Message Style field.
The TopicConnectionFactory object stored in JNDI. This object is used to
create a topic connection with a JMS application.
See the JNDI provider documentation for more information about creating
and storing TopicConnectionFactory objects.
Connection
Factory JNDI
Name
This field is available only when you select the JNDI in the Connection
Factory Type field and Generic in the Message Style field.
JNDI
Configuration
A JNDI Configuration shared configuration object that specifies the JNDI
connection information. For details refer to, JNDI Configuration.
The GenericConnectionFactory object stored in JNDI is to create connection
with JMS server.
The New button is used to create a New JNDI Configuration Shared
Resource using the preferences set by the user.
Provider URL
This field is available only when you select Direct in the Connection Factory
Type field.
The URL to the JNDI service provider, for example,tcp://<host>:<port>.
TIBCO BusinessWorks™ Container Edition Palette Reference
167
Field
Description
Use UFO
Use this checkbox when using EMS Unshared State Failover factories. Refer to
the TIBCO Enterprise Message Service User's Guide for details on Unshared State
Failover.
This field appears only when the option Direct is selected in the Connection
Factory field.
When using Unshared failover setup, if a connection loss is detected to server
(A), TIBCO ActiveMatrix BusinessWorks will try to connect to server (B) as
defined in the connection factory configuration.
After enabling this checkbox you can pass the provider URL in the form of
UFO. For example: tcp://serverA:7222+tcp://serverB:7222, where
serverA and serverB are two EMS servers configured for the Unshared State
Failover.
Unsupported Features and Activities
●
●
JMS Palette
—
JMS Queue Requestor
—
JMS Topic Requestor
—
Any other Requestor activity
SOAP Palette
—
●
Service Palette
—
●
All Activities
All activities
AE Adaptor
—
All activities
Looking up factories using JNDI is not supported
●
UFO factories cannot be retrieved through JNDI directly.
Test Connection
Click the Test Connection button to test the connection specified in the configuration of this resource.
Security
Security section has the following field.
Field
Description
Login Credentials
The login credentials to log on to the JMS server. Click the Username
+Password radio button, if you want to use this option for a secure login. This
displays the Username and Password fields.
Advance Configuration
This section has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
168
Field
Description
Auto-generate
Client-ID
Select this check box if you want to automatically generate the client ID if no
client ID is specified or if the specified ID is already in use.
When this check box is selected, a value cannot be specified for the clientID.
When an automatically generated client ID is required, the following format is
used for the client ID:
BW-<projectName>-<topic or queue>-<engineName>-<timestamp>
Do not select this check box if you do not want to use the value specified in the
Client ID field. If no value is specified in the Client ID field, no client ID is
set. If the value specified in the Client ID field is already in use, it throws an
exception.
Selecting the Auto-generate Client-ID check box generates a new
Client ID every time a connection is made to the JMS Server. If you
are using Durable Subscribers, manually set the client ID for the
JMS Connection.
Client ID
The client ID for the connection. The JMS providers have a provider-specific
format for client IDs.
See the JMS provider’s documentation for more information about client IDs.
Each connection must use a unique client ID. If you do not specify a value in
this field, TIBCO ActiveMatrix BusinessWorks ensures the uniqueness of the
client ID for each connection.
SSL
Select the Confidentiality check box to configure the SSL connection parameters.
JMS Preference Page
A preference page is provided for the JMS Connection in TIBCO Business Studio. To change the
Directory Preference in TIBCO Business Studio, navigate to Windows > Preferences > BusinessWorks
> Palettes > JMS
TIBCO BusinessWorks™ Container Edition Palette Reference
169
Field
Description
One click JNDI Resource
name
The name of JNDI Connection shared resource which is auto created
when you click the New button. This is used only if the shared resource
uses JNDI and not Direct.
Default JNDI Naming
URL
The default URL to be added in the JNDI Connection shared resource
when a new resource is created.
Generic Connection
Factory Name
The value to be added in the Generic Connection Factory field when a
new JMS Connection Shared Resource is created.
Queue Connection
Factory Name
The value to be added in the Queue Connection Factory field when a
new JMS Connection shared resource is created.
Topic Connection
Factory Name
The value to be added in the Topic Connection Factory field when a
new JMS Connection shared resource is created.
JNDI Configuration
JNDI Configuration shared resource provides a way to configure the JNDI configuration that can be
shared with other activities. This resource can be specified in any resource that permits JNDI
connections. For example, JDBC Connection and JMS Connection can use JNDI connections.
General
The General section has the following fields.
Field
Description
Name
The name to be displayed as the label for the shared resource
Description
A short description of the shared resource
JNDI Connection
This section has the following fields.
Field
Literal
Value/
ModulePro
perty?
Description
JNDI Provider
No
The name of the JNDI connection.
Initial Context
Factory
Yes
The initial context factory class for accessing JNDI.
(com.tibco.tibjms.naming.TibjmsInitialContextFact
ory).
Naming Providing
URL
Yes
The name of the JNDI provider URL. For example,
tibjmsnaming://localhost:7222.
TIBCO BusinessWorks™ Container Edition Palette Reference
170
Security
This section has the following field.
Field
Description
Login Credentials
The login details to access the JNDI connection. Select any one of the
following options.
●
None: Selecting this radio button will not display the Username
+Password option.
●
Username+Password: Valid username and password to access the JNDI
connection.
Java Global Instance
You can use Java Global Instance shared configuration resource to specify a Java object to be shared
across all process instances in a Java Virtual Machine (JVM).
When the engine is started, an instance of the specified Java class is constructed. When the process
engine is shut down, if specified, a cleanup method is invoked on the object. The object is released
before the engine shuts down. Any Java Invoke activity can be configured to access the shared Java
global instance when the process engine runs. Any Java Invoke activity can access the shared java
global instance by invoking the static methods of the configured Java class.
If multiple process instances access the shared Java global instance, you may want to ensure that only
one process instance can access the object at a time. You can accomplish this by either declaring the
methods of the configured class as synchronous or by using a critical section group.
General
The General field has the following fields.
Field
Description
Name
The name to be displayed as the label for the resource
Description
A short description of the resource
Java Global Instance
The section has the following fields.
Field
Description
Class
Use the Browse a Class button to locate the class you want to use.
Method
Select a constructor from the drop-down list of constructors available for this
class. This is used to construct the class when the engine is started.
This field displays only the default constructor with no parameters or
constructors that have only parameters of Java primitive types. You cannot
create an object using a constructor that requires an object, array, or nonprimitive type for a parameter.
TIBCO BusinessWorks™ Container Edition Palette Reference
171
Field
Description
Parameter Input
The input parameters for the constructor selected in the Method field. Each
input parameter has the following three fields:
●
Parameter: the name of the parameter
●
Type: the datatype of the parameter
●
Value: specify a value for the parameter in this field
When string is the datatype for the parameter, do not use quotes
around the string when specifying the value.
Advanced Configuration
This section has the following fields.
Field
Description
Invoke Cleanup
Method
Selecting this check box signifies that you want to invoke a method on the
object before the object is released from memory when the engine
terminates. You can perform cleanup activities, such as closing connections,
releasing resources, and so on.
Selecting this check box enables the Cleanup Method field.
Cleanup Method
This field is only available when you select the Invoke Cleanup Method
check box.
You can specify the name of the method to invoke before the object in
memory is released. The method selected cannot contain any parameters,
therefore only methods without parameters are listed in this field. Any
values returned by the selected method are ignored, but exceptions raised
by the selected method are sent to the log.
Keystore Provider
Keystore Provider shared resource provides an access to a keystore.
General
The General section has the following fields.
Field
Description
Name
The name to be displayed as the label for the keystore provider resource.
Description
A short description of the resource.
Keystore
This section has the following fields.
TIBCO BusinessWorks™ Container Edition Palette Reference
172
Field
Literal Value/
Module
Property?
Provider
None
Description
The name of the keystore provider. Select from the following
available options:
●
SUN
●
IBMJCE
Default: Empty. The first matching provider supporting the
format is selected.
URL
Yes
The location of the external keystore.
Password
Yes
The password for the keystore.
Type
None
The type of the keystore: JCEKS, JKS, PKCS#12.
Default: JKS
Refresh Interval
Yes
Refresh interval, greater than 0. If the keystore provider is
accessed after the refresh interval has expired:
●
The refresh timer is reset to zero.
●
The operations on the keystore provider are performed on
the refreshed copy.
The default value is 3600000.
Proxy Configuration
Proxy Configuration shared resource is used to specify a proxy HTTP server when HTTP requests are
sent outside of a firewall.
General
The General section has the following fields.
Field
Description
Name
The name to be displayed as the label for the resource.
Description
A short description of the shared resource.
Proxy Connection Configuration
This section has the following fields.
Field
Literal Value/
Module
Property?
Description
Host
Yes
The host name or IP address of the proxy server.
TIBCO BusinessWorks™ Container Edition Palette Reference
173
Field
Literal Value/
Module
Property?
Description
Port
Yes
The port number of the proxy host.
Security
This section has the following fields.
Field
Description
Authentication
Select the check box to specify the authentication to be used.
Identity Provider
Create a UserId resource in the UserIdResource Resource Template wizard.
This provides access to the username and password credentials to access the
proxy connection.
SSL Client Configuration
You can specify SSL parameters for the HTTP client shared resource here.
SSL Client Configuration
The General section in the SSL Client Configuration has the following fields.
Field
Description
Name
The name to be displayed as the label of the SSL Client resource.
Description
A short description of the SSL client resource.
Basic SSL Client Configuration
This section has the following fields.
Field
Module Property
Description
Keystore
Provider As
Trust Store
No
The name of a keystore provider resource
instance that maintains a keystore that
confirms an identity.
Enable
Mutual
Authenticat
ion
No
Indicates whether the client in the SSL
connection authenticates to the server. Select
this check box to enable the identity fields.
Identity
Store
Provider
No
The name of keystore provider resource that
maintains a keystore used to assert an
identity.
Key Alias
Name
Yes
The name of the alias used to access the
identity.
TIBCO BusinessWorks™ Container Edition Palette Reference
174
Field
Module Property
Description
Key Alias
Password
Yes
The password for the alias.
Advanced Client SSL Configuration
This section contains the following fields.
Field
Module Property
Description
SSL
Security
Provider
Yes
Optional. The SSL security provider.
SSL
Protocol
No
This is the name for the JSSE's
cryptographic provider
implmenting SSLContext. If you are
using non-default providers, such
as PDCS#11 ones, you might want
to override it.
The SSL protocol to use in the SSL connection:
●
TLSv1
●
TLSv1.1
●
TLSv1.2
●
SSLv3 - Use of this protocol is discouraged.
The default is TLSv1.
Selecting a protocol implies the support of
higher versions as well.
SSL Cipher
Class
No
The number of bits in the key used to encrypt
data:
●
No Exportable Ciphers
●
All Ciphers
●
At Least 128 Bit
●
More Than 128 Bit
●
At Least 256 Bit
●
FIPS Ciphers
●
Explicit Ciphers
The greater the number of bits in the key
(cipher strength), the more possible key
combinations and the longer it takes to break
the encryption.
The default is At
Least 128 Bit.
TIBCO BusinessWorks™ Container Edition Palette Reference
175
Field
Module Property
Description
Explicit
Cipher List
Yes
A list of ciphers. Enabled when SSL Cipher
Class is set to Explicit Ciphers. Use the JSSE
format for ciphers names.
Verify
Remote
Host name
No
Indicates whether the name on the server's
certificate must be verified against the server's
host name. If the server's host name is
different than the name on the certificate, the
SSL connection fails. The name on the
certificate can be verified against another
name by specifying Expected Remote
Hostname.
Selecting this check box displays the Expected
Remote Hostname field.
Default: This check box is clear.
Expected
Remote
Hostname
Yes
Optional. The expected name of the remote
host.
The default is None.
Thread Pool
The thread pool is a queue of threads available to run a collection of tasks. Thread pools are used to
improve performance when executing large numbers of asynchronous tasks by reducing per task
invocation overhead. This provides a means of bounding and managing the resources consumed when
executing a collection of tasks.
General
The General section has the following fields.
Field
Description
Name
The name to be displayed as the label for the resource.
Description
A short description of the resource.
Thread Pool
This section has the following fields.
Field
Literal
Value/
Module
Property?
Description
Core Pool Size
Yes
Must be greater than or equal to zero. The default is 5.
TIBCO BusinessWorks™ Container Edition Palette Reference
176
Field
Literal
Value/
Module
Property?
Max Pool Size
Yes
Description
The maximum number of threads in the pool. Must be greater
than zero and greater than or equal to core pool size.
The default is 10.
Keep Alive
Time (s)
Yes
The length of time an idle thread remains in the pool before being
reclaimed, if the number of threads in pool is more than core pool
size.
The default is 30 seconds.
Autostart Core
Threads
Yes
Indicates to create and start the core pool size threads when the
thread pool is created. Normally core threads are created and
started only when new tasks arrive.
Thread Pool
Name Prefix
Yes
A string prefixed to the name of each thread.
Daemon
Yes
Select the check box to specify whether the threads can be started
as a daemon or a user. The default is false.
Priority
Yes
The default priority of the threads in the pool. The default is 5.
Rejection Policy
No
The policy applied when no thread is available to run a task:
●
BLOCKING: the task is blocked until a thread from the thread
pool picks up this task.
●
CALLER RUNS: the task is run in the calling thread.
●
ABORT: the task is aborted and an exception is thrown.
The default is BLOCKING.
TIBCO BusinessWorks™ Container Edition Palette Reference
177
Activity Icons Reference
Basic Activities Palette
Critical Section
Constructor
Iterate
Repeat
Scope
While
For Each
Repeat on Error
Receive
Empty
Exit
Get Context
Rethrow
Invoke
Reply
Set Context
Compensate
Set EPR
Throw
TIBCO BusinessWorks™ Container Edition Palette Reference
178
General Activities Palette
Assign
Confirm
Mapper
Get Shared Variable
Inspector
Log
Set Shared Variable
Sleep
Timer
Call Process
HTTP Palette
HTTP Receiver
Send HTTP Request
Send HTTP Response
Java Palette
JAVA Invoke
Java Process Starter
Java To XML
XML To Java
JDBC Palette
JDBC Call Procedure
JDBC Query
JDBC Update
SQL Direct
TIBCO BusinessWorks™ Container Edition Palette Reference
179
JMS Palette
Get JMS Queue Message
JMS Receive Message
Reply to JMS Message
RequestReply
JMS Send Message
Parse Palette
MiimeParser
Parse Data
Render Data
REST and JSON Palette
Invoke REST API
Parse JSON
Render JSON
XML Activities Palette
Parse XML
Render XML
Transform XML
TIBCO BusinessWorks™ Container Edition Palette Reference
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement