Broker Admin Guide
Broker Admin Guide
Broker Admin Guide
Administrator’s Guide
VERSION 6.5
webMethods, Inc.
South Tower
3877 Fairfax Ridge Road
Fairfax, VA 22030
USA
703.460.2500
http://www.webmethods.com
webMethods Administrator, webMethods Broker, webMethods Dashboard, webMethods Developer, webMethods Fabric, webMethods Glue, webMethods
Installer, webMethods Integration Server, webMethods Mainframe, webMethods Manager, webMethods Mobile, webMethods Modeler, webMethods
Monitor, webMethods Optimize, webMethods Portal, webMethods Trading Networks, and webMethods Workflow are trademarks of webMethods, Inc.
webMethods and the webMethods logo are registered trademarks of webMethods, Inc.
Acrobat, Adobe, and Reader are registered trademarks of Adobe Systems Incorporated. Amdocs is a registered trademark, and ClarifyCRM is a trademark of
Amdocs Inc. Ariba is a registered trademark of Ariba, Inc. BEA and BEA WebLogic Server are registered trademarks, and BEA WebLogic Platform is a
trademark of BEA Systems, Inc. BMC Software and PATROL are registered trademarks of BMC Software, Inc. BroadVision is a registered trademark of
BroadVision, Inc. ChemeStandards and CIDX are registered trademarks of Chemical Industry Data Exchange. Unicenter is a trademark of Computer
Associates International, Inc. PopChart is a registered trademark of CORDA Technologies, Inc. Kenan and Arbor are registered trademarks of CSG Software,
Incorporated. SNAP-IX and Data Connection are registered trademarks of Data Connection Corporation. DataDirect, DataDirect Connect, and SequeLink are
registered trademarks of DataDirect Technologies Corp. D & B and D-U-N-S are registered trademarks of Dun & Broadstreet, Inc. Entrust is a registered
trademark of Entrust, Inc. Hewlett-Packard, HP, HP-UX, and OpenView are trademarks of Hewlett-Packard Company. i2 is a registered trademark of i2
Technologies, Inc. AIX, AS/400, CICS, DB2, Domino, IBM, Infoprint, Lotus, Lotus Notes, MQSeries, OS/390, OS/400, RACF, RS/6000, S/390, System/390, VTAM,
z/OS, and WebSphere are registered trademarks; and Informix, SQL/400, Communications System for Windows NT, IMS, MVS, SQL/DS, and Universal
Database are trademarks of IBM Corporation. InnoDB is a trademark of Innobase Oy. JBoss is a registered trademark, and JBoss Group is a trademark of JBoss
Inc. JD Edwards is a registered trademark of J.D. Edwards & Company and OneWorld is a registered trademark of J.D. Edwards World Source Company.
Linux is a registered trademark of Linus Torvalds. X Window System is a trademark of the X.org Foundation. MetaSolv is a registered trademark of Metasolv
Software, Inc. ActiveX, Microsoft, Outlook, Visual Basic, Windows, and Windows NT are registered trademarks; and SQL Server is a trademark of Microsoft
Corporation. MySQL is a registered trademark of MySQL AB, Ltd. Teradata is a registered trademark of NCR International, Inc. Netscape is a registered
trademark of Netscape Communications Corporation. ServletExec is a registered trademark, and New Atlanta is a trademark of New Atlanta
Communications, LLC. CORBA is a registered trademark of Object Management Group, Inc. UNIX is a registered trademark of X/Open Company Ltd. Oracle
is a registered trademark of Oracle International Corporation. PeopleSoft and Vantive are registered trademarks, and PeopleSoft Pure Internet Architecture
and WorldSoftware are trademarks of PeopleSoft, Inc. Infranet and Portal are trademarks of Portal Software, Inc. RosettaNet is a trademark of RosettaNet, a
non-profit organization. SAP and R/3 are registered trademarks of SAP AG. Siebel is a registered trademark of Siebel Systems, Inc. SPARC is a registered
trademark, and SPARCStation is a trademark of SPARC International, Inc. SSA Global and SSA Baan are trademarks of SSA Global Technologies, Inc. EJB,
Enterprise JavaBeans, Java, JavaServer, JDBC, JSP, J2EE, Solaris, and Sun Microsystems are registered trademarks; and Java Naming and Directory Interface,
SOAP with Attachments API for Java, JavaServer Pages and SunSoft are trademarks of Sun Microsystems, Inc. SWIFT and SWIFTNet are registered
trademarks of Society for Worldwide Interbank Financial Telecommunication SCRL. Sybase is a registered trademark of Sybase, Inc. UCCnet and
eBusinessReady are registered trademarks of Uniform Code Council, Inc. Verisign is a registered trademark of Verisign, Inc. VERITAS is a registered
trademark of VERITAS Operating Corporation, and VERITAS Software and VERITAS Cluster Server are trademarks of VERITAS Software Corporation. W3C
is a registered trademark of Massachusetts Institute of Technology.
All other marks are the property of their respective owners.
Copyright © 2005 by webMethods, Inc. All rights reserved, including the right of reproduction in whole or in part in any form.
Chapter 12. Configuring Administered Objects with the JMS Administrator . . . . . . . . . . . 205
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Configuration Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Starting the JMS Administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Configuring the JNDI Provider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Uploading a JNDI Properties File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Selecting a Broker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Creating and Managing JMS Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Administering Queue Connection Factories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Administering Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Administering Topic Connection Factories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
Administering Topics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Glossary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
This guide provides information about how to use the webMethods Broker Administrator
and command line utilities. It describes how to create and manage Brokers on a Broker
Server, set up access permissions, and monitor document traffic through a Broker.
webMethods software needs to be successfully installed before you can use webMethods
Broker Administrator.
webMethods Broker Administrator’s Guide Version 6.5 is designed primarily for the system
administrator who is responsible for configuring and monitoring the webMethods Broker.
This guide assumes you are familiar with the following:
Terminology and basic operations of your operating system (OS)
Document Conventions
Convention Description
Bold Identifies elements on a screen.
Italic Identifies variable information that you must supply or change based
on your specific situation or environment. Identifies terms the first
time they are defined in text. Also identifies service input and output
variables.
Narrow font Identifies storage locations for services on the webMethods Integration
Server using the convention folder.subfolder:service.
Typewriter Identifies characters and values that you must type exactly or
font messages that the system displays on the console.
UPPERCASE Identifies keyboard keys. Keys that you must press simultaneously are
joined with the “+” symbol.
\ Directory paths use the “\” directory delimiter unless the subject is
UNIX-specific.
[] Optional keywords or values are enclosed in [ ]. Do not type the [ ]
symbols in your own code.
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Overview
This chapter introduces webMethods Broker and describes its components and
management tools for Windows and UNIX systems. The management tools include
webMethods Broker Administrator and the command line utilities.
Brokers
Each Broker Server has one or more entities, called Brokers, that reside on it. A Broker is
where the client programs connect, where document types are stored, and where client
queues and subscriptions are monitored and stored. When you install a Broker Server, the
installation program creates one Broker and makes it the default Broker. Using the Broker
Administrator tool, you can change the default status of a Broker, add new Brokers, and
delete existing Brokers.
When a Broker client publishes a document, the Broker determines which Broker clients
have subscribed to that document and places the document in the matching Broker client
queues.
Territories
Brokers can share information about their document type definitions and client groups by
joining a territory. Brokers within the same territory have knowledge of each other’s
document type definitions and client groups. Documents can travel from clients on one
Broker to clients on another Broker in the same territory. Each Broker can reside on a
Document Types
Documents are messages that travel over a network from a publisher to a subscriber,
through the Broker. Each document is an instance of a document type. A document type’s
name, which must be unique, is carried by all documents of its type.
Document folders provide a means for grouping document types. A document folder
provides scope for naming document types, allowing a document type in one scope to
have the same base name as a document type in another scope. For example,
Order::Received and Order::Shipped are members of the Order document folder and
Part::Received and Part::Shipped are members of the Part scope.
Each document type has properties associated with it, such as its document folder name,
when it was created, how many times it has been published and retrieved by Broker
clients, and the number of subscriptions.
Note:
The maximum size of any single document operation is 1GB with a transaction size
of 1GB.
The maximum number of document types that a Broker can support is 65533.
Broker Clients
A Broker client is an object that is used by client programs. A Broker client is a handle that
is created and used by client programs. It represents a connection to a particular Broker.
Client programs may use one or more Broker clients.
Client State
A Broker client has a client state. The client state is the information about a Broker client
that the Broker maintains. This information includes:
Client ID
Application name
Client group
Subscription list
Client Groups
Client groups provide a method for setting important properties for a group of Broker
clients. Instead of assigning properties to each Broker client separately, you can assign
properties to a client group. Properties you assign to a client group include:
Client life cycle
Broker Administrator
Broker Administrator uses the browser on the local machine and the Integration Server,
which can be anywhere in the network, to connect to a Broker Server. The Integration
Server is installed using the webMethods installation program.
The Broker Administrator allows you to configure administrative websites from which
you can monitor webMethods Broker Servers, territories, Adapters, Brokers, and clients
from any browser-equipped workstation in your organization’s network.
You set up the Broker Administrator on any Integration Server during the Broker Server
installation. For instructions on installing the Broker Administrator, refer to the
webMethods Installation Guide.
To learn how to start the Broker Administrator, see Chapter 2, “Logging On to Broker
Administrator.”
The command line utilities are described in detail in Appendix A, “webMethods Broker
Command Line Utilities.” For more about the jmsadmin command line tool, see the
webMethods Broker JMS Provider Programmer’s Guide.
See Chapter 3, “Managing webMethods Broker Servers.” to learn how to add existing
Broker Servers to the Broker Administrator.
8 Optionally, configure and manage territories and territory gateways.
A client on one Broker can communicate with a client on another Broker within the
same territory. Territory gateways provide control over documents that pass from
one territory to another. Using gateways, it is possible for clients to communicate
across administrative domains.
See Chapter 10, “Territories and Gateways.” to learn how to set up territories and
gateways.
9 Optionally, set up Secure Sockets Layer (SSL) support.
SSL provides a secure means of communication over a network between two
programs. To provide SSL support in webMethods Broker, you must enable SSL for
the Broker Server and for each client application, adapter, and/or the Broker
Administrator.
See Chapter 11, “Managing Broker Security.” to learn more about SSL support.
10 Publish a document to test your settings.
Basic Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Host and port of the webMethods Broker to which you are connecting
Note: To load the Broker Administrator, the browser must be able to display images,
support frames and cascading style sheets, and must be able to run javascript.
If the Integration Server is running on port 4040 on a machine called ATLAS, you
would type:
http://ATLAS:4040/WmBrokerAdmin/
Log on to the Integration Server with a user name and password that has
administrator privileges.
If you just installed the webMethods Integration Server, you can use the following
default values:
User Name: Broker
Password: manage
Use the exact combination of upper- and lower-case characters shown above (user
names and passwords are case sensitive).
When you change the password, be sure to select one that is difficult to guess. For
example, use a mixture of upper- and lower-case letters, numbers, and special
characters. Do not use a name, phone number, social security number, license plate,
or other generally available information. See the webMethods Integration Server
Administrator’s Guide for instructions on changing the password.
If the Integration Server is not running, your browser will issue an error similar to
the following:
Banner
Navigation
panel
Main
page
The main page displays a screen that corresponds to the object you select from the
Navigation panel. From this page, you view and edit the settings for the webMethods
Broker Servers, Brokers, Adapters, and Territories on the network.
Broker Servers
within the network
Territories and
Brokers within
the network
Adapters view
Choose which
Adapters to view
Adapters as
associated with
Brokers within
the network
To switch between these views, click the appropriate link in the Navigation panel.
Note: An SSL connection cannot be made if the remote machine connecting to the
Broker Administrator is not SSL-enabled.
For detailed information about SSL support, see Chapter 11, “Managing Broker
Security.”
Time interval between statistical polls. This is the number of minutes that should pass
between statistical updates. The default value is 1 minute.
Trigger. Lists only clients with a trigger client ID. For information about triggers, see
the webMethods Developer User’s Guide.
You can also create a custom filter by clicking Add User Defined Client Filter. For information
about creating client filters and applying them to Brokers, see “Client Filters” on page 115.
Basic Operation
The Broker Server Information page contains the information shown below.
Information Description
Name The name or the IP address of the Broker Server.
Port Port number on which the webMethods Broker is running.
Description A description of the webMethods Broker. Click the Change Broker Server
Description link to update this field.
Information Description
Status Status of the webMethods Broker.
Expires
Brokers page
Information Description
Broker Name The name of the Broker.
Territory The territory to which the Broker belongs.
Note: You can view the Brokers within a territory and get their statistics
from the Territories view. See Chapter 10, “Territories and Gateways”
for more information.
Click the Broker for which you want to view information and statistics.
Information Description
Name The name of the Broker.
Description A description of the Broker. You can update this field at any time by
clicking the Broker, then clicking Change Broker Description.
Connected The status of the connection. Connection status is displayed in the
following ways:
Information Description
Document Whether document type logging is enabled. For more information
Type Logging about document type logging, see “Setting Up Your webMethods
Broker for Higher Performance” on page 68.
Document The number of document types associated with the Broker.
Types
Transactions The number of transactions that are currently executing on the Broker.
Because transactions are short-lived, typically only milliseconds, they
often complete too quickly to register in this field. A value of zero does
not necessarily mean there are no transactions executing.
Territory The territory to which the Broker belongs.
Note: You can view the Brokers within a territory and get their statistics
from the Territories view. See Chapter 10, “Territories and Gateways”
for more information.
Managing Brokers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Overview
The Broker Server manages the flow of documents among clients, Broker Servers and
various applications. To do this, the Broker Server automatically routes, queues, and
filters documents. The Broker Server guarantees information delivery over networks that
may have intermittent connectivity, such as dial-up connections. All webMethods Broker
components communicate with a Broker Server, not with each other.
The Broker Server has an associated data directory. The files in the data directory contain
information about the Broker Server’s configuration, and about the configuration and
statistics for each of the Brokers that manage the various queues through which
documents pass from one client to another.
It is possible to have more than one Broker Server running on a host. Each Broker Server
has its own data directory and communicates through its own port. Each Broker Server is
identified by the name of the host computer and the port number. For example, a Broker
Server running on port 6840 on the Broker Server Host named “atlas” is identified as
“atlas:6840”. Broker Servers on a host do not have to be the same version of webMethods
Broker.
This chapter describes how to carry out Broker Server administration tasks from the
Broker Administrator, how to configure Broker Servers from the command line, and how
to back up Broker Server data directories.
The Broker Server is appended to the Broker Server list and displayed with the name
you entered.
8 Perform one of the following:
To add additional Broker Servers, follow Steps 2–5.
To show or hide Broker Servers in the Broker Server list, click Change Which Broker
Servers are Visible.
When a Broker Server is installed, the install program creates a Broker and makes it the
default. You can add new Brokers to a Broker Server at any time. See “Creating New
Brokers” on page 66.
Where broker_server_name and port represent the name and port of the Broker Server that
you want to add. For example:
california
tokyo:9000
paris:7000
newyork
london:8000
Save the Broker Server List file as an ASCII text file; it must have a .txt extension in order
for Broker Administrator to import it.
1 Create a Broker Server List file. See the previous section for instructions.
2 Open the Broker Administrator if it is not already open.
3 Do one of the following:
On the Broker Servers view, click Change Broker Server List.
From the Navigation panel, on the Settings menu, click Known Broker Servers.
4 On the Known Broker Servers page, click Upload Broker Server List.
5 Enter the file name and location in the Filename field or click Browse to navigate to the
file.
6 Click Upload.
Select... To...
6 Under Where to Log, specify how you want to send the logged information. You can
select one or more of the following options.
Select... To...
Write to UNIX Syslog For Solaris or HP-UX, syslog messages are sent from the Broker
Server to the syslogd. Then, syslogd writes the messages to files,
consoles, or other machines, depending on how syslogd is
configured.
To view the messages, look at the log files shown below:
AIX: /var/opt/activesw/ broker.alert
/var/opt/activesw/broker.info
HP-UX: /var/adm/syslog/broker.alert
/var/adm/syslog/broker.info
Solaris: /var/log/broker.alert
/var/log/broker.info
By default, the Broker Server logs its errors using the native logging facility of the
platform on which it runs.
Messages are in one of two categories:
Broker Server. Messages in the Broker Server category are from the awbroker
process. The awbroker process is where all the standard Broker Server tasks take
place.
webMethods Broker Server Monitor. Messages in the webMethods Broker Server
Monitor category are from the awbrokermon process. The awbrokermon process
is always running once the Broker Server is installed, and is responsible for
starting and monitoring the awbroker process. For more information, see
“Configuring webMethods Broker Monitor Logging” on page 58.
7 Click Save Changes.
Message text
Note: To unzip the error log file on Windows systems, you can use any archive utility
available for Windows. On UNIX systems, use the Gzip data compression program.
SSL configuration
Access Control List
Broker configuration information includes:
Broker description
Document type Definitions
Client group definitions
Territory information
Gateway information, including shared document types
Access Control Lists for client groups, territories, and territory gateways
This information also describes the configuration of a webMethods Broker system that can
contain multiple territories and the gateways that connect them.
Broker
Online
Backup Runtime
Meta-data
data
Offline
storage
In the unlikely event when the Broker configuration data becomes corrupted, the backup
copy of the configuration data storage will enable you to restore the Broker quickly,
without having to rebuilt it using ADL files. The backup option is not available for the
run-time data. For more information about the online backup feature, see “Backing Up
and Restoring System Configuration Data Storage” on page 85.
If you have no need to back up your Broker configuration data storage, you can continue
to use the combined storage configuration where both the Broker configuration and run-
time data are stored in a single storage session. You can backup a combined data file for
the purpose of a system configuration restore, if you completely drain all Broker queues
and shut down the Broker Server. For more information, see “Backing up and Restoring
Combined Broker Server Storage” on page 88.
Note: At this time, there is no direct path to convert from a combined storage to a separate
storage configuration or vice-versa. If you would like to take advantage of the Broker
Server online configuration data storage backup and restore feature, you must create a
new Broker Server with separate configuration and run-time data storage sessions and
populate the new Broker Server with ADL files exported from the existing Broker Server.
For more information, see the webMethods Broker Upgrade Guides.
For example, if you want to change cache size for the configuration data storage session to
64MB, you modify the configuration data storage session URL as follows:
session-config=qs:///var/opt/BrokerStorage/BrokerConfig.qs?max_cache_size=64
If you want to change cache size for the run-time data storage session to 512MB, you
modify the run-time data storage session URL as follows:
session-data=qs:///var/opt/BrokerStorage/BrokerData.qs?max_cache_size=512
If you want to change cache size for the combined storage session to 512MB, you modify
the combined storage session URL as follows:
session-config=qs:///var/opt/BrokerStorage/BrokerConfig.qs?max_cache_size=512
Note: The use of max-cache-size=nnn as a separate entry in the awbroker.cfg file has
been deprecated for webMethods Broker Version 6.5. For a combined storage session,
the values specified in the storage session URL overwrite the max-cache-size=nnn
value. This value should not be used for separate storage sessions.
Note: If you want to modify the max-cache-size for your storage session and enable
asynchronous write mode, you append both parameters to the storage session URL, for
example:
session-data=qs:///var/opt/BrokerStorage/BrokerData.qs?max-cache-size=512?async
Broker for Higher Performance” on page 68 for more details on how to improve your
Broker performance.
Note: There is a potential for losing guaranteed documents if the operating system cache
is not flushed to the disk before a failure occurs with the operating system or the host
computer. Asynchronous write mode is not recommended if you require a high degree
of reliability for guaranteed document delivery.
You enable the asynchronous write mode by pending the async flag to the storage session
URL string, using the following extended format:
qs://<fully path to the .qs file>[?<argument>]
For example, if you want to enable asynchronous write mode for the run-time data
storage session, you modify the run-time data storage session URL as:
session-data=qs:///var/opt/BrokerStorage/BrokerData.qs?async
If you want to enable asynchronous write mode for the combined storage session, you
modify the combined data storage session URL as:
session-config=qs:///var/opt/BrokerStorage/BrokerConfig.qs?async
Note: If you want to enable asynchronous write mode and modify the max-cache-size for
your storage session, you append both parameters to the storage session URL, for
example:
session-data=qs:///var/opt/BrokerStorage/BrokerData.qs?max-cache-size=512?async
3 Restart the Broker Monitor. For more information, see “broker_stop and broker_start”
on page 262 or “Shutting Down and Restarting a Broker Server on Solaris, HP-UX,
and Windows Platform” on page 63.
From the command line, using the broker_stop and broker_start programs
Important! When you stop the Broker Server, all Broker clients are disconnected. No
Broker clients can reconnect and retrieve documents until you restart the Broker Server.
To stop and restart a webMethods Broker Server from the command line
You can use the broker_stop and broker_start command line tools to stop and
start the Broker Server. Refer to Appendix A, “webMethods Broker Command Line
Utilities,” for instructions.
awbrokermon†
awbroker‡ awbroker
...
Broker Broker Broker ... Broker
The awbroker process is where all Broker tasks take place. Some of these tasks include
receiving, queuing, and delivering documents. The awbroker process can support
more than one Broker, so you can create and deploy multiple Brokers for
development and administrative convenience.
Because multiple Brokers are supported by a single awbroker process, all actions that
affect the awbroker process also affect all Brokers that reside on the same Broker
Server. For example, shutting down the Broker Server shuts down all of its Brokers.
The awbrokermon process, which controls and monitors the awbroker process, is
always running once it is installed. The awbrokermon process starts and monitors the
awbroker process. For every Broker Server running on a host, there is a separate
instance of the awbroker process. A single awbrokermon process controls all
awbroker processes running on a host.
If the awbroker process stops unexpectedly, awbrokermon logs the fault and attempts
to restart awbroker. The awbrokermon process does not perform a restart if awbroker
has three unexpected exits within five minutes.
You can stop and restart the awbrokermon and awbroker processes by using specific
command line tools. See “broker_stop and broker_start” on page 262.
Shutting Down and Restarting a Broker Server on Solaris, HP-UX, and Windows
Platform
To shut down a Broker Server (awbrokermon and awbroker processes) on Solaris, HP-UX,
and Windows platforms, use the commands described in the following sections.
Note: On Solaris, you can only run these commands as user root or user bin. These
commands can only shut down webMethods Broker processes on the local machine.
This command stops the webMethods Broker processes, awbrokermon and awbroker.
2 To restart the webMethods Broker processes, enter this command:
/etc/rc3.d/S45broker65 start
Note: On HP-UX, you can only run these commands as user root or user bin. These
commands can only shut down webMethods Broker processes on the local machine.
This command stops the webMethods Broker processes, awbrokermon and awbroker.
2 To restart the webMethods Broker processes, enter this command:
/sbin/rc3.d/S45broker65 start
Note: On Windows, any user with administrator privileges can start or stop any service.
You can start and stop services on a remote machine and a local machine if you have a
Domain established and have domain administrator privileges.
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Deleting Brokers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Name Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Uninstalling Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Overview
Each Broker Server has one or more entities, called Brokers, that reside on it. A Broker is
where the client programs connect to, where document types are stored, and where client
queues and subscriptions are monitored and stored. When you install a Broker Server, the
installation program creates one Broker and makes it the default Broker. This chapter
describes how to carry out Broker administration tasks such as creating and deleting
Brokers, and deploying copies of existing Brokers.
If you want to work from the command line, rather than from Broker Administrator,
you can use the broker_create command to create a Broker. Refer to
“broker_create” on page 254 for instructions.
Important! Before you enable this option, you must install the webMethods Logging
Utility and configure the Integration Server to receive Broker information. See
webMethods Integration Platform Logging and Monitoring Guide for more information
about setting up Broker document logging with the Integration Server.
After you enable document type logging, the Document Type Log Length field appears on the
Broker Administrator. This field displays the number of documents in the log queue.
Volatile
Code Documents Guaranteed Documents
System Swap no yes no
You need enough physical memory to hold all volatile documents when Broker
queues are backlogged; otherwise, documents will have to swap to disk, which also
slows down performance.
Guaranteed documents. Key factors are disk and physical memory.
Disk speed is the main factor for performance of guaranteed documents. You can
improve guaranteed performance by using a disk with at least 32MB of non-volatile
write-back cache RAM. Most raid controllers include non-volatile write-back cache
RAM.
Asynchronous write mode. You can gain even more guaranteed performance by using
the operating system’s write cache. However, there is a potential for loss of data if the
operation system crashes. You can enable the Broker to use operating system caching
by setting asynchronous write mode using the server_config command. For more
information, see “Configuring webMethods Broker to Use Asynchronous Write
Mode” on page 57.
Sharing the host computer with other applications. Even though the Broker can run with
other applications on the same host computer, you need to be aware that potential
resource contentions between applications and the Broker(s) can lead to Broker
performance degradation. webMethods recommends that you run the Broker on the
dedicated host computer to ensure optimal performance.
Guaranteed Documents
The maximum document size of a guaranteed document type is restricted to the size of
the log file (which is configurable) and the amount of virtual memory (which is divided
by 3 due to internal buffering).
Volatile Documents
You can publish volatile documents of an unlimited size up to the smaller of available
swap or the Broker’s volatile storage limit (restricted only by the available memory).
Deleting Brokers
You can permanently delete a Broker and all its Broker client, client group, and document
type information using Broker Administrator or the broker_delete command on the
command line.
If you want to work from the command line, rather than from Broker Administrator,
you can use the broker_delete command to delete a Broker. Refer to
“broker_delete” on page 256 for instructions.
Name Limitations
There are character limitations for Broker component names. The table below lists the
Broker component by name, the maximum length in bytes, and other rules and limitations
for naming.
Uninstalling Applications
At times you may need to uninstall a webMethods Broker application that did not
uninstall properly. When this happens you need to delete the Broker client and client
groups associated with the application.
For information about how to delete Broker clients or Broker client subscriptions, refer to
“Controlling Clients” on page 124.
For information about deleting client groups, refer to “Assigning “Can Publish” and “Can
Subscribe” Permissions” on page 100.
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Overview
webMethods Broker Server and Brokers maintain a set of system configuration data.
Broker Server configuration information includes:
Broker Server description
Logging configuration
SSL configuration
Access Control List
Broker configuration information includes:
Broker description
Document type definitions
Client group definitions
Territory information
Gateway information, including shared document types
Access Control Lists for client groups, territories, and territory gateways
This information also describes the configuration of a webMethods Broker system that can
contain multiple territories and the gateways that connect them.
When creating new Broker Server or Brokers, it may be more convenient to copy the
configuration data from an existing Broker Server or Broker instead of manually entering
the configuration data. This is especially true when migrating Broker Server and Broker
configuration data between different environments (e.g., from Test to Production).
There are two ways to copy the system configuration data between Broker systems:
The Clipboard feature of the Broker Administrator
For point-in-time recovery, e.g., from user configuration error, use the ADL file export
capability. You should export your system configuration before you make any
configuration changes. However, the ADL file does not capture Broker territory and
gateway configuration information, therefore it is not possible to recover from
configuration errors in territory and gateway configurations using the ADL file.
This chapter describes how to copy Broker system configuration data for the purpose of
migrating system configuration between different environments and how to save Broker
system configuration data for the purposes of disaster recovery and point-in-time
recovery.
Feature Description
Clipboard feature of The clipboard feature allows you to copy information from one
the Broker Broker to another without using ADL files. This method is easier
Administrator and faster, but you can only use it to copy information between
Brokers that are viewable from the same Broker Administrator.
Use this feature to:
Export all components or only a subset of components (for
example, only document types, or only client groups)
between machines that you know are viewable from the same
Broker Administrator.
Deploy multiple Brokers.
For more information, see: “Using the Clipboard Feature of the
Broker Administrator to Copy” on page 77.
Feature Description
Broker command Use the broker_save command line tool to export Broker
line tools: information from one Broker into an ActiveWorks Definition
broker_save and Language (ADL) file. You can then use the broker_load
broker_load command line tool to import the information/ADL file into
another Broker.
Use this feature to:
Script the import /export process, especially when moving
through different environments.
Take regular scripted backups of metadata in your production
system
Process very large .adl files; the commands require less
memory than the import/export feature in the Broker Admin
UI.
For more information, see: “Using Broker Command Line Tools to
Copy” on page 77.
Export/Import Use this feature to perform export and import functions using
feature of the ADL files, but more conveniently than with the command line
Broker tools. In addition, you have the option of copying subsets of
Administrator information.
Use this feature to:
Export only a subset of components (for example, only doc
types or only client groups) to an ADL file.
Save an ADL file to disk, but do not want to use the
commands. For example, you could store this file in a source
code control system and move the file to a different machine
at a later date, when you move from a development
environment to a QA environment.
Copy information between machines that are not be on the
same network/not visible from the same Broker
Administrator, i.e., Brokers that reside on different Broker
Administrators.
For more information, see: “Using the ADL Export/Import Feature of
the Broker Administrator to Copy” on page 78.
3 From the Information page for that Broker, Client Group, Client, or Document Type,
click Copy component Information to Clipboard, where component is Broker, Client Group,
Client, or Document Type.
Navigate to the Broker to which you want to copy the information. Select the Information
page of the Broker, Client Group, Client, or Document Type to which you want to copy
the information and click Paste component 'component_name' to current Broker.
Note: Whenever you stop the Broker Server, you will lose volatile documents in all
queues.
2 Make a copy of the contents of the Broker Server data directory, for example,
C:\webMethods\Broker\data\awbrokers65\default\Broker.qs.stor.
3 Restart the Broker Server. See “Stopping and Starting a webMethods Broker Server”
on page 61 for instructions.
For more information about exporting and using the broker_save and broker_load
commands, see “broker_save” on page 260 and “broker_load” on page 257.
Select... To...
Export Document Types Export indicated number of document types from the
selected Broker.
Export Client Groups Export indicated number of client groups from the selected
Broker.
Export Clients Export indicated number of clients from the selected Broker.
Note: If the information you are copying includes an SSL configuration, you are
prompted for the certificate file password.
Note: To unzip the error log file on Windows systems, you can use any archive utility
available for Windows. On UNIX systems, use the Gzip data compression program.
Note: If you are copying Broker Server information to an ADL file for backup
purposes, you can stop here.
11 Open the Broker Server Information page of the target Broker Server.
12 Click Import From File.
13 In the Filename field, enter the path and name of the .adl file or click Browse to navigate
to the .adl file.
14 Click Upload.
15 Select one or more of the options in the What to Import Step 2 dialog box.
Select... To...
If the configuration does not contain information of a certain type (for example,
Broker Server configuration), that option is unavailable.
16 Click Proceed to Step 3.
17 Select one or more of the options in the What to Import Step 3 dialog box.
Select... To...
To select a subset of any of these options, click Change Selection. By default, all
elements of each option are selected for import. Clear the check boxes of the elements
you do not want to import, then click Submit Changes.
Note: If the import file contains a new SSL configuration, you may need to stop and
restart the Broker Server for the configuration to take effect. If the import file does not
contain the password for the certificate file, you are prompted for it. For more
information, see “Backing up Broker SSL Certificate Files” on page 89.
Important! The Import from File option divides large files into 2MB pieces. The pieces are
then imported sequentially to the Broker and reassembled. If an error occurs during
this process, some document types may still be loaded; that is, the file may be
partially loaded if there is an error and the Broker is left in a partially updated state.
Platform independent Includes Unicode escape characters (the default). The file
can be exported to other hosts without regard to machine
type or language.
Native (locally editable) Does not include Unicode escape characters. The file can
only be used on hosts of the same type and which use the
same language and encoding.
The use of Unicode escape characters makes it possible to export Broker and Broker
Server configuration among hosts that use different languages (and sometimes to
different types of host machine that use the same language). If you want to read or edit
the configuration file, however, the escape characters can make such tasks difficult.
If your language uses an expanded character set and you want to read or edit the Broker
or Broker Server configuration file, you should save it in native format. Doing so means
that you can only export the file to another host of the same type that supports the same
language as the one on which you created the file.
In English, or other languages that do not use an extended character set, always use the
platform-independent file format to save an export file.
3 Back up and restore of the Broker Disaster recovery of Broker and Broker
Server's combined data storage using Server configuration data when using
the file system's copy command. combined data storage.
Broker B Broker D
Broker A Broker C
To export the entire system, you must export a separate configuration file for each Broker
and each Broker Server. Therefore, in the sample configuration in above, there must be
configuration files for each of the following:
Broker Server Alpha
Broker A
Broker B
Broker C
Broker D
1 Stop the Broker Server. See “Stopping and Starting a webMethods Broker Server” on
page 61 for instructions.
Note: Whenever you stop the Broker Server, you will lose volatile documents in all
queues.
2 Make a copy of the contents of the Broker Server data directory, for example,
C:\webMethods\Broker\data\awbrokers65\default\Broker.qs.stor.
3 Restart the Broker Server. See “Stopping and Starting a webMethods Broker Server”
on page 61 for instructions.
For more information about the broker_save command line tool, see “broker_save” on
page 260.
Note: If you run webMethods Broker in a language that uses an extended character set,
the Unicode escape characters may make configuration files difficult to read. See
“Configuring webMethods Broker Servers from the Command Line” on page 55.
1 For each Broker Server that you are going to restore the system configuration for,
import the Broker Server ADL file using one of these tools:
2 For each Broker that you are going to restore the system configuration for, import the
Broker ADL file using one of these tools:
If the configuration contains any gateways, take note of warnings that indicate that
the other side of the gateway is not yet available.
3 Re-import any Broker configuration files that gave warnings during the previous
step, using the same order as before.
You should not receive any warnings during this step.
Important! You must have your Broker Server configured with separate storage sessions in
order to use the Broker Server's online configuration data backup command line tool. This
is the default storage configuration for new installations of webMethods Broker 6.5. For
more information about the server_config create command line tool, see page 237.
When you backup your Broker Server's configuration data storage, you should save the
backup copy of the Broker Server configuration data storage in a location other than a
webMethods Broker host. That way, if the disks ever fail on the Broker Server host, the
backup copies are still safe. You should also save a copy of the awbroker.cfg residing in
the Broker Server's data directory on a regular basis.
Note: For disaster recovery, you should back up your Broker Server's configuration data
storage immediately after you have made any configuration changes.
Broker B Broker D
Broker A Broker C
To produce a consistent set of backups of the configuration data storage for the entire
system, you must back up each Broker Server. Therefore, in sample configuration in
above, you should back up the following:
Broker Server Alpha
Important! It may be impractical for you to back up your entire system if you have many
Broker Servers. However, it is critically important that you back up all of the Broker
Servers that have Brokers in a same territory immediately after you have made a
configuration change to one or more Brokers in that territory.
Note: The server_conf_backup command line tool is an online backup tool designed to
be used with a running Broker Server.
Important! Regardless of the condition of the Broker Server's run-time data (corrupted or
uncorrupted) storage, the backup/restore feature only aids in the recovery from Broker
Server's configuration data storage corruption. It is highly risky to restore the Broker
Server's configuration data storage without removing its run-time data storage because
of potential data inconsistencies between the two storage sessions. You should remove
the Broker Server's run-time data storage either before running the
server_conf_restore command or after running the server_conf_restore command
and before restarting the Broker Server.
Important! Always stop the Broker Server before backing up; otherwise, the backup could
be corrupted. Refer to section “Stopping and Starting a webMethods Broker Server” on
page 61.
To backup the Broker Server data directory for combined storage session
1 Stop the Broker Server. See “Stopping and Starting a webMethods Broker Server” on
page 61 for instructions.
Note: Whenever you stop the Broker Server, you will lose volatile documents in all
queues.
2 Make a copy of the contents of the Broker Server data directory, for example:
C:\webMethods\Broker\data\awbrokers65\default\Broker.qs.stor
3 Restart the Broker Server. See “Stopping and Starting a webMethods Broker Server”
on page 61 for instructions.
Note: Backing up the Broker Server files when there are guaranteed documents in
client queues is not recommended because these documents will be re-sent again
when the data files are restored.
To restore the Broker Server data directory for combined storage session
1 Stop the Broker Server. See “Stopping and Starting a webMethods Broker Server” on
page 61 for instructions.
Note: Whenever you stop the Broker Server, you will lose volatile documents in all
queues.
2 Copy the backup files of the Broker Server back to the Broker Server data directory,
for example, C:\webMethods\Broker\data\awbrokers65\default\Broker.qs.stor
3 Restart the Broker Server. See “Stopping and Starting a webMethods Broker Server”
on page 61 for instructions.
Note: The use of the file system copy command to back up and restore Broker Server data
storage is not recommended. If the Broker Server configuration data storage backup and
restore are important to your operation, you should consider upgrading to a separate
storage session configuration.
There is no direct path to convert from a combined storage to a separate storage
configuration. If you would like to take advantage of the Broker Server online
configuration data storage backup and restore feature, you must create a new Broker
Server with separate configuration and run-time data storage sessions and populate the
new Broker Server with ADL files exported from the existing Broker Server. For more
information, see the webMethods Broker Upgrade Guides.
Property Description
Client Group description A one-line description of the client group, to be displayed in
Broker Administrator main window.
Broker Client lifecycle Determines what the Broker does with a Broker client’s state
when the Broker client disconnects. There are two types of
life cycles:
Explicit destroy and
Destroy on disconnect.
See “Life Cycle Properties” on page 95.
Client queue storage type Determines how safe the documents in a Broker client’s
queue are. Storage type also affects how quickly a Broker
can process documents. See “Client Queue Storage Types”
on page 95.
Encryption level None
U.S. Domestic, which is 128-bit/1024-bit encryption
Queue
Storage Type Description
Guaranteed The safest, but slowest type of storage. This storage type is suited for
storage documents that you cannot afford to lose. Documents are written to
disk using a logged commit. Guaranteed storage has a fixed,
pre-allocated size that can only be changed while the Broker is stopped;
how large a portion depends on the document flow and size of
documents. The default guaranteed storage size is 32MB per transaction
and 512MB. You can increase the storage size by adding new storage
files, see “server_config storage” on page 248.
Persistent Broker versions 5.0 through 6.5 automatically upgrade all Persistent
storage documents to Guaranteed; all Persistent documents are treated as if
they are Guaranteed.
Volatile The least safe but fastest type of storage. This storage type is suited for
storage documents that have a short life or are not critical. Documents are not
written to disk; they are only stored in memory. All documents of a
volatile document type and documents in a volatile client queue are lost
when the Broker is shut down or when the computer restarts.
Factors Limitations
Document size Limited to the lesser of:
1GB with a transaction size of 1GB
The size of the log file, which can be increased using the
server_config program (see “server_config storage” on
page 248 for more information)
The amount of virtual memory available on the Broker host
(divided by 3 due to the internal buffering)
Total storage Dependent on Broker hardware
available
The Client Groups on Broker page appears, displaying the list of client groups and
their descriptions. The information and statistics in Client Groups on Broker page are
as follows.
Information Description
3 Click a client group name to view additional information and statistics. The
information and statistics on the Client Group Information page are as follows:
Information Description
Information Description
Log publish types Displays the number of document types that Broker clients in
the client group can log when published. Click this number to
list all document types. See “Assigning Log Publish and Log
Acknowledge Types” on page 102.
Log acknowledge Displays the number of document types that Broker clients in
types the client group can log when received. Click this number to
list all document types. See “Assigning Log Publish and Log
Acknowledge Types” on page 102.
If you select Destroy on Disconnect, the queue storage type is automatically Volatile. If
you select Explicit Destroy, you need to select the queue storage type. See “Life Cycle
Properties” on page 95 for details about client group life cycle properties.
7 Select the queue storage type (if you selected Explicit Destroy life cycle) from Queue
Storage Type field.
8 Click Create.
Once the client group is created, you can configure Can Publish and Can Subscribe
permissions. See “Assigning “Can Publish” and “Can Subscribe” Permissions” below.
Note: A Broker delivers a document only to Broker clients that have subscribe permission
to it. A delivered document is addressed to just one Broker client.
6 Select the document types you want to add, then click Add.
The document types you selected now appear in the Can Publish Document Types list.
To remove a document type from a Client Group’s Can Publish and Can Subscribe lists
To add document types to a client group’s Log Publish Document Types lists
To add document types to a client group’s Log Acknowledge Document Types lists
Note: Each client group’s document folder contains client groups that come with the
webMethods Broker system: adapters, admin, and accessLabelAdapter. You cannot
delete these client groups. The Delete option is disabled when these client groups are
selected.
Note: You cannot delete a client group if Broker clients in the group are connected to the
Broker. You must delete the Broker clients before deleting the group.
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Overview
This chapter describes how to manage document types and measure system activity. For a
brief overview of document types, see “Document Types” on page 19. For more
information about developing document types and document folders, refer to Publish-
Subscribe Developer’s Guide.
Publish documents and check the document type’s publish and retrieve statistics to
ensure that the Broker client subscriber actually received documents
Note: The maximum number of document types that a Broker can support is 65533.
The Document Types page lists the following information about all document types
that exist in the current Broker.
Information Description
3 On the Document Types page, click the name of the folder/document type for which
you want to display document type information. If the document type is stored in a
folder, continue clicking until you reach the document type you want to display.
The Document Type Information page displays the following information.
Information Description
Information Description
Validation Full. All fields must be defined in the document type and
all fields must match the document type definition. New
fields cannot be created in the published document.
Open. Fields that are defined in the document type must
match the document type definition. Fields can be
present in the published document and not be checked.
None. No validation for published documents.
See “Document Type Validation” on page 110.
Fields The data fields of a document. See “Data Field Information”
on page 111.
Infosets For pre-6.0 Brokers only. The infosets that help to define the
use of the document type.
Note: To perform any editing task in the Broker Administrator, you must have the
appropriate permissions. See “Setting Up Broker Administrator Permissions” on page 32
Note: The Broker Server automatically upgrades Persistent storage types to Guaranteed.
3 On the Document Types page, click the document type whose time to live attribute
you want to change. If the document type is stored in a folder, continue clicking until
you reach the document type you want to change.
4 On the Document Type doctype page, click Change Time to Live.
5 On the Change Time to Live page, in the Time to Live field, enter the number of seconds
you want the Broker to keep a document. Enter “0” if you do not want the Broker to
delete the document before a Broker client retrieves it.
6 Click Save Changes.
Note: This is the strictest form of validation and can affect performance because the
Broker must check each and every document type field.
Open. Fields that are defined in the document type must match the document type
definition. Fields can be present in the published document and not be checked.
None. No validation for published documents.
Using the Broker Administrator you can change the level of validation or disable
validation for published documents altogether.
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
Overview
This chapter describes how to view, manage, and monitor Broker clients. For information
about creating and naming Broker clients, refer to the appropriate programming interface
manual.
Information Description
Client ID The Broker client’s unique ID. Either the user or the Broker assigns
this ID at the time the Broker client is created.
Application Name The name of the application that describes the Broker Client. The
user assigns this name at the time the Broker client is created.
Group The client group the Broker client belongs to.
Information Description
Client Filters
You can apply filters to the list of clients on the Clients page. In the Client Filter pulldown,
select a filter type, then click Refresh Display to update the screen with the new filter
settings.
The default filters are described on page 33. You can also create a custom filter by clicking
Modify Filters.
Group Filter according to the client group to which the Broker client
belongs.
Connection Status Filter clients by connection status. You can filter clients that are
currently connected to the Broker, not connected, or both.
Tip! If you do not want to show clients with a particular substring, use the logical
negation operator symbol “!” in front of the filter rule. For example, if you do not
want to show clients from the XYZ client group, you would enter “!XYZ” in the Group
field.
You can create one or more filter rules for each client filter. Create a client filter with
multiple rules to show clients that contain all of the query terms. For example, you
can create a client filter to show only the clients that are an “IntegrationServer”
application and belong to client group “Admin.”
5 Click Save Changes.
ID The Broker client’s unique ID. Either the user or the Broker
assigns this ID at the time the Broker client is created.
Application Name The name of the application that describes the Broker client.
This name is assigned by the developer at the time the
Broker client is created.
Broker Displays the name of the Broker
Subscriptions Displays the number of subscriptions for the client.
The connections ID
Forced Reconnect For 5.x Brokers and later. Specifies whether a Broker client
can reconnect to a Broker even when (at least from the
Broker's perspective) a connection already exists. This might
happen if you disconnect the machine on which a Broker
client is running, then reconnect it. The Broker might not
recognize that the connection was broken. With Forced
Reconnect set to False, the Broker will reject the
reconnection request. With Forced Reconnect set to True,
the Broker will break the existing connection and create a
new one, allowing the client to reconnect.
Queue is Locked no The queue for the Broker client is open and
documents are flowing as normal.
yes The queue for the Broker client is locked.
Note that when a queue is locked, you cannot
delete the Broker client.
For information about queue management,
see the appropriate programming interface
manual.
Lock Held by Client ID The client ID that established the lock.
Lock Held by Client The session number of the locked client.
Session
Lock Held Since The duration of time the queue lock has been established.
Access Label If the client has an access label, the contents of the label.
User Name If SSL is enabled for the client, the distinguished name used
in the client’s certificate.
If a client is created on the Broker over an authenticated SSL
connection, the Broker records the client's owner along with
the client. The owner is identified by the combination of
User Name and Authenticator Name. Clients that have an
owner only allow future reconnection from processes that
authenticate as the same user.
Authenticator Name If SSL is enabled for the client, the distinguished name of the
Certification Authority that issued the certificate.
Information Description
Client Queue Length The number of documents in the client queue that are ready
for the Broker client to retrieve.
Client Queue Size The size of the client queue in bytes.
Last Queued The last time a document was placed in the client queue.
Last Retrieved The time the Broker client last retrieved a document from its
queue.
Last Published The time the Broker client last published a document.
Highest Documents in A count of the most documents in the queue for the Broker
Queue client at one time, and the date and time on which it
occurred.
Recent Deliveries The number of documents the Broker client has recently
delivered.
Total Documents The total number of documents the Broker client has
Retrieved retrieved from its queue.
Total Documents The total number of documents the Broker client has
Published published.
Publish Sequence The sequence number of the last document published by the
Number Broker client. For information about sequence numbers, see
the appropriate programming interface manual.
Information Description
ID The Broker client’s unique ID. Either the user or the Broker
assigns this ID at the time the Broker client is created.
Document Type Displays the document type names.
Filter Displays set subscription filters.
To learn how to delete a subscription from a Broker client, see “Disconnecting a Broker
Client” on page 125.
Information Description
Connected From The IP address of the machine and the port from which the
client program session is connected.
ID The session ID. This is a unique number, generated by the
Broker client.
Information Description
For information about a particular session, click that session in the list of sessions to open
the Session’s Information page. The Session’s Information page displays platform and
encryption information for the session you have selected.
The Platform Information table displays information that is set by the Broker client. You
cannot edit this information from Broker Administrator; you can change it only in the
client application program.
Information Description
Adapter Language The programming language of the Broker API used to connect to
the Broker.
Adapter Language Version of the adapter language.
Version
Hardware Hardware on which the broker client runs.
OS Operating system on which the broker client runs.
Information Description
Important! Use this option with care because it will delete documents that the Broker client
not yet processed. If multiple clients are sharing the same client state, invoking this
method can have far-reaching effects.
Controlling Clients
There may be times when you need to control a Broker client that is not behaving
normally. There are several methods you can use to control a Broker client, such as
removing a Broker client subscription, disconnecting one or more Broker client sessions,
or deleting a Broker client.
You may want to remove a Broker client’s subscription to stop the unwanted and
repeated delivery of a document from another out-of-control Broker client. You can
disconnect a misbehaving Broker client from the Broker without destroying its queue or
documents as long as it does not have a Destroy on Disconnect life cycle. You may want to
delete a Broker client, rather than just disconnecting it, if it did not disconnect from the
Broker when it should have. Deleting a Broker client always destroys its queue, regardless
of the life cycle type.
If you have multiple subscriptions selected at the time you use this command, all of the
selected subscriptions are removed.
Prepared. The transaction has been prepared, but has not yet been committed or
rolled back.
Committed. The transaction is in the process of being committed.
Rollback. The transaction is being rolled back.
Created. The time at which the transaction was started.
Documents published. The number of documents that the transactional client has
published or delivered within the context of this transaction since the transaction
started. (If the transactional client published other documents during this time under
another transactional context, those documents would be reflected in a separate
transaction entry.)
Documents Ack'ed. The number of documents the transactional client has received and
acknowledged within the context of this specific transaction since the transaction was
started. (If the transactional client received other documents during this time under
another transactional context, those documents would be reflected in a separate
transaction entry.)
You may specify an infinite pre-prepare period (i.e., impose no timeout limit) by
setting the pre-prepare timeout parameter to -1.
The post-prepare stage. In the case of a transaction that uses a two-phase commit, the
post-prepare stage refers to the period from the receipt of the prepare request until
the initiation of the commit or roll back request. In the case of a single-phase commit,
this timeout does not apply. If a transaction exceeds the specified timeout period, the
Broker executes a commit or roll-back operation on behalf of the client and terminates
the transaction. Whether the Broker executes a commit or a roll back depends on the
way in which you configure the Broker’s post-prepare timeout action parameter. The
default is to commit the transaction.
The post-prepare timeout parameter does not apply to single-phase transactions.
You may specify an infinite post-prepare period (i.e., impose no timeout limit) by
setting the post-prepare timeout parameter to -1.
5 Select the Recover Mode that you want, then click Save Changes. The new recover mode
setting will apply to XA transactions.
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Territories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Overview
This chapter describes territories and territory gateways, and shows you how to use
Broker Administrator to view and control them.
Each territory contains one or more Brokers and is essentially managed as a single entity.
In many ways, a territory acts as a single Broker that spans multiple hosts because all
Brokers in a territory are directly connected to all other Brokers in that territory and share
that configuration. As a result, a client on one Broker can communicate with a client on
another Broker in that same territory even though they are not directly connected to the
same Broker. Territory gateways are used to provide control over documents that pass
from one territory to another, and therefore allow clients to communicate even though
they may not be part of the same administrative domain.
Territories
The Broker-to-Broker feature allows communication among two or more Brokers. This
Broker-to-Broker communication allows applications and adapters to be spread around
your company and still communicate with each other.
When using the Broker-to-Broker feature, Brokers join a territory. All Brokers in a territory
share the same document types and client groups. This shared view of data and semantics
makes communication between client applications possible.
Each Broker communicates directly with every other Broker in its territory, as shown in
the following diagram. This direct connection ensures the fastest communication between
Brokers.
An Example Territory
Client 3
Broker D
Broker B Client 4
Client 1
Broker A
Client 2
Broker C
In the diagram above, the application Client 1 can communicate not only with Client 2 on
the same Broker, but also with Clients 3 and 4 on Broker D.
Operations on document types and client groups affect all Brokers in the territory.
Territories
All Brokers in a territory share the same client groups and document types. In effect,
they appear to operate under a single configuration.
Within a territory, documents published on one Broker can be sent to other Brokers
because they are delivered there or because a client on another Broker has a matching
subscription.
You cannot merge territories. To create a single territory where two existed before, the
Brokers in one territory must leave it and then join the second territory.
A territory cannot be empty. To create one, you must find a Broker that does not
belong to any other territory.
Security
Within a territory, either all Brokers use SSL or no Brokers use SSL (i.e., in a territory,
SSL must either be enabled for all Broker Servers or disabled for all Broker Servers).
You cannot mix SSL servers and non-SSL servers in the same territory.
When using SSL, each Broker uses its Broker Server’s SSL configuration for outgoing
connections and for accepting incoming connections.
Clients
Brokers in a territory do not share clients. Although a territory appears to be managed
like a single mega-Broker, each client keeps its queue, and other state information, on
a single Broker.
Because clients are not shared by Brokers, operations on a specific client work only if
the Broker actually hosts the client.
Unique Names
The follow conventions relate to the use of names.
Each Broker on a Broker Server must have a unique name.
Each Broker in a territory must have a name that is unique among Brokers in that
territory.
Territories joined by gateways must all have unique names.
There is no restriction on the uniqueness of names for territories not joined by
gateways. It is possible to have two territories on the same host, both named
“Territory 1.” However, this naming scheme is not recommended. Although having
two territories with the same name on a single host is not a problem for the system, it
can be confusing to users.
Managing Territories
The following sections describe how to create territories and how to make Brokers join
and leave territories. Use Broker Administrator to create, join, and leave territories, and to
display detailed information about a territory.
Creating a Territory
To create a new territory, you must have a Broker that does not belong to any other
territory. You can find Brokers that are not part of a territory by looking at the Brokers
page, as shown below. If a Broker is part of a territory, the name of the territory is listed in
the Territory column.
Territory Column
(this Broker is part of the A Territory)
Note: You should assign static IP addresses and fixed hostnames for any host with a
Broker Server that is used as part of a territory or has gateways.
To create a territory
Recent Deliveries The document traffic on the Broker for the last X minutes.
Where X is the time interval between statistical polls. The
default value is 1 minute. To change the default setting, see
“Viewing and Changing Connection Settings” on page 32.
Gateways Lists the gateways to Brokers in other territories.
3 To learn more about a territory, click on its name in the Territories column.
The Territory Information page displays information that describes the relationships
of the current Broker with other (remote) Brokers in the territory. The Territory
Information page contains the following information.
Joining a Territory
You use Broker Administrator to join Brokers to territories, one at a time. For a Broker to
be eligible to join a territory, it must not currently be a member of any other territory. You
should assign static IP addresses and fixed hostnames for any host with a Broker Server
that is used as part of a territory or has gateways.
Note: When creating a territory with Brokers on differing operating systems, you must
take an important step to ensure a reliable connection between the Brokers. When you
create the territory, you should join the Broker with the different operating system first.
Then, you can add all other Brokers to the territory.
For example, if you want to add a Broker from a Windows system to a Solaris Territory,
you would first add the Windows Broker followed by the Solaris Brokers.
To join a territory
Leaving a Territory
To leave a territory
Territory Gateways
A territory gateway is a connection between two territories, allowing the transfer of
documents between the territories. One Broker in each territory is designated to
communicate with a companion Broker in the other territory. Each of the two Brokers,
referred to as gateway Brokers, belongs to its own territory, but can share document types
with its companion Broker across the gateway. There can be only one gateway between
any two territories; however, a gateway Broker in one territory can communicate with
gateway Brokers in multiple territories.
Each gateway Broker is configured and maintained independently. By controlling publish
and subscribe permissions and security across the gateway, it is possible to create a
firewall between territories. In this way, it is possible to connect territories having
differing security needs or territories belonging to different companies.
A set of territories connected by gateways forms a graph. The graph cannot have cycles; a
path that traverses the graph should not be able to return to its beginning. Visually, an
acceptable graph looks like a tree. A graph that crosses the boundary between two
administrative domains is shown in the figure below. With the correct permissions set at
each territory gateway, Broker clients 1 and A can communicate with each other.
A Territory Graph
A territory
gateway
Territory 2 Territory B
Territory 4
Territory 1 Territory A
Territory C
Territory 3 Client A
Client 1
Firewall between
Territory 5
administrative
domains
Note: You should assign static IP addresses and fixed hostnames for any host with a
Broker Server that is used as part of a territory or has gateways.
Note: Gateway creation will fail if the two territories have incompatible versions of the
webMethods Broker software.
Use the following general steps to configure a gateway. You must perform these steps on
both Brokers participating in the gateway.
To configure a gateway
1 Create the gateway independently on each side of the territory.
To configure a Broker to participate in a gateway, you must provide the name of the
remote territory, the Broker Host and port number of the remote Broker, and the
remote Broker’s name. If any one of these items is incorrect, you cannot create the
gateway. Even after you have configured both Brokers to participate in the gateway, a
connection does not yet exist through the gateway. See “Creating the Gateway (Both
Brokers)” on page 154 or “Creating the Gateway (One Broker)” on page 157 for
detailed instructions.
2 Optionally, configure gateway security.
Set the security parameters on each gateway Broker and check that a secure
connection can be established. For information about setting up SSL support across a
territory gateway, see “Using SSL Across Territory Gateways” on page 180.
Note: It is not necessary to configure the gateway for SSL support before proceeding
on to Step 3. You can perform this step last as long as the owners of both sides of the
gateway perform the steps in the same order.
[...]
If you know that the remote Broker is in the same territory as the delivering Broker, then
you can omit the territory:
bc.deliver( “//OtherBroker/:publish”, event);
If the delivering client is on Broker Q1, which is in the same territory as Broker Q2 and
Broker Q4 and the target remote Broker Q3, then Broker Q2 and Broker Q4 will not
receive the published document. Only the clients of Broker Q3 will receive the published
document. (See the following diagram.)
A Broker Territory
Broker Q1
Broker Q4
Broker Q3
Broker Q2
If the remote Broker is on the other side of a gateway, then the behavior varies slightly, as
summarized in the table below.
Broker Examples
The following examples are based on the Brokers and territories shown in the Broker
Territories diagram. The first letter of the Broker’s name indicates its territory.
Broker Territories
A Territory Gateway
Broker W1
Broker X1
Broker W3 Broker Y1
Broker W2
case). If territory Z had more Brokers and gateways, they would also receive the
document.
Note: A document using remote publish will look like a delivered document until it
reaches the target Broker. Trace documents and activity traces will record the document
as a delivery. The remote publish trace on the target Broker will also record the
document as a delivery, but the enqueue traces will look like a publish occurred.
Brokers are Linked Yes Brokers are connected and able to exchange
documents.
No One or both Brokers are not available.
Status Active The gateway is active.
Paused The gateway has been paused. When a
gateway is paused, it stops all outbound
traffic. The Broker Administrator shows the
name of the session and Broker client that
paused the gateway.
Keep Alive Interval time_interval How often (in seconds) the Broker sends
Keep Alive Events over the Gateway to
prevent the firewall from disconnecting what
it considers to be an idle connection.
If a time interval of 0 has been specified, this
field displays “disabled”. The default is
“disabled.”
Local Documents Waiting Number of documents in queue waiting to be published.
Local Broker: Name Name of the local Broker. Click to open the
Broker Information page.
Description Description of the local gateway Broker.
Connected The status of the connection between the
Broker and the Broker Server.
Territory Name of the territory to which the local
Broker belongs. Click to open the Territory
Information page for this Broker.
Recent Number of documents received by the
Receipts remote Broker. The amount of time between
updates is specified on the Connections page.
Total Receipts Total number of documents received during
lifetime of the Broker.
Last Receipt Date and time of last receipt.
Remote Broker: Name Name and Broker Host of the remote Broker
on the other side of the gateway. Click to
open the Broker Information page.
Description Description of the remote gateway Broker.
The status of the connection between the
Connected Broker and the Broker Server.
Territory Name of the territory to which the remote
Broker belongs. Click to open the Territory
Information page for this Broker.
Recent Number of documents received by the
Receipts remote Broker. The amount of time between
updates is specified on the Connections page.
Total Receipts Total number of documents received during
lifetime of the Broker.
The Shared Document Types page displays the Can Subscribe and Can Publish
information for the remote Broker. From this page you configure the document types to
which the remote Broker can subscribe and publish. See “Configuring the Shared
Document Type List (Both Brokers)” on page 155 for instructions.
The Shared Document Types page displays the following information.
Remote Broker Can
Subscribe Statistics Explanation
3 Click Pause Gateway to pause activity on the Gateway or Resume Gateway to resume
activity on the Gateway.
Note: The static gateway forwarding feature is only supported on a webMethods Broker
6.5 (or Version 6.1 Service Pack 4 and later). This means that the gateway Broker on which
the static forwarding option is applied to must be a Version 6.5 of Broker. The Broker(s) on
the other end of the gateway can be of any version.
In addition, you cannot enable static gateway forwarding on a Broker that is either not in
a territory or does not have a gateway to the specified remote territory.
4 To disable static forwarding, select Disable and then click Set Static Forwarding.
5 To check that static forwarding is disabled, click Details... again and verify on the Static
Gateway Forwarding dialog box.
Note: Small values, such as 1 or 2 seconds, will generate excessive network traffic. Check
your firewall configuration to find a reasonable value for this interval.
You can confirm the connection by making sure that both of the Brokers you have
chosen to participate in the gateway are visible from the Broker Administrator. There
are a number of ways to do this.
One approach is to use just the Navigation panel. Adjust the display so that you
see the Broker Servers and all the Brokers under them. If the two gateway Brokers
are shown, then they are connected to the Broker Administrator.
An alternative approach is to navigate to the Broker Server page for each Broker
Server and make sure the gateway Broker is displayed there. See “Adding a
Broker Server to Broker Administrator” on page 45 for instructions.
3 Open the Territory Information page of one of the territory Brokers. See “Viewing
Territory Information” on page 139 for instructions.
4 In the Territories list, select the Broker you have chosen to be the local gateway Broker.
5 Click Create a Territory Gateway.
6 Under Local Territory on the Create a Territory Gateway page, select Create both Sides of
Gateway.
7 In the Remote Territory box, select the name of the remote territory and the remote
gateway Broker.
8 Click Create.
Both sides of the gateway are created. Now you can configure the document types to
which the remote Broker can subscribe and publish. See “Configuring the Shared
Document Type List (Both Brokers)” below for instructions for sharing document
types between Brokers.
4 In the Add Document Types table, select one or more document types and click Add.
You are given the option of setting up shared document types permissions on the
other side of the gateway or updating only the current side.
5 Click Yes or No, then click Update to synchronize the document types.
Broker Administrator synchronizes the Shared Document Type list on the two gateway
Brokers, as shown in the next figure. For example, for each document type listed in
the Remote Broker Can Subscribe panel for Broker A, Broker Administrator places
that document type in the Remote Broker Can Publish panel of Broker B.
If there is no matching document type on the remote Broker, or if the document types
are not identical, Broker Administrator cannot synchronize the shared document
type.
1 Open the Shared Document Types page. For instructions on opening the Shared
document types page, see “Displaying the Shared Document Type List” on page 151.
2 Click Hook Up Client Groups.
3 Select one or more client groups and click Add.
4 You have the option of setting up shared document types permissions on the other
side of the gateway or updating only the current side.
Click Yes or No, then click Update to synchronize the document types.
Broker Administrator populates the shared document type list of both Brokers,
assigns Can Publish and Can Subscribe permission to all document types, and then
synchronizes the document types across the gateway.
Because Broker Administrator has performed some of the configuration
automatically, you should examine the permissions lists for both gateway Brokers in
case you want to adjust the selection. Once you have synchronized the shared
document types for both Can Publish and Can Subscribe permissions, the territory
gateway is ready for traffic.
Important! If you control only one side of a territory gateway and find it necessary to
remove the gateway, there is no simple method to restore the connection. To restore the
gateway, you need to recreate the Can Subscribe and Can Publish lists for the remote
Broker.
Filtering Documents
As mentioned above, a filter string specifies criteria for the contents of a document. For
example, assume that a document contains a person’s age and state of residence. The first
document field has the name age and the second has the field name state. The following
filter string matches only those documents whose age field is greater than 65 and whose
state field is equal to FL.
age > 65 and state = "FL"
In this example filter string, age and state represent document fields. This filter also
contains an arithmetic constant 65 and a string constant "FL". The boolean operator and
combines the field criterion for age and state.
Other example filter specifications are as follows:
debt > salary*0.50
packaging = "portable" and price > 5000
answer = ’Y’ or answer = ’y’
(answer = ’Y’) or (answer = ’Y’)
Combine document field comparisons using the boolean operators and, or and not.
Filter Rules
Filter strings must adhere to the following rules:
Field names can be fully qualified, such as:
struct_field.seq_field[2]
Filter Operators
The following tables contain the various operators that you can use to create filters. For a
more complete list of operators, see the appropriate programmer’s reference manual.
Note: The Integration Server and Developer use different filter syntax for subscribing to
publishable documents. See webMethods Developer User’s Guide for more information.
&&
And
and
||
Or
or
Note: Logical filter operator expressions are evaluated in a method similar to SQL
expression evaluation, in that all operators are always evaluated. When a logical filter
operator expression contains multiple operators, operator precedence determines the
sequence in which the operations are performed. For example, when evaluating the
expression “A OR B”, both “A” and “B” are evaluated, even if “A” evaluates to a true
value.
Note: Implicit type conversion occurs when operands in an arithmetic operation have
different types. The operands are converted to a larger value before the comparison
occurs. Type char is considered numeric, but boolean is not.
== Equal to
!= Not equal to
Note: webMethods Broker is not compatible with products that use the DSA encryption
algorithms for SSL, such as Java version 1.1 from Sun Microsystems, Inc.
The public key is part of a certificate, which is a digital document verifying that a public
key belongs to a given entity. In addition to the public key, the certificate contains a
distinguished name and information about the issuer of the certificate. A keystore is a file
that contains private keys and public certificates. The webMethods Broker keystore file
format is proprietary and password-protected. Certificates are issued by a Certification
Authority, a trusted central organization that attests to the identities of those to whom it
issues the certificates.
The choice of a Certification Authority depends on the needs of your organization. You
can subscribe to digital certificate services or you can create a Certification Authority
within your own organization using third-party software products.
Use SSL; only the Broker Server has a certificate (provides Broker Server
authentication and optional encryption).
Use SSL; both the Broker Server and the client application have certificates (provides
Broker Server and client authentication, and optional encryption).
The client application determines whether or not communication is encrypted. Also,
the Broker’s client groups can require the use of encryption.
Trusted Roots
Certificates issued by a Certification Authority are usually associated with an
Authentication Server. It is possible to check whether any issued certificate is valid by
contacting the appropriate Authentication Server. Unless you run your own
Authentication Server, this form of authentication requires a constant Internet connection.
To remove the need for an Authentication Server, webMethods Broker uses a concept
known as a trusted root. A trusted root is a special certificate belonging to a Certification
Authority. This special certificate contains the Certification Authority's public key, and
must be well-known and trusted. Your other certificates are themselves encrypted using
the Certification Authority's private key in such a way that the certificates can be
validated. There is one trusted root for each Certification Authority that issues certificates.
The validation is done using the special trusted root certificate. A given company may
have multiple Certification Authorities, each with a different trusted root.
For the client to authenticate the Broker Server, the client needs access to the keystore
containing the Broker Server certificates’ trusted root so the client can validate the Broker
Server’s certificate.
Note: A keystore is a file that contains private keys and public certificates. The webMethods
Broker keystore file format is proprietary and password-protected.
For the Broker Server to authenticate the client, the Broker Server needs access to a
certificate file that contains the client certificates’ trusted root so that the Broker Server can
validate the client’s certificate.
Distinguished Names
A distinguished name is that portion of a certificate that identifies either the owner of the
certificate or the issuer of the certificate. If the distinguished name identifies the issuer, it
is a trusted root, described in above in “Trusted Roots”. The table below shows the fields
that make up a distinguished name.
Tag Field
CN Common Name
OU Organizational Unit
O Organization
L Locality
ST State or Province
C Country
EM E-mail Address
Note: The administrative API is a set of Java services that you can use to administer Broker
objects. You can write your own user interface that uses the services, or you can use the
services without a user interface and make administrative changes programmatically.
You can limit the administrative tasks a user is allowed to perform against these objects by
using ACLs.
Note: It is possible for Broker Administrator application to not have administrative access
to a Broker Server, but still have access to a Broker that resides on that Broker Server. This
is called “Limited Access.” If administrative access is limited, “Limited Access” appears in
the title bar of the Broker Server Information page.
Note: If you want to secure your Broker system using SSL and ACL, you should also
secure the system-defined eventLog client group either by restricting access to it through
an ACL or removing the eventLog client group when sensitive information is passed
through the Broker. The eventLog client group is used by custom developed document
logging utilities, and as such, the eventLog client group is permitted to subscribe to all
document types defined within the Broker.
If there are no customized document logging utilities that require the eventLog client
group, then delete the eventLog client group. For more information, see “Deleting a
Client Group” on page 104.
If there are customized document logging utilities that require the eventLog client
deployed in the Broker, secure the eventLog client group with an ACL. For more
information, see “Setting Up Client Group Access Control Lists” on page 177.
You will need to be prepared to provide a list of distinguished names that should have
administrative access to the Broker Server. For information, see “Setting Up Access
Control Lists for the webMethods Broker Server” on page 176.
Note: The ACL must include a distinguished name that you currently use so that you can
have continued administrative access to the Broker Server.
Note: Volatile clients cannot reconnect since they have a Destroy on Disconnect life cycle.
If the Broker Administrator does not have administrative access to a Broker, the Broker
Information page displays “Access Denied” in the Territory field, as shown below.
Broker is locked
1 Create the certificate file(s) needed by the Broker Server and each client.
The Broker Server and each client must have access to the certificates needed to
authenticate the connection. Certificates reside in keystores certificate files on the
Broker Server and on hosts where client applications and adapters reside. The
contents of each certificate file depends on the host it is located on and the type of
authentication, as shown below.
Broker Server Broker Server trusted root Broker Server private key,
authentication only certificate, and trusted root
Client and Broker Broker Server trusted root; Broker Server private key,
Server client private key, certificate, certificate, and trusted root;
authentication and trusted root client trusted root
You must place the distinguished name of the issuer of the Broker Server’s certificate
in the certificate file on each client host. If you need client authentication, you also
need to place the distinguished name of the issuer of a certificate belonging to a client
in the certificate file on the Broker Server Host.
For information about how to manage client and Broker Server private keys,
certificates and certificate files, see “Creating and Managing SSL Certificate Files” on
page 183.
2 Configure the Broker Server to enable SSL. This procedure is described in “Enabling
SSL for the webMethods Broker Server” on page 175.
3 Configure each client to enable SSL.
You can find information about how to configure clients for SSL support in the
following locations:
1 Make sure the Broker Server has the SSL license key.
See “Determining If You Have an SSL License Key” on page 172.
2 Make sure that the proper certificate files are available on the Broker Server Host.
See “Preparing the Certificate File for the Broker Server” on page 172.
3 If required, enable SSL for the Broker Administrator so that it can have administrative
access to the Broker Server or to a specific Broker.
You must enable SSL for the Broker Administrator before you can create the ACL for
the Broker Server in the next step. See “Configuring Broker Administrator for SSL
Support” on page 173.
4 Using the Broker Administrator, enable SSL for the Broker Server.
See “Enabling SSL for the webMethods Broker Server” on page 175.
4 If SSL is configured, you can modify the configuration on the current Broker Server by
clicking the entry or you can proceed to “Setting Up Access Control Lists for the
webMethods Broker Server” on page 176.
If SSL is not configured, you can configure SSL by clicking the entry and following the
instructions outlined in “Configuring Broker Administrator for SSL Support” on
page 173.
Note: SSL must be enabled for the Broker Administrator before you can use it to create an
ACL for the Broker Server.
If a certificate file has not already been defined to the Broker Administrator, click Add
Certificate.
a In the Certificate File field, enter the location of the certificate file. If you want to
assign a different name to this certificate, enter an optional name (.cert suffix will
be added automatically) in the Certificate Name field and click Proceed to Next Step.
Note: In Broker Administrator, when configuring SSL on a Broker Server that installed on
“
a different host than the host that is running Broker Administrator, the path to the
certificate file must be resolvable on both the Broker Server host and the Broker
Administrator host.
For example, if your Broker Server host is installed on Solaris and your Broker
Administrator server is on Windows, if you specify that the certificate path on your
Broker Server is “/temp/devtest6d.cert”, then your Broker Administrator host needs to
have the same certificate in its c:\tmp directory. If the path is not resolvable on both hosts,
then you would receive the following error for this example:
Error: the following Exception was thrown: Secure socket certificate file
“c:\tmp\devtest6d.cert' was not found on the Broker host.”
b Navigate back to the Identities page (either through the Navigation panel or the
Identities tab).
c Click Change Identity Settings.
d Select the certificate you want to use and click Proceed to Next Step.
5 On the SSL Password page, type the certificate file password and then click Proceed to
Next Step.
6 On the Identity User Name page, select one of the distinguished user names provided
by the certificate. This distinguished name will be the identity the Broker
Administrator uses when it connects to the Broker Servers and Brokers that it
administers.
7 Click Finished.
The Broker Administrator updates the identity settings and starts new connections
with each Broker Server. This process can take a few minutes, depending on the
number of known Broker Servers.
Note: If other Broker Administrator pages are open, they may need to be refreshed in order
to display the new identity settings.
Note: If you want to secure your Broker system, you should either: 1) secure the system-
defined eventLog client group with an ACL or 2) delete the eventLog client group when
sensitive information is passed through the Broker. The eventLog client group is used by
customized document logging utilities, and as such, the eventLog client group is
permitted to subscribe to all document types defined within the Broker.
If there are no customized document logging utilities that require the eventLog client
group, then delete the eventLog client group. For more information, see “Deleting a
Client Group” on page 104.
If there are customized document logging utilities that require the eventLog client
deployed in the Broker, secure the eventLog client group with an ACL. For more
information, see “Setting Up Client Group Access Control Lists” on page 177.
1 Check the Identity Settings for the Broker Administrator to make sure that an
administrative identity has already been established. If not, you will need to establish
an identity for the Broker Administrator. See “Configuring Broker Administrator for
SSL Support” on page 173 for instructions.
2 Once the Identity Settings are established on the Broker Administrator, open the
Broker Server Information page for the Broker Server.
3 From the Broker Server Information page, click the linked value to the right of SSL.
4 Click Change Configuration on Restart to add a certificate file.
5 When the SSL Certificate File - Step 1 of 2 page appears, enter the location of the
certificate file in the Certificate Path field, then click Proceed to Next Step.
6 Enter the password for the certificate file, then click Save Changes.
7 When the Distinguished User Name - Step 2 of 2 page appears, select one of the
distinguished user names provided by the certificate.
8 Click Finished.
Broker Administrator updates the SSL settings and starts a new connection with the
Broker Server.
9 Optionally, to further limit the administrative access on the Broker Server, create and
configure ACLs for the Broker Server. See “Setting Up Access Control Lists for the
webMethods Broker Server” on page 176 for instructions.
Note: Before you can establish an ACL for a Broker Server, you must configure the Broker
Administrator with an identity that matches the Broker Server ACL. See “Configuring
Broker Administrator for SSL Support” on page 173.
Note: If you cannot find the distinguished name of a particular issuer, you must
add it to the certificate file. See “Creating and Managing SSL Certificate Files” on
page 183.
6 Optionally, click Add User Names to specify which individual clients can have access.
Note: If you do not specify which individual clients can have access, any user with a
distinguished name from an issuer in the Authenticator Name list can have
administrative access to the Broker Server.
Either enter the User Name into the User Name field or select one of the User Names in
the User Name list.
7 Click Add.
Note: For every client distinguished name that appears in the user name list of the
Access Control tab, the distinguished name of the certificate’s issuer must appear in
the authenticator name list. If not, you must add it to the certificate file used by the
Broker Server. See “Creating and Managing SSL Certificate Files” on page 183.
To add an issuer, click Add Authenticator Names. On the Add Authenticator Name
page, select the issuer that you want to add, then click Add.
Note: If you cannot find the distinguished name of a particular issuer, you must
add it to the certificate file. See “Creating and Managing SSL Certificate Files” on
page 183.
7 Optionally, click Add User Names to specify which individual clients can have access.
Note: If you do not specify which individual clients can have access, any user with a
distinguished name from an issuer in the Authenticator Name list can have
administrative access to the Broker Server.
Either enter the User Name into the Enter Name field or select one of the User Names
from the Choose Name list.
8 Click Add.
Note: For every client distinguished name that appears in the user name list of the
Access Control tab, the distinguished name of the certificate’s issuer must appear in
the authenticator name list. If not, you must add it to the certificate file used by the
Broker Server. See “Creating and Managing SSL Certificate Files” on page 183.
Access to the client group is now available only to clients whose certificates meet the
requirements of the ACL.
Note: A gateway Broker must conform to SSL requirements for communication within a
territory but can differ for communication across the gateway. For example,
authentication may be required within the territory but not across the territory gateway.
2 Open the Territory Information page of one of the Brokers in the territory. See
“Viewing Territory Information” on page 139 for instructions.
3 View Access Control status on the Territory Information table.
4 If the status is Disabled, click it to enable Access Control.
If the status is Not accessible, SSL required, then SSL is not configured. You must
configure SSL before you can set up the ACL. See “Enabling SSL for the webMethods
Broker Server” on page 175 for instructions.
If the status is Not accessible, Identity required, then SSL is configured, but you are not
identified to the Broker Server. You must configure the Broker Administrator identity
settings before you can set up the ACL. See “Configuring Broker Administrator for
SSL Support” on page 173 for instructions.
5 Click Enable Authentication (administrative clients must connect using SSL).
The Access Control page appears, displaying the Authenticator Names that are
specified in Broker Server’s certificate file.
6 If necessary, edit the list of distinguished names of issuers who are allowed to provide
authentication.
By default, the authenticator names for all Broker Servers currently associated with
the territory are already in the list. While authentication is required, there are two
reasons to edit the list:
If you want to remove an authenticator name because the Broker Server
associated with it is no longer in the territory.
If you intend to add a member to the territory whose Broker Server does not have
an authenticator name in the list.
Note: If the issuer name does not appear in this list, it is not known to one of the
Broker Servers in the territory. You must place a Trusted Root for that
authenticator into every certificate used by every Broker Server involved in the
territory.
Alternatively, if you are willing to disable authentication and then add or remove
members of the territory, Broker Administrator adjusts the authenticator name list for
you; click Enable Authentication (administrative clients must connect using SSL) again after
the territory is modified.
7 Optionally, click Add User Names to specify which individual clients can have access.
Note: If you do not specify which individual clients can have access, any Broker
Server with a distinguished name from an issuer in the authenticator name list can
have access to the territory.
By default, the Broker identities list contains all user names associated with Broker
Servers in the territory. While authentication is required, there are two reasons to edit
the list:
If you intend to add a member to the territory whose Broker Server does not have
a user name in the list.
If you want to remove a user name because the Broker Server associated with it is
no longer in the territory.
8 Alternatively, if you are willing to disable authentication and then add or remove
members of the territory, Broker Administrator adjusts the user name list for you;
click Enable Authentication (administrative clients must connect using SSL) again once the
territory is modified.
Once you have listed the appropriate distinguished names in the Authenticator and User
Names lists, the Access Control list for the territory is complete. Access to the territory is
now available only to Brokers on Broker Servers whose certificates meet the requirements
of the ACL. Existing connections among the Brokers in the territory are not immediately
upgraded. Whenever member Brokers have reason to reconnect with each other, the new
connections use authentication and encryption as established for the territory. To force
reconnection, stop and restart each Broker Server associated with the territory.
1 Open the Gateway Information page for the gateway Broker. See “Displaying
Gateway Information” on page 148 for instructions.
2 In the Gateway Information table, click the linked value to the right of Access Control.
If Broker Administrator is connected to both sides of the gateway, the remote Broker’s
authenticator name and user name for the Broker Server are listed on the Access
Control page.
3 Click Enable Authentication (administrative clients must connect using SSL).
The Access Control page appears, displaying the Authenticator Names that are
specified in Broker Server’s certificate file.
4 If necessary, replace the distinguished name of the issuer who is allowed to provide
authentication.
By default, the authenticator names for all Broker Servers currently associated with
the territory are already in the list.
Note: If the issuer name does not appear in this list, it is not known to one of the
Broker Servers in the territory. You must place a Trusted Root for that authenticator
into every certificate used by every Broker Server involved in the territory.
5 Optionally, click Add User Names to specify which individual clients can have access.
The User Names list contains the user name associated with the remote Broker Server.
Once you have listed the appropriate distinguished names in the Authenticator and User
Names lists for both sides of the gateway, the Access Control list for the gateway is
complete. Authentication is now required for all communication across the territory
gateway. The gateway Brokers immediately attempt to re-establish connection. If any of
the information is incorrect, causing an authentication failure, the connection across the
gateway is broken.
Field Description
In addition, the publishing Broker client can add a digital signature in the signature field
of the document’s envelope. For more information about envelope fields, see the
appropriate programmer’s reference.
Uploading a certificate that resides on the same machine as the Broker Administrator
Note: The certificate file must be on the host where the Integration Server and Broker
Administrator run. If the certificate does not yet exist on this host, you can add one by
using the Broker Administrator or the awcert command. See “Using the Certificate
Manager Program (awcert)” on page 185.
Subcommand Purpose
help Print a usage message for awcert to the screen.
For Trusted Roots
import-trust Installs a trusted root in a certificate file. See “Installing Trusted
Roots” on page 186.
list-trust Lists the trusted roots in a certificate file. See “Listing Trusted
Roots” on page 189.
remove-trust Removes a trusted root from a certificate file. See “Removing
Trusted Roots” on page 189.
For Certificates and Certificate Files
certify Installs signed certificates into a certificate file. See “Installing
Certificates” on page 188.
copy Copies certificates and certificate files. See the following sections:
“Copying All Certificates in a Certificate File” on page 191.
Subcommand Purpose
password Changes the password for a certificate file. See “Changing the
Certificate File Password” on page 193.
remove Removes a certificate from a certificate file. See “Removing
Certificates from a Certificate File” on page 192.
The process of creating and storing certificates uses the following general steps:
1 Create a certificate file and install one or more trusted roots into the file.
2 Create a certificate request.
3 Submit the certificate request to a Certification Authority.
4 Install the signed certificate into a certificate file.
These steps are described in more detail in the following sections.
The following example creates the certificate file my_certs using the password mypasswd,
and installs the trusted root contained in the file t_root.
awcert import-trust my_certs mypasswd -f t_root
This command creates an uncertified key pair and puts it into the specified certificate file.
The command also generates a certificate request file in PKCS #10 format. PKCS (Public
Key Cryptography Standards) #101 defines a syntax for certificate requests.
The key length determines the level of security provided for the connection; the larger the
key length, the greater the security. Added security comes at the price of performance; the
larger the key length, the more time it takes for encryption and signature verification
operations.
The following example generates a certificate request in the certificate file my_certs using
the password mypasswd. The certificate request file is to be named my_request.
awcert make-new my_certs mypasswd -d
“CN=Client,OU=Eng,O=webMethods,L=Sunnyvale,ST=CA,C=US” -f my_request -m 768
1. Information on PKCS #10 is available through RSA Laboratories, a division of RSA Data Secu-
rity, Inc. See http://www.rsasecurity.com/rsalabs/pkcs/pkcs-10
[Text deleted]
The block of text from BEGIN to END inclusive constitutes the certificate request. Submit the
request to the Certification Authority that provides your certificates. Contact your
Certification Authority for submission requirements.
When you receive the certificate from your Certification Authority, it should be another
block of text:
-----BEGIN CERTIFICATE-----
[Text Deleted]
-----END CERTIFICATE-----
The block of text from BEGIN to END constitutes the certificate (include the BEGIN and
END lines shown above). Copy this block into a temporary file to be used when you
install the certificate.
Installing Certificates
In response to a certificate request, the issuing Certification Authority sends you a X.509-
compliant digital certificate. ITU-T Recommendation X.5091 governs the syntax of digital
certificates. You must install the certificate into the same certificate file where you
previously created the uncertified key pair (page 187).
Note: It is possible that the issuing Certification Authority may change the returned
distinguished name. Visually, it appears the same as the original distinguished name; the
difference occurs in the binary form of the name. In this case, the awcert command
prompts you to accept the changed distinguished name.
To add a certificate to your certificate file, at the command line, enter this command:
awcert certify certificate_file password -f cert_text_file
The following example adds the signed certificate in the file signed_cert to the certificate
file my_certs using the password mypasswd.
awcert certify my_certs mypasswd -f signed_cert
The following example lists the trusted roots in the certificate file my_certs using the
password mypasswd.
awcert list-trust my_certs mypasswd
The awcert program lists the distinguished names of all trusted roots in the certificate file.
To get the exact text of the trusted root’s distinguished name, use awcert list-trust,
described in “Listing Trusted Roots” on page 189.
The following example removes a trusted root from the certificate file my_certs using the
password mypasswd.
awcert remove-trust my_certs mypasswd -d "OU=Certification
Authority,O=Apex Data Security Inc.,C=US"
The following example lists all certificates and uncertified key pairs in the certificate file
my_certs using the password mypasswd.
awcert list my_certs mypasswd
The following example lists the certificate for a specific distinguished name:
awcert list my_certs mypasswd -d "CN=Client,OU=Eng,O=webMethods,
L=Sunnyvale,ST=CA,C=US"
The following example copies all certificates from the certificate file my_certs using the
password mypasswd to the certificate file other_certs using the password passwd2.
awcert copy my_certs mypasswd -f other_certs -p passwd2
To get the exact text of the certificate’s distinguished name, use awcert list, described in
“Listing Certificates in the Certificate File” on page 190.
The following example exports a single certificate from the certificate file my_certs using
the password mypasswd to the certificate file other_certs using the password passwd2.
awcert copy my_certs mypasswd -d “CN=Client,OU=Eng,O=webMethods,L=Sunnyvale,ST=CA,
C=US” -f other_certs -p passwd2
The following example uses the domestic certificate file my_certs using the password
mypasswd to create the exportable certificate file exp_certs using the password passwd2.
awcert copy my_certs mypasswd -f exp_certs -p passwd2 -x
The following example removes a certificate from the certificate file my_certs using the
password mypasswd.
awcert remove my_certs mypasswd -d “OU=Eng,O=webMethods,C=US”
The following example changes the password for the certificate file my_certs from
oldpasswd to newpasswd.
awcert password mycerts oldpasswd -p newpasswd
If a value within the distinguished name contains one of the characters shown here in
parentheses (, ; = + < > #), enclose the value with double quotation marks (as in
O=”webMethods, Inc.”).
On Windows, you must escape each quotation mark by preceding it with a backslash
(\"). On UNIX (except C shell), you do not have to escape the interior double
quotation marks if you enclose the distinguished name in single quotation marks. On
UNIX C shell, do not escape the interior double quotation marks; instead, enclose the
distinguished name in single quotation marks.
The following examples show the correct punctuation for a distinguished name as it is
used in awcert.
Windows and UNIX (except C shell):
“CN=Client,OU=Eng,O=\”webMethods, Inc.\”,L=Sunnyvale,ST=CA,C=US”
Certificate Status
Each certificate has a status associated with it, as shown in the table below.
User-Based Access
Access control based on document types works well as long as all clients have the same
level of access. When one introduces the need for multiple levels of access, the number of
document types multiplies. For example, assume a document type deleteRecord. To
provide different access to users, based on Confidential, Secret, and Top Secret access
levels, you might need the three document types deleteConfidentialRecord,
deleteSecretRecord, and deleteTopSecretRecord.
The use of content-based security by means of access labels allows a client to label a
document instance as requiring certain permissions. Using this model, the Confidential,
Secret, and Top Secret clients can use the single document type deleteRecord, but each
has a different access label.
Access labels allow you to prevent a Broker client from receiving a document based on the
document's content, hence the term "content-based security.” The publisher labels a
document with its required access rights and Broker enforces access.
Access labels also allow you to provide a receiving Broker client with information about
the publisher's rights. The receiving client uses information in the document to control
access.
rights, called an access label (see “What is an Access Label?” on page 196). The Broker
associates these rights with a client.
Note: webMethods does not include an Access Label Adapter as part of the product.
You must create the adapter yourself.
The Broker places the client's access label into the _env.pubLabel field of all
documents the client publishes. This action provides the receiving Broker client with
information about the publisher's rights.
Publishing clients can set the _env.controlLabel field in documents. When set, only
clients that have the proper access label can receive the documents. Clients have the
option of letting the Broker automatically set this field for them.
Client Ownership
If a client is created on the Broker over an authenticated SSL connection, the Broker
records the client's owning user along with the client. The user name is the distinguished
name (DN) and the authenticator is the issuer DN of the client's SSL certificate.
In a related issue, clients that have an owner allow future reconnection from only those
processes that authenticate as the same user.
An access label can also be logically thought of as a bitmask. The access label in the
example describes a bitmask of 6 bits where individual values correspond to bit positions.
In binary form, the bitmask for this example looks as follows, with bit positions 0, 4, and 5
set to 1 (least significant bit to the right):
110001
or hex 0x31. Duplicate values in the label are ignored. Negative values are invalid and will
generate errors.
A client can get the value of its access label by using the following API call:
C : BrokerError awGetClientAccessLabel(BrokerClient client,
int *n,
short **label);
Java : short [] BrokerClient.getAccessLabel();
Source Label
The source label contains the access rights of the application that publishes a document.
The Broker fills in the envelope field _env.pubLabel with the publishing client's access
label (if the client has one). This information is not used by the Broker, but receiving
clients can make use of the information.
Clients cannot fill in the _env.pubLabel field themselves in an attempt to spoof their
access rights.
Control Label
The control label contains the access rights required to receive a document. The control
label is stored in the _env.controlLabel envelope field.
The control label cannot contain values not present in the client's access label. For
example, a client with a security level of “Confidential” cannot set a control label with a
level of “Top Secret.” If a client attempts to set a control label containing values not
present in its access label, an error (exception) is returned. Also, clients must have an
access label to be able to set control labels on documents. This concept can be described by
the following function (assuming the labels are treated like a bitmask):
if (control_label & (~access_label) !=0)
//FAIL: error(bad control label);
else
//PASS: accept document
A publishing client is responsible for setting this field using the API. An option is
provided to have the Broker set this field for the client by using the following API call:
C : BrokerError awSetClientAutomaticControlLabel(BrokerClient client,
BrokerBoolean enabled);
Java : void BrokerClient.setAutomaticControlLabel(boolean enabled);
This option is normally disabled. When it is enabled, the Broker places the client's access
label into the _env.controlLabel field of all documents the client publishes that do not
already have the field set.
Receipt Label
For all clients, the receipt label is simply their access label. The Broker compares the control
label of all documents retrieved from the client's queue to the client's access label. Any
document for which the client does not have the right access is deleted.
The client's access label must have all the same rights as in the control label. The client's
access label may have more rights than necessary. This permission check can be described
by the following function (assuming the labels are treated like a bitmask):
if ( ((control_label ^ access_label) & control_label) == 0)
// PASS: send document
else
// FAIL: delete document
If a client does not have an access label, permission checks always fail for documents with
control labels.
Note: Note that the permission check happens only when the Broker pulls documents from
the queue. The check does not occur when documents are placed into the queue.
ALA Communication
The Broker and ALA communicate using system-defined document types. All document
types described are Volatile with infinite time-to-live.
// Sent from Broker to ALA. ALA replies with
// Broker::ALA::label or Broker::ALA:error
Broker::ALA::lookup {
unicode_string user;
unicode_string authenticator;
unicode_string serial;
unicode_string hint;
};
The ALA can use the Broker::ALA::error document to report problems during label
lookup. The error field should be one of the following:
If the error string is not internal, the current access label is invalidated (e.g., cleared).
You can use the detail field to record an implementation-specific error message. If the detail
field is present, the Broker logs an error for the failure. In error cases, any pending
lookups for the user's label will fail. If there is a non-empty detail string, it is logged to the
Broker Server’s error log.
The ALA can use the change document to update an access label the Broker already
knows about. You can effectively revoke a label by updating with a zero-length label. The
client is not notified when its access label changes.
The Broker delivers documents to the ALA client (that is to say, the _env.destId field is
set). The ALA should confirm that _env.pubId is set to //broker-name.
The ALA should deliver documents to the Broker using //broker-name as the destination
ID. The Broker ignores published ALA documents, as well as documents not delivered
from a local member of the “accessLabelAdapter” client group.
Error Handling
The Broker takes action depending on the ALA failure mode:
ALA is not running (not Requests for client access labels fail until the ALA is
connected) running again.
ALA does not respond Pending access label lookups fail after waiting 10
seconds for an ALA reply. Clients that already have
access labels continue to function.
In the future, the Broker may disconnect the ALA if the
ALA does not respond to any requests for one minute.
This might help get the ALA restarted
ALA disconnects If an ALA disconnects, it will likely not respond within
the 10 second time-out and requests to it will be treated
as such.
ALA supplies invalid replies The ALA could reply to a lookup with an unknown DN,
or invalid access label (for example, negative label
values). Some invalid replies will be ignored, and some
will result in the failure of an access label lookup.
Regardless, the Broker will log each failure by the ALA.
Multiple ALAs running The Broker uses the first ALA to connect; it ignores the
other ALAs until the first one disconnects.
Expiration of Labels
Labels do not expire. They stay valid until the ALA reports a new label value for the
client's owning user by means of a Broker::ALA::change document.
The Broker does attempt to refresh the client's access label each time the client reconnects.
For shared-state clients, this happens each time the number of connected clients goes from
zero to one.
If an ALA wants to expire labels, it may do so by issuing Broker::ALA::change
documents, using its own expiration policy. Note that change documents apply to all
clients with a matching distinguished name and issuer distinguished name pair.
Broker-to-Broker
Document access labels are preserved unchanged between Brokers and across territory
gateways. To maintain security, all interconnected Brokers and territories should share
the same meaning for access label values.
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Overview
This chapter describes how to configure administered objects using the webMethods JMS
Administrator. You can also manage administered objects using the webMethods
JMSAdmin command line tool or programmatically. For more information, see the
webMethods Broker JMS Provider Programmer’s Guide.
Configuration Tasks
Configuring administered objects with the JMS Administrator involves the following
steps:
1 Selecting the JNDI provider that will bind JMS objects.
2 Selecting the Brokers to use for JMS messaging.
3 Creating and configuring JMS administered objects, which include:
Topic connection factories and topics (for publish/subscribe messaging models)
Queue connection factories and queues (for point-to-point messaging models)
The URL for the JMS Administrator, including the host name and port number of the
Integration Server to which you are connecting.
A valid user name and password with administrator privileges.
1 Start the Integration Server on which the JMS Administrator runs, the server on which
the JNDI provider resides, and the Broker on which to store JMS Provider
configuration settings.
2 Open a browser window and point the browser to the host and port on which the
Integration Server is running.
Examples:
If the Integration Server on which the JMS Administrator resides is using the default
port, you would type:
http://hostname:5555/WmJMSAdmin/
If the Integration Server is running on port 4040 on a machine called ATLAS, you
would type:
http://ATLAS:4040/WmJMSAdmin/
3 Log on to the JMS Administrator with a user name and password that has
administrator privileges.
If you have not changed the default webMethods Integration Server user name and
password, you can use the following default values:
User Name: Administrator
Password: manage
Note: It is strongly recommended you change the default password immediately after
installing webMethods Integration Server, since this password is publicly available.
For information about changing the password, see the webMethods Integration Server
Administrator’s Guide.
Note: If the Integration Server is not running, your browser will issue an error similar
to the following:
Note: In order for the JMS Administrator to store administered objects on a server (for
example, WebLogic, LDAP, or JBoss), the server must be active. For LDAP servers, the
server must either be running with schema validation turned off or it must have the Java
object schema installed. The Java object schema is defined in RFC 2173.
If you are using the webMethods JMS Naming Service as the JNDI provider, make sure
the Broker acting as the naming server is running.
4 Click Upload.
When you use a properties file to configure the webMethods JMS Naming Service, you
must take additional steps to add the JNDI class file to the Integration Server that hosts
JMS Administrator package. Once you have performed the procedure below, you will not
need to repeat it.
Note: If you are using the webMethods JMS Naming Service, then the JNDI class file is:
wmjmsnaming.jar.
To add the JNDI class file to the Integration Server (webMethods JMS Naming Service Provider only)
1 In the Jar Files and Classes on the Settings > JNDI > Change page, specify the absolute
path to the JNDI jar file(s) that you copied to the Integration Server’s file system
before you started this procedure.
2 Click Save Changes.
Selecting a Broker
This section describes how to:
Select a Broker on which to create JMS Provider configuration settings.
Remove a Broker from the list of Brokers that are used to create JMS Provider
configuration settings.
Change the Broker timeout value. This timeout value determines how long the JMS
Administrator should wait for a connection to the Broker when updating the Broker
with structures needed to support your JMS client.
Identify the certificate, distinguished name, and password the JMS Administrator
uses to access the Broker, for Broker Servers that are SSL enabled. This identification
is needed for administrative access to Brokers if they are protected by Access Control
Lists (ACLs).
Note: The JMS Administrator user interface uses the term “Broker” to refer to the Broker
through which your JMS clients will exchange messages.
1 From the Settings area of the Navigation panel, click JMS Brokers.
2 On the Settings > JMS Brokers page, click Add a JMS Broker.
3 On the Settings > JMS Brokers > Add page, complete the following fields:
4 Click Add.
The Settings > JMS Brokers page displays the Broker you added, indicates whether the
Broker is currently connected, and indicates whether the Broker Server to which the
Broker is connected is SSL enabled.
Tip! You can sort the list of Brokers by clicking the Broker Name column heading.
1 From the Settings area of the Navigation panel, click JMS Brokers.
2 On the Settings > JMS Brokers page, click Remove one or more JMS Brokers.
3 On the Settings > JMS Brokers > Remove page, do one of the following:
Tip! You can clear the list by first clicking the All/None check box (to select all check
boxes) and then clicking All/None again (to clear all check boxes).
4 Click Remove.
5 When prompted to confirm that you want to remove the selected JMS Brokers, click
OK.
1 From the Settings area of the Navigation panel, click JMS Brokers.
2 On the Settings > JMS Brokers page, click JMS Broker Settings.
3 On the Settings > JMS Brokers > Timeout page, click Change JMS Broker Timeout.
4 In the JMS Broker Timeout field, type the number of seconds to wait for a connection to
the JMS Broker.
5 Click Save Changes.
1 From the Settings area of the Navigation panel, click JMS Brokers.
2 On the Settings > JMS Brokers page, click Edit SSL Settings next to the Broker whose SSL
settings you want to change.
3 On the SSL page, complete the following fields:
4 Click Set.
The steps in this section assume that you have already specified the JNDI provider and
Broker with which to associate these JMS objects and their configuration settings. If you
have not done so, refer to “Configuring the JNDI Provider” on page 207 and “Selecting a
Broker” on page 210.
Note: When naming JMS objects and subcontexts in an LDAP environment, you must
include a prefix, such as cn= (common name), or ou= (organizational unit). The JMS
Administrator simplifies the use of LDAP service providers by allowing you to refer to
object and context names without a prefix. If you do not supply a prefix, the JMS
Administrator automatically adds a default prefix.
Important! Before you create or modify a connection factory or destination, make sure the
Broker that will store the JMS provider’s configuration settings is started. If the Broker is
not started, the JMS Administrator will not be able to create the object.
The Broker does not have to be started to view or remove a JMS administered object once
that object is created.
1 Make sure the Broker that will store the JMS Provider configuration settings is active.
2 From the JMS area of the Navigation panel, click Connection Factories.
3 On the JMS > Connection Factories > Create page, complete the following fields:
4 Click Create.
Tip! You can sort the list of connection factories by clicking the Lookup Name column
heading.
The JMS Administrator displays the following information about the queue
connection factory:
Field Description
Lookup Name The name of the JNDI directory to which this connection
factory is bound.
Class The class of the queue connection factory as it was bound
into JNDI.
Type Whether the connection factory is a queue or topic type,
and whether it is transactional or non-transactional.
Client ID The base client ID for connections created by this factory.
If a client ID is specified, the connection factory
derives a client ID from this value each time a
connection is established. If this ID is already in use,
subsequent queue connections will append a numeric
suffix to the client ID to make it unique.
If a client ID is not specified, the connection factory
assigns a unique client ID whenever a connection is
established.
JMS Broker The name of the Broker to which queue connections will
be established.
To view details about this Broker, click its name.
SSL Certificate Filename Path and file name of the file containing the SSL certificate
information.
SSL Encryption Indicates whether traffic to the Broker on connections
created from this connection factory will be encrypted
(yes) or unencrypted (no).
Field Description
Client Group The name of the client group associated with this
connection factory. To view details about this client
group, click its name.
Permissions Displays as a set of yes/no switches whether this
connection factory can send or receive messages to the
queues in the list (Broker event types). The event type
name associated with queues is the queue name prefixed
with JMS::Queues, for example:
JMS::Queues::QueueA
1 From the JMS area of the Navigation panel, click Connection Factories.
2 On the JMS > Connection Factories page, in the Connection Factories table, click the
lookup name of the queue connection factory you want to modify.
3 On the JMS > Connection Factories > ConnectionFactory page, click Modify Connection
Factory.
4 Modify the client ID, JMS Broker, SSL encryption, client group, and permissions.
5 Click Modify.
1 From the JMS area of the Navigation panel, click Connection Factories.
2 On the JMS > Connection Factories page, click Remove Connection Factories.
3 On the JMS > Connection Factories > Remove page, do one of the following:
Tip! You can clear the list by first clicking the All/None check box (to select all check
boxes) and then clicking All/None again (to clear all check boxes).
4 Click Remove.
5 When prompted to confirm removal of the selected connection factories, click OK.
Administering Queues
This section describes how to:
Create a queue.
Modify a queue.
Remove a queue.
1 Make sure that the Broker that will store the JMS configuration settings for the queue
object is started.
2 From the JMS area of the Navigation panel, click Destinations.
3 On the JMS > Destinations page, click Create a Queue.
4 If you want to change the default connection sharing and encryption settings, click
Show Advanced Settings.
5 Complete the following fields:
6 Click Create.
Tip! You can sort the list of queues by clicking the Lookup Name or Destination Name
column headings.
The JMS Administrator displays the following information about the queue:
Field Description
Lookup Name The name of the JNDI directory to which this queue is
bound.
Class The class of the queue as it was bound into JNDI.
Type The type of destination (queue or topic).
Queue Name The name of the queue.
Field Description
Event Type The fully qualified Broker Event Type (scope and base
name) associated with this queue.
Client Group The group that queue receivers use to establish a
connection to the Broker.
Shared State Whether multiple connections can share the same
connection client ID.
Shared State Ordering The ordering of documents received on a shared state
client (in any order or in order from a publisher).
To modify a queue
To remove a queue
Tip! You can clear the list by first clicking the All/None check box (to select all check
boxes) and then clicking All/None again (to clear all check boxes).
4 Click Remove.
5 When prompted to confirm removal of the selected destinations, click OK.
1 If the Broker that will store the JMS Provider configuration settings is not active, start
it.
2 From the JMS area of the Navigation panel, click Connection Factories.
3 On the JMS > Connection Factories > Create page, complete the following fields:
4 Click Create.
1 From the JMS area of the Navigation panel, click Connection Factories.
2 On the JMS > Connection Factories page, in the Connection Factories table, click the
lookup name of the topic connection factory you want to view.
Tip! You can sort the list of connection factories by clicking the Lookup Name column
heading.
The JMS Administrator displays the following information about the connection
factory:
Field Description
Lookup Name The name of the JNDI directory to which this topic
connection factory is bound.
Class The class of the topic connection factory object as it
was bound into JNDI.
Type The type of connection factory (topic or queue).
Field Description
Client ID (Optional) The base client ID for connections
created by this factory.
If you specify a client ID, the connection
factory derives a client ID from this ID each
time a connection is established. If this ID is
already in use, subsequent topic connections
will append a numeric suffix to the client ID to
make it unique.
If you do not specify a client ID, the
connection factory assigns a unique client ID
when a connection is established.
JMS Broker The name of the Broker to which topic connections
will be established.
You can view details about this Broker by clicking
its name.
SSL Certificate Filename Path and file name of the file containing the SSL
certificate information.
SSL Encryption Whether traffic to the Broker for connections made
from this connection factory will be encrypted.
Client Group The name of the client group associated with this
connection factory.
To view details about this client group, click its
name.
Permissions Displays as a set of yes/no switches whether this
connection factory can publish or subscribe to the
topics in the list (Broker event types). Every topic
has an associated event type of the same name.
1 From the JMS area of the Navigation panel, click Connection Factories.
2 On the JMS > Connection Factories page, in the Connection Factories table, click the
lookup name of the topic connection factory you want to modify.
3 On the JMS > Connection Factories > ConnectionFactory page, click Modify Connection
Factory.
4 Modify the connection factory’s client ID, Broker address, SSL encryption, and client
group as described in “Administering Topic Connection Factories” on page 220.
5 In Permissions, select the appropriate check boxes for each Event Type (topic) to
indicate whether the topic connection factory can publish on the topic or subscribe to
the topic.
6 Click Modify.
1 From the JMS area of the Navigation panel, click Connection Factories.
2 On the JMS > Connection Factories page, click Remove Connection Factory.
3 On the JMS > Connection Factories > Remove page, do one of the following:
Tip! You can clear the list by first clicking the All/None check box (to select all check
boxes) and then clicking All/None again (to clear all check boxes).
4 Click Remove.
5 When prompted to confirm that you want to remove the selected connection factories,
click OK.
Administering Topics
This section lists the steps needed to:
Create a topic.
Remove a topic.
To create a topic
1 If the Broker that will store the queue is not active, start it.
2 From the JMS area of the Navigation panel, click Destinations.
6 Click Create.
Tip! You can sort the list of topics by clicking the Lookup Name or Destination Name
column headings.
The JMS Administrator displays the following information about the topic:
Field Description
Lookup Name The name of the JNDI directory to which this topic is
bound.
Class The class of the topic object as it was bound into JNDI.
Type The type of destination (queue or topic).
Topic Name The name of the topic.
Event Type The fully qualified Broker Event Type (scope and base
name) associated with this topic.
Shared State Whether to allow multiple connections to share the
same connection Client ID. The default is No.
Shared State Ordering The ordering of messages received on a shared state
client. The default is none.
To remove a topic
Tip! You can clear the list by first clicking the All/None check box (to select all check
boxes) and then clicking All/None again (to clear all check boxes).
4 Click Remove.
5 When prompted to confirm that you want to remove the selected destinations, click
OK.
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
server_conf_backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
server_conf_restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
server_config add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
server_config create . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
server_config delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
server_config help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
server_config list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
server_config remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
server_config start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
server_config stop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
server_config storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
server_config update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
broker_buildall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
broker_create . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
broker_delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
broker_load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
broker_ping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
broker_save . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
broker_stop and broker_start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
broker_status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Overview
This appendix describes the Broker Server and Broker command line utilities.
Syntax
server_config subcommand [options ...]
With the exception of the list, start, and stop subcommands, all subcommands require
that you provide the location of the Broker Server’s data directory. The location of this
directory is dependent on the platform. When you install webMethods Broker, the data
directory for the Broker Server has the following location:
Windows C:\Program
Files\webMethods6\Broker\data\awbrokers65\default
UNIX /var/opt/webmethods/awbrokers65/default
When you create a Broker Server, you provide the pathname of the data directory for that
Broker Server.
Each Broker Server is identified by its main port number (6849 by default), which must
not conflict with ports used by a different Broker Server. If the Broker Server supports SSL
connections, it also uses the port numbers main-1 and main-2. If you attempt to create or
update a Broker Server using a port number that is already being used by existing Broker
Servers, server_config issues an error message.
Note: The server_config command line program is not compatible with previous
versions of webMethods Broker. To configure a Broker Server version 6.1 or earlier,
please refer to the documentation for that version of the product.
Broker Commands
Broker commands are shown in the table below:
server_conf_backup
Use the server_conf_backup command line tool to back up the Broker Server
configuration data storage. For instructions, see “Backing Up from the Command Line”
on page 86. The server_conf_backup command creates a zip file that the
server_conf_restore tool later uses to restore the backed-up configuration data storage.
Note: The server_conf_backup command line tool is an online backup tool designed to
be used with a running Broker Server.
Syntax
server_conf_backup backup-filename [-h hostname:port] [-k SSL-keystore-filename
–p SSL-password –n SSL-distinguished-name] [-e] [-o] [-v]
Arguments
Argument Description
backup-filename Fully qualified path to the name of the file where the
backup is stored. A .zip file extension is added if the
extension is not present.
Example 1: /var/backups/server-6849.zip
OR
Example 2: c:\Backups\server-6849.zip
Note: If the file you specify does not exist, the command
creates it for you. If you have an existing file, then you must
use the -o option to overwrite it.
-h hostname:port The hostname and port of the server you wish to backup.
The default is localhost:6849, but you use this option to
backup other servers on the local machine.
Example: -h localhost:8849
-k SSL-keystore-filename The SSL parameters needed to access the server.
–p SSL-password
–n SSL-distinguished-name SSL-keystore-filename is the name of the file containing the
SSL certificates
SSL-password is the password to access the file.
SSL-distinguished-name is the name used to access the
server.
-e Turns on encryption to the Broker Server.
-o If you have an existing destination file you must use this
command to overwrite it. If this value is not specified and
the file exists, the backup is cancelled with an error
message.
-v Verbose mode. Prints out information about the progress
and completion of the backup.
server_conf_restore
Use the server_conf_restore command line tool to restore the Broker Server
configuration data storage. For instructions, see “Restoring System Configuration Using
the server_conf_restore Command Line Tool” on page 87. The server_conf_restore
tool restores the configuration data storage by copying the backed-up configuration data
files from a prior server_conf_backup to those files’ original locations. The absolute
paths to the configuration data files are captured in the backup zip file created by the
server_conf_backup tool.
Note: The Broker Server configuration data restore feature provides a level of recovery
from Broker storage corruption problems only. This backup/restore feature is not
designed for point-in-time recovery due to user or system errors.
Important! Regardless of the condition of the Broker Server's run-time data (corrupted or
uncorrupted) storage, the backup/restore feature only aids in the recovery from Broker
Server's configuration data storage corruption. It is highly risky to restore the Broker
Server's configuration data storage without removing its run-time data storage because
of potential data inconsistencies between the two storage sessions.
You must remove the existing run-time data files ending in”.qs.stor” and .”qs.log” (not
the “.qs” file), during the recovery process. You should remove the Broker Server's run-
time data storage either before running the server_conf_restore command or after
running the server_conf_restore command and before restarting the Broker Server.
Syntax
server_conf_restore backup-filename [-o] [-v]
Arguments
Argument Description
backup-filename The name of the file where the backup is stored.
Example 1: /var/backups/server-6849.zip
OR
Example 2: c:\Backups\server-6849.zip
-o When copying the contents of the backup zip files into the
destination directory, the “-o” option instructs
server_conf_restore to overwrite any existing backup
files with the new ones. If you do not specify “-o” then the
server_conf_restore tool will prompt you for permission
to overwrite any existing files.
-v Verbose mode. Prints out information about the progress
and completion of the backup.
Example:
This example is for a UNIX machine with a Broker Server created on port 8849. It is
assumed that the Broker Server is running as user bin and that all the data files are located
in the Broker data directory.
server_conf_backup /var/backups/server-8849-backup-2005-05-10 –h
localhost:8849
At some point in time later a failure occurs and you need to restore the Broker Server
needs.
1 Stop the Broker Server. See “Stopping and Starting a webMethods Broker Server” on
page 61 for instructions.
2 Login as root.
cd /var/opt/webmethods/awbrokers65/server8849
3 Make a copy of the Broker Server’s current configuration and run-time data file.
cp *.qs* /tmp/server-backup
4 Remove the Broker Server’s run-time data files by removing the files ending with
“.qs.stor” and “.qs.log”:
rm *.qs.stor *.qs.log
5 Run the server_conf_restore command line tool to restore the Broker Server's
configuration data storage from a backup.
server_conf_restore var/backups/server-8849-backup-2005-05-10 –v
server_config add
The add subcommand has two uses:
To control which Broker Server executable to use. By specifying the executable, you
can run a Broker Server other than the default one.
To add a Broker Server by using or copying the configuration of an existing Broker
Server. By specifying an existing configuration file, you can propagate Broker Server
configurations among multiple platforms, add a previously configured Broker Server
to an active configuration, or quickly upgrade an existing Broker Server deployment
to a new release of webMethods Broker.
Syntax
server_config add data_dir <-e executable -k license_key |
-m config_file> [-k license_key] [-p port] [-S]
Arguments
Argument Description
data_dir The path to the data directory for the Broker Server you are
adding. If the directory does not already exist, the program
creates it.
Use double quotes if there is spacing in the data directory path.
-e executable The path to the awbroker executable file. This option allows you
to run a Broker Server using an earlier release of webMethods
Broker. The -k option (license key) is required. Do not use in
combination with the -m option.
Argument Description
-m config_file The path to the awbroker.cfg file to be used for the Broker Server
to be added. A copy of the configuration file is placed in data_dir.
This option allows you to copy an existing Broker Server
configuration. Do not use in combination with the -e option.
-p port The port number to be used for the Broker Server to be added.
Needed if the default port 6849 is in use by another Broker Server.
This port number overrides any existing port number.
-k license_key The Broker Server run-time license key. This license key overrides
any existing license key.
-S Silent operation. No output is shown except for warnings and
error messages.
Example 1
The following example adds a new Broker Server (placing a configuration file in the new
server directory) by copying the existing configuration file in the server2 directory, and
specifying a new port number.
server_config.exe add “C:\Program
Files\webmethods6\Broker\data\awbrokers65\newserver” -m “C:\Program
Files\webmethods6\Broker\data\awbrokers65\server2” -p 6830
Example 2
The following example adds an existing Broker Server to the active configuration. The
configuration file already exists in the old server directory.
server_config.exe add “C:\Program
Files\webmethods6\Broker\data\awbrokers65\oldserver”
server_config create
It is possible to run multiple Broker Servers on the same host, as long as the port numbers
used by both Broker Servers do not conflict with each other. server_config create
creates the Broker Server configuration file awbroker.cfg and the data files that will be
used by individual Brokers running on the Broker Server (described in “Backing Up and
Restoring System Configuration Data Storage” on page 85). The command places the
awbroker.cfg file and the data files in the Broker Server data directory.
The server_config create command also lets you create either separate storage
sessions for the configuration (metadata) and run-time data or a combined storage session
for both types of data.
Using separate storage sessions minimizes the risk of corruption that might occur
with a combined storage location. In addition, you can use the webMethods Broker
6.5 online backup tool to back up configuration data without having to shut down
your Broker Server. This means you can continue to send and receive messages while
backing up your configuration data. For more information about the online backup
tool, see the “Backing Up and Restoring System Configuration Data Storage” on
page 85.
If you do not need to use the online backup tool, you can continue to use a combined
storage session that might save you a small amount of disk space. For more
information, see “Backing Up and Restoring System Configuration Using ADL” on
page 82.
When you create a Broker Server, you can select the storage session configuration type.
Once you do so, however, you cannot change it afterwards.
Important! At this time, it is not possible to convert either from a combined storage session
to separate storage sessions or vice-versa.
Syntax
server_config create data_dir -k license_key
[-d description] [-p port] [-nostart] [-S]
[-session_config qs [-qs_log_file filename file_size]
[-qs_storage_file filename file_size [reserved_size]]
[-session_data qs [-qs_log_file filename file_size]
[-qs_storage_file filename file_size [reserved_size]]
Arguments
Argument Description
data_dir Fully qualified path to the data directory for the Broker
Server being created. If the path includes spaces, enclose
the spacing in double quotation marks.
If the directory does not already exist, the program
creates it. The directory cannot contain a copy of the
awbroker.cfg file.
-k license_key Broker Server run-time license key.
Argument Description
[-d description] One-line description that describes the Broker Server you
are creating. If the text string includes spaces, enclose the
in double quotation marks.
The description will appear in the Broker Administrator
main window.
[-p port] The Broker Server port number. By default, the Broker
Server uses port 6849. If another Broker Server is using
that port, you must use this argument to identify the port
the Broker Server you are creating is to use.
[-nostart] By default, the command starts the Broker Server auto-
matically after it creates it. If you want to start the Broker
Server manually later instead, use this argument to pre-
vent the command from starting the Broker Server.
[-S] By default, the command writes error messages to stderr
and information messages to stdout. If you want to write
error messages to stdout and suppress information mes-
sages instead, use this argument.
[-session_config qs] Creates the configuration (metadata) storage session with
the following defaults:
Log file named BrokerConfig.qs.log with a maximum
size of 32M
Storage file named BrokerConfig.qs.stor with a
maximum size of 512M and an initial (reserved) size
of 64M
Note: When you create a Broker Server, you can select the
session configuration type. Once you do so, however,
you cannot change it afterwards.
At this time, it is not possible to convert either from a
combined storage session to separated storage sessions
(config and run-time data) or vice-versa.
Argument Description
[-session_data qs] Creates the run-time storage session with the following
files:
Log file named BrokerData.qs.log with a maximum
size of 32M.
Storage file named BrokerData.qs.stor with a
maximum size of 512M and an initial (reserved) size
of 64M.
[-qs_log_file filename identifies the fully qualified path to the file in
filename file_size] which you want Broker Server to store log data.
file_size specifies the size of the log file. Follow the
amount with K (kilobytes), M (megabytes), or G
(gigabytes).
Depending on which type of storage session you specify,
the log file name changes. The default is:
For -session_config:
-qs_log_file data_dir/BrokerConfig.qs.log 32M
For -session_data:
-qs_log_file data_dir/BrokerData.qs.log 32M
Argument Description
[-qs_storage_file filename identifies the fully qualified path to the storage
filename file_size file. Each storage session can have multiple storage files.
[reserved_size]
file_size specifies the maximum space allowed for the
storage file based on the storage session type specified,
e.g., session_config or session_data. Change the
value of file_size to increase the storage size.
reserved_size specifies the amount of storage that should
be initially allocated. This value cannot be less than 16
MB. Once you set the reserved_size, you cannot decrease
its size.
Follow the size amounts with K (kilobytes), M
(megabytes), or G (gigabytes).
Depending on which type of storage session you specify,
the storage file name changes. The default is.
For -session_config:
-qs_storage_file data_dir/BrokerConfig.qs.stor
512M 64M
For -session_data:
-qs_storage_file data_dir/BrokerData.qs.stor
512M 64M
For use_combined_storage:
-qs_storage_file data_dir/Broker.qs.stor
512M 64M
Example 1
The following example creates a new Broker Server files using port number 6840. The
required license key is abbreviated for brevity. This example uses the default storage
parameters and creates a Broker Server with separate storage files.
server_config create “C:\Program
Files\webMethods6\Broker\data\awbrokers65\server2” -k BKR-XXXX -p 6840
Example 2
The following example creates a new Broker Server using port number 7849. The required
license key is abbreviated for brevity. This example creates a Broker Server with separate
storage files:
32 megabyte log file and 2 gigabyte storage file for configuration data and
1 gigabyte log file and 30 gigabyte data file for run-time data; 5 gigabytes of the 30
gigabytes are allocated when the file is created.
server_config create “C:\Brokers\Server-7849 -k BKR-XXXX” -p 7849 \
-desc “Broker Server for manufacturing” \
-session_config qs \
-qs_log_file “C:\Brokers\Server-7849\BrokerConfig.qs.log” 32M \
-qs_storage_file “C:\Brokers\Server-7849\BrokerConfig.qs.stor” 2G \
-session_data qs \
-qs_log_file “C:\Brokers\Server-7849\BrokerData.qs.log” 1G \
-qs_storage_file “C:\Brokers\Server-7849\BrokerData.qs.stor” 30G 5G
Syntax
server_config create data_dir -k license_key
[-d description] [-p port] [-nostart] [-S]
[-session_config qs [-qs_log_file filename file_size]
[-qs_storage_file filename file_size [reserved_size]]
[use_combined_storage flag]
Arguments
Argument Description
data_dir Fully qualified path to the data directory for the Broker
Server being created. If the path includes spaces, enclose
the spacing in double quotation marks.
If the directory does not already exist, the program
creates it. The directory cannot contain a copy of the
awbroker.cfg file.
-k license_key Broker Server run-time license key.
Argument Description
[-d description] One-line description that describes the Broker Server you
are creating. If the text string includes spaces, enclose the
in double quotation marks.
The description will appear in the Broker Administrator
main window.
[-p port] The Broker Server port number. By default, the Broker
Server uses port 6849. If another Broker Server is using
that port, you must use this argument to identify the port
the Broker Server you are creating is to use.
[-nostart] By default, the command starts the Broker Server auto-
matically after it creates it. If you want to start the Broker
Server manually later instead, use this argument to pre-
vent the command from starting the Broker Server.
[-S] By default, the command writes error messages to stderr
and information messages to stdout. If you want to write
error messages to stdout and suppress information mes-
sages instead, use this argument.
[-session_config qs] Creates the combined storage session with the following
defaults:
Log file named BrokerConfig.qs.log with a maximum
size of 32M
Storage file named BrokerConfig.qs.stor with a
maximum size of 512M and an initial (reserved) size
of 64M
Note: When you create a Broker Server, you can select the
session configuration type. Once you do so, however,
you cannot change it afterwards.
At this time, it is not possible to convert either from a
combined storage session to separated storage sessions
(config and run-time data) or vice-versa.
Argument Description
[-qs_log_file filename identifies the fully qualified path to the file in
filename file_size] which you want Broker Server to store log data.
file_size specifies the size of the log file. Follow the
amount with K (kilobytes), M (megabytes), or G
(gigabytes).
The default is.
-qs_log_file data_dir/Broker.qs.log 32M
Example 1
The following example creates a new Broker Server using port number 6840. The required
license key is abbreviated for brevity. The example uses the default storage parameters
and creates a Broker Server with a combined storage file.
server_config.exe create “C:\Program
Files\webmethods6\Broker\data\awbrokers65\server2 -k BKR-XXXX” -p 6840
-use_combined_storage
Example 2
The following example creates a new Broker Server using port number 7849. The required
license key is abbreviated for brevity. This example creates a Broker Server with a
combined storage file: a 1 gigabyte log file and 30 gigabyte data file for all data; 5
gigabytes of the 30 gigabytes are allocated when the file is created.
server_config create “C:\Brokers\Server-7849” -k BKR-XXXX -p 7849 \
-desc “Broker Server for manufacturing” \
-use_combined_storage \
-session_config qs \
-qs_log_file “C:\Brokers\Server-7849\Broker.qs.log” 1G \
-qs_storage_file “C:\Brokers\Server-7849\Broker.qs.stor” 30G 5G
server_config delete
The delete subcommand removes the Broker Server configuration file, all of the data
files associated with the Broker Server (and any other file(s) residing in the directory), and
the data directory. When you execute the command to delete a Broker Server, you are
presented with configuration information for the Broker Server and prompted to
continue. Before you delete a Broker Server, make sure the Broker Server is not running.
Syntax
server_config delete data_dir [-f] [-S]
Arguments
Example
The following example deletes a Broker Server.
server_config.exe delete “C:\Program
Files\webmethods6\Broker\data\awbrokers65\server2”
server_config help
Lists all the available server_config subcommands and provides a brief explanation of
each. If you need detailed information about a subcommand, use server_config help
followed by the subcommand.
Syntax
server_config help
Example
The following example returns a description, including variables and notes, for the add
subcommand:
server_config help add
server_config list
The list subcommand contacts the Broker Server Monitor and provides a list of known
Broker Servers, their configurations, and current status. If the program cannot contact the
Broker Server Monitor, it provides a list of the configurations of known Broker Servers
from the Broker Server configuration file. This is the only subcommand to server_config
that you can use with a host other than the local host.
Syntax
server_config list [-h host]
Arguments
Argument Description
-h host Lists Broker Servers running on the specified Broker Server Host.
Example
The following lists the running Broker Servers on the host atlas.
server_config list -h atlas
server_config remove
The remove subcommand removes the Broker Server from the configuration file, but
does not remove the data directory. Therefore you can add the Broker Server back to the
configuration file at another time. When you execute the command to remove a Broker
Server, you are presented with configuration information for the Broker Server and
prompted to continue. Before you remove the Broker Server, make sure the Broker Server
is not running.
Syntax
server_config remove [-f] [-S]
Example
The following example removes a Broker Server.
server_config.exe remove “C:\Program
Files\webmethods6\Broker\data\awbrokers65\server2”
server_config start
The server_config start command starts the Broker Server.
Syntax
server_config start -h host:port
Arguments
Arguments Description
-h Displays a usage message.
host:port The name of the Broker Server to be started. If you omit the Broker
Server name, the Server on the local host is assumed. If you omit
the port number, the default port 6849 is assumed.
server_config stop
The stop subcommand stops all Brokers running on the Server, halts all document
delivery, and disconnects all clients.
To stop a Broker Server, use this command syntax:
server_config stop -h host:port
Arguments
Argument Description
-h Displays a usage message.
host:port The name of the Broker Server to be stopped. If you omit the
Broker Server name, the Server on the local host is assumed. If you
omit the port number, the default port 6849 is assumed.
server_config storage
The server_config storage subcommand configures storage sessions for a specified
Broker Server.
For a combined storage configuration, upon installation of a Broker Server, the user will
have created two separate data files: a log file, which data is first written before being
used in the second file, the storage file.
For a separate storage configuration, upon installation of a Broker Server, the user will
have created four separate data files: two log files and two storage files. One set of the
log and storage files is used for storing Broker configuration data and the other set is
used for Broker run-time data.
You can use server_config storage to change the storage file sizes.
In addition to the storage file created upon installation, you can add up to 61 additional
storage files—each with a maximum size of 32GB—to a Broker Server.
Note: You must stop the Broker Server before configuring additional storage files.
Syntax
server_config storage
[-session_config qs [-qs_log_file filename file_size]
[-qs_storage_file filename file_size [reserved_size]]
[-session_data qs [-qs_log_file filename file_size]
[-qs_storage_file filename file_size [reserved_size]]
Arguments
Argument Description
[-session_config qs] The configuration (metadata) storage session with the
following defaults:
Log file named BrokerConfig.qs.log with a maximum
size of 32M
Storage file named BrokerConfig.qs.stor with a
maximum size of 512M and an initial (reserved) size
of 64M
Note: When you create a Broker Server, you can select the
session configuration type. Once you do so, however,
you cannot change it afterwards.
At this time, it is not possible to convert either from a
combined storage session to separated storage sessions
(config and run-time data) or vice-versa.
[-session_data qs] Creates the run-time storage session with the following
files:
Log file named BrokerData.qs.log with a maximum
size of 32M.
Storage file named BrokerData.qs.stor with a
maximum size of 512M and an initial (reserved) size
of 64M.
Argument Description
[-qs_log_file filename identifies the fully qualified path to the file in
filename file_size] which you want Broker Server to store log data.
file_size specifies the size of the log file. Follow the
amount with K (kilobytes), M (megabytes), or G
(gigabytes).
Depending on which type of storage session you specify,
the log file name changes. The default is:
For -session_config:
-qs_log_file data_dir/BrokerConfig.qs.log 32M
For -session_data:
-qs_log_file data_dir/BrokerData.qs.log 32M
Argument Description
[-qs_storage_file filename identifies the fully qualified path to the storage
filename file_size file. Each storage session can have multiple storage files.
[reserved_size]
file_size specifies the maximum space allowed for the
storage file based on the storage session type specified,
e.g., session_config or session_data. Change the
value of file_size to increase the storage size.
reserved_size specifies the amount of storage that should
be initially allocated. This value cannot be less than 16
MB. Once you set the reserved_size, you cannot decrease
its size.
Follow the size amounts with K (kilobytes), M
(megabytes), or G (gigabytes).
Depending on which type of storage session you specify,
the storage file name changes. The default is.
For -session_config:
-qs_storage_file data_dir/BrokerConfig.qs.stor
512M 64M
For -session_data:
-qs_storage_file data_dir/BrokerData.qs.stor
512M 64M
For use_combined_storage:
-qs_storage_file data_dir/Broker.qs.stor
512M 64M
Example
The following example creates an additional runtime storage file for a Broker Server:
server_config storage
"C:\ProgramFiles\webmethods6\Broker\data\awbrokers65\default" \
-session_data qs \
-qs_storage_file “:\Brokers\Server-7849\BrokerData.qs.stor 30G 5G
server_config update
You can update the following configuration information for an existing Broker Server
using the server_config update subcommand:
run-time license key
Tip! On Windows, the port number is part of the service name. Hence, if you change the
port number, the program attempts to change the service name, an action that may not
succeed. To update a port number on Windows, another strategy is to use the create
subcommand to create a new Broker Server, copy the data files from the old data
directory (not including the awbroker.cfg file), and delete the old Broker Server using the
delete subcommand.
Syntax
server_config update data_dir [-k license_key] [-d description]
[-p port] [-S]
For the changes to take effect, you must restart the Broker Server. To change the port
number. You must stop the Broker Server before using the server_config program.
Arguments
Argument Description
data_dir The path to the data directory for the Broker Server you are
updating.
Use double quotes if there is spacing in the data directory path.
-k license_key The new run-time license key.
-d description A new description of the Broker Server. This optional description
appears in the Broker Administrator main window. If the text
string includes spaces, enclose it in quotation marks.
-p port A new port number to be used by the Broker. Stop the Broker
before you attempt to change the port number.
-S Silent operation. No output is shown except for warnings and
error messages.
Example
The following example updates the configuration of a Broker to use a new run-time
license key. The required license key is abbreviated here.
server_config.exe update “C:\Program
Files\webmethods6\Broker\data\awbrokers65\server2” -k BKR-XXXX
broker_buildall
Use the broker_buildall command line utility to compile all pre-webMethods 6.x
intelligent integration components and scripted operations from a Broker.
When you run the broker_buildall command line utility, it compiles all components on
the Broker that have the “Need to compile” status. If an error is encountered while
compiling, broker_buildall writes a message to the event log and continues with the
next component. You can recompile if necessary.
Syntax
broker_buildall [-force] [-output] [-h] [-?] [--] [broker@]server[:port] [-
idhelp] [id_options]
Arguments
Argument Description
-h Displays a usage message.
-? Displays usage help for Java command line options
-force Causes the tool to bypass error checking. Forces a recompile for
every Scripted Operation and Intelligent Integration Component
regardless of their state.
-output The command outputs standard output name of component being
compiled.
-- Allows the Broker name to start with the character -.
[broker@]server[: The name of the Broker Server (and optionally, the Broker and the
port] port number) on which to load the Broker information. If you omit
the Broker name, the default Broker is assumed. If you omit the
Broker Server, only syntax checking is performed on the file.
-idhelp Displays a usage message for the ID options.
Argument Description
[id_options] Provide identification needed for administrative access to Brokers
or webMethods Brokers if they are protected by Access Control
Lists (ACLs).
Using ACLs, it is possible to limit administrative access to Brokers
or webMethods Brokers. To be granted access, you must provide a
distinguished name that matches the ACL for the Broker or
webMethods Broker, as described in “Access Control Lists” on
page 167. To gain administrative access, use the following ID
options with the broker_buildall command:
-certfile Name of the certificate file to be used for this connection.
filename
-password Password for the certificate file. You will be prompted for the
password password if you omit it from the command.
-dn name The distinguished name used to provide the Identity for this
command. Optional if there is only one distinguished name in the
certificate file.
-noencrypt Do not use encryption for the connection. By default, every
connection using a certificate is encrypted.
broker_create
If you want to work from the command line, rather than from Broker Administrator, you
can use the broker_create command to create a Broker.
Syntax
broker_create -h [[--]broker[@server[:port]] [-default]
[-description text] [-createterr territory]
[-jointerr broker[@server[:port]]] [-idhelp] [id_options]
Arguments
Argument Description
-h Displays a usage message.
-- Allows the Broker name to start with the
character -.
broker[@server The name to be assigned to the Broker. Broker Server and port
[:port]] number are optional if the Broker Server is on the local host.
-default Makes the Broker the default Broker.
Argument Description
-description A one-line description of the Broker, to be displayed in Broker
text Administrator main window.
-createterr Creates a new territory and makes the new Broker the first member.
territory
-jointerr Makes the new Broker a member of the territory that the specified
broker Broker is a member of.
[@server[:port]]
-idhelp Displays a usage message for the ID options listed below.
[id_options] Provide identification needed for administrative access to Brokers
or Broker Servers if they are protected by ACLs. See the following
list of ID options.
Using ACLs, it is possible to limit administrative access to Brokers
or Broker Servers. To be granted access, you must provide a
distinguished name that matches the ACL for the Broker or Broker
Server, as described in “Access Control Lists” on page 167.
To gain administrative access, use the following ID options with the
broker_create command:
-certfile Name of the certificate file to be used for this connection.
filename
-password Password for the certificate file. You will be prompted for the
password password if you omit it from the command.
-dn name The distinguished name used to provide the Identity for this
command. Optional if there is only one distinguished name in the
certificate file.
-noencrypt Do not use encryption for the connection. By default, every
connection using a certificate is encrypted.
broker_delete
If you want to work from the command line, rather than from Broker Administrator, you
can use the broker_delete command to delete a Broker. The named Broker leaves its
territory, if it belongs to one. All client queues on the Broker are lost, all client queues are
disconnected, and the Broker, all of its document types, and client groups are deleted
permanently. By default, you are prompted to confirm this command.
syntax
broker_delete [-h] [-y] [[--] broker@server[:port]] [-idhelp] [id_options]
Arguments
Argument Description
-h Displays a usage message.
-y Implied “yes.” If this option is included, the command does not
prompt for confirmation before deleting the Broker.
-- Allows the Broker name to start with the
character -.
broker@server The name of the Broker to be deleted and the Broker Server on
[:port] which it resides. If you do not specify the port number, the default
port is assumed.
-idhelp Displays a usage message for the ID options listed below.
[id_options] Provide identification needed for administrative access to Brokers
or webMethods Brokers if they are protected by ACLs.
Using ACLs, it is possible to limit administrative access to Brokers
or webMethods Brokers. To be granted access, you must provide a
distinguished name that matches the ACL for the Broker or
webMethods Broker, as described in “Access Control Lists” on
page 167. To gain administrative access, use the following ID
options with the broker_delete command:
-certfile Name of the certificate file to be used for this connection.
filename
-password Password for the certificate file. You will be prompted for the
password password if you omit it from the command.
-dn name The distinguished name used to provide the Identity for this
command. Optional if there is only one distinguished name in the
certificate file.
-noencrypt Do not use encryption for the connection. By default, every
connection using a certificate is encrypted.
broker_load
Use the broker_load program, from the command line, to import Broker data from a file
to a Broker:
Note: If the import file contains a new SSL configuration, you may need stop and restart
the Broker Server for the configuration to take effect. In such cases, the broker_load
program prompts for whether or not you want to stop and restart the Broker Server at
that time. Also, if the import file does not contain the password for the certificate file, you
are prompted for it.
Important! The broker_load program divides large files into 2MB pieces. The pieces are
then imported sequentially to the Broker and reassembled. If an error occurs during this
process, some document types may still be loaded, that is, the file may be partially
loaded if there is an error and the Broker is left in a partially updated state.
Syntax
broker_load [-h] input_file [-force] [-merge] [-write output_file]
[[--] [broker@]server[:port]] [-idhelp] [id_options]
Arguments
Argument Description
-h Displays a usage message.
input_file The file you saved the Broker configuration information to using
the broker_save command.
-force Causes the tool to bypass error checking.
-write The command writes a copy of the definitions in the input file to
output_file the specified output file using the latest revision of the export file
format. If no output file is specified, the only output is syntax
errors.
-- Allows the Broker name to start with the
character -.
[broker@]server[: The name of the Broker Server (and optionally, the Broker and the
port] port number) on which to load the Broker information. If you omit
the Broker name, the default Broker is assumed. If you omit the
Broker Server, only syntax checking is performed on the file.
-idhelp Displays a usage message for the ID options listed below.
Argument Description
[id_options] Provide identification needed for administrative access to Brokers
or webMethods Brokers if they are protected by Access Control
Lists (ACLs).
Using ACLs, it is possible to limit administrative access to Brokers
or webMethods Brokers. To be granted access, you must provide a
distinguished name that matches the ACL for the Broker or
webMethods Broker, as described in “Access Control Lists” on
page 167. To gain administrative access, use the following ID
options with the broker_load command:
-certfile filename
broker_ping
Use the broker_ping command to send system ping documents through a Broker. If the
document passes through the Broker Server and returns to broker_ping, a positive
message is printed. By default, one document is sent. If no document returns, a negative
message is printed. The broker_ping command has the following syntax:
broker_ping [-h] [-s] [-c count] [-remote [/territory/]broker2]
[[--] [broker@]host[:port]] [-idhelp] [id_options]
Using Access Control Lists (ACL), it is possible to limit administrative access to Brokers or
Broker Servers. To be granted access, you must provide a distinguished name that
matches the ACL for the Broker or Broker Server, as described in “Access Control Lists”
on page 167. To gain administrative access, use the following ID options with the
broker_ping command:
-certfile filename Name of the certificate file to be used for this connection.
-password password Password for the certificate file. You will be prompted for
the password if you omit it from the command.
-dn name The distinguished name used to provide the Identity for
this command. Optional if there is only one distinguished
name in the certificate file.
-noencrypt Do not use encryption for the connection. By default, every
connection using a certificate is encrypted.
To ping the Broker Gamma, which is in the territory T-2, across a territory gateway, the
command is:
broker_ping -remote /T-2/Gamma Alpha@atlas
To use broker_ping across a territory gateway, the document type Broker::Ping must be
shared across the gateway. For more information about sharing documents across
territory gateways, see “Territory Gateways” on page 142.
broker_save
Use the broker_save program from the command line to save Broker configuration
information for a specified Broker to a file.
-broker include the Brokers configuration (description,
territory, and any gateways) in the save file,
the default is to exclude it from the save file.
-server include the Servers configuration (SSL identity
and an Access Control List) in the save file,
the default is to exclude it from the save file.
-native write unicode characters using the native file format
(which results in language-dependent file that
may be easier to edit and use locally)
Syntax
broker_save [-h] [-broker] [-server] [-native] output_file
[[--] [broker@]server[:port]] [-idhelp] [id_options]
Arguments
Argument Description
-h Displays a usage message.
-broker Includes the Broker’s configuration in the save file. The
configuration information includes: description, territory, and any
gateways. The default is to exclude it from the file.
-server Includes the Broker Server’s SSL configuration and logging options
in the save file. The default is to exclude them from the file.
-native Write Unicode characters using the native file format.
-- Allows the Broker name to start with the character -.
[broker@]server The name of the Broker Server (and optionally, the Broker and port
[:port] number) from which to save the Broker information. If you omit the
Broker name, the default Broker is assumed.
-idhelp Displays a usage message for the ID options listed below.
[id_options] Provide identification needed for administrative access to Brokers or
webMethods Brokers if they are protected by ACLs.
Using ACLs, it is possible to limit administrative access to Brokers or
webMethods Brokers. To be granted access, you must provide a
distinguished name that matches the ACL for the Broker or
webMethods Broker, as described in “Access Control Lists” on
page 167. To gain administrative access, use the following ID options
with the broker_save command:
-certfile filename
Name of the certificate file to be used for this connection.
-password password
Password for the certificate file. You will be prompted for
the password if you omit it from the command.
-dn name
The distinguished name used to provide the Identity for this
command. Optional if there is only one distinguished name
in the certificate file.
-noencrypt
Do not use encryption for the connection. By default, every
connection using a certificate is encrypted.
Note: Document types, client groups, and clients are always included in the save file.
Examples
To save a configuration file for each server and each Broker in the configuration, use:
For Broker Servers:
broker_save -server alpha.adl Alpha
broker_save -server beta.adl Beta
For Brokers:
broker_save -BrokerA.adl Broker A@Alpha
broker_save -BrokerB.adl Broker B@Alpha
broker_save -BrokerC.adl Broker C@Beta
broker_save -BrokerD.adl Broker D@Beta
The preceding examples of the broker_save command do not show a full pathname for
the ADL file and do not include (optional) SSL identification options.
broker_stop
The broker_stop command stops all Brokers running on the Broker Server, halts all
document delivery, and disconnects all clients.
Syntax
broker_stop [-h] [-idhelp] [-y] [server[:port]] [id_options]
Arguments
Argument Description
-h Displays a usage message.
-idhelp Displays a usage message for the ID options listed below.
-y Implied “yes.” If this option is included, the command does not
prompt for confirmation before stopping the Broker Server.
Argument Description
server[:port] The name of the Broker Server you want to stop. If you omit the
Broker Server name, the Broker Server on the local host is
assumed. If you omit the port number, the default port 6849 is
assumed.
[id_options] Provide identification needed for administrative access to Brokers
or Broker Servers if they are protected by ACLs. See the following
list of ID options.
Using ACLs, it is possible to limit administrative access to Brokers
or Broker Servers. To be granted access, you must provide a
distinguished name that matches the ACL for the Broker or Broker
Server, as described in “Access Control Lists” on page 167.
To gain administrative access, use the following ID options with
the broker_stop command:
-certfile filename
broker_start
The broker_start command starts the Broker Server.
Syntax
broker_start [-h] [server[:port]]
Arguments
Argument Description
-h Displays a usage message.
[server[:port] The name of the Broker Server you want to start. If you omit the
Broker Server name, the Broker Server on the local host is
assumed. If you omit the port number, the default port 6849 is
assumed.
To shut down a Broker Server (awbrokermon and awbroker processes) on Solaris, HP-UX,
and Windows platforms, use the commands described in the following sections.
Note: On Solaris, you can only run these commands as user root or user bin. These
commands can only shut down webMethods Broker processes on the local machine.
This command stops the webMethods Broker processes, awbrokermon and awbroker.
To restart the webMethods Broker processes, enter this command:
/etc/rc3.d/S45broker65 start
Note: On HP-UX, you can only run these commands as user root or user bin. These
commands can only shut down webMethods Broker processes on the local machine.
This command stops the webMethods Broker processes, awbrokermon and awbroker.
To restart the webMethods Broker processes, enter this command:
/sbin/rc3.d/S45broker65 start
broker_status
The broker_status command displays statistics from the command line for a specific
Broker. The statistics displayed include Broker status, document delivery statistics, and
client statistics.
Syntax
broker_status [-h] [-idhelp] [id_options] [broker@]server[:port] ...
Arguments
Argument Description
-h Displays a usage message.
-idhelp Displays a usage message for the ID options listed below.
[id_options] Provide identification needed for administrative access to
Brokers or webMethods Brokers if they are protected by Access
Control Lists (ACLs).
Using ACLs, it is possible to limit administrative access to
Brokers or webMethods Brokers. To be granted access, you
must provide a distinguished name that matches the ACL for
the Broker or webMethods Broker, as described in “Access
Control Lists” on page 167. To gain administrative access, use
the following ID options with the broker_status command:
-certfile Name of the certificate file to be used for this connection.
filename
-password Password for the certificate file. You will be prompted for the
password password if you omit it from the command.
-dn name The distinguished name used to provide the Identity for this
command. Optional if there is only one distinguished name in
the certificate file.
-noencrypt Do not use encryption for the connection. By default, every
connection using a certificate is encrypted.
[broker@]server[:port] The name of the webMethods Broker (and optionally, the
Broker and port number) from which to receive status. If you
omit the Broker name, the Broker Server sends the status of all
Brokers.
1 Open the Server Administrator by clicking Administration in the banner area of Broker
Administrator.
2 In the Settings menu of the navigation area, click Resources.
3 Click Edit Resource Settings.
4 In the Session Timeout field, increase the number of minutes you want the server to
wait before terminating a session.
5 Click Save Changes.
For more information about the setting the Session Timeout limit, see the webMethods
Integration Server Administrator’s Guide.
Importing a Large ADL File Using the broker_load Command Line Utility
Replace filename with the name of the output .adl file and replace broker@server:port
with the name of the Broker Server (and optionally, the Broker and port number)
from which to save the Broker information. If you omit the Broker name, the default
Broker is assumed.
Example:
broker_save LargeFile.adl hercules:7000
Replace directory and filename with the location and the name of the .adl file. Replace
broker@server:port with the name of the Broker Server (and optionally, the Broker and
the port number) on which to load the Broker information. If you omit the Broker
name, the default Broker is assumed.
Example:
broker_load -Xmx256M \webMethods6\Broker\bin\LargeFile.adl atlas:6849
For more broker_load command line options, see “broker_load” on page 257.
Each: Uses:
To change the limit on the maximum number of threads per process, use the
max_thread_proc kernel parameter in the HP-UX System Administration Manager
(SAM). For more information on SAM, see your HP-UX documentation.
1 Ensure that the webMethods Broker, the Integration Server, and Broker
Administrator are installed on the local machine. Refer to the webMethods Installation
Guide for detailed instructions.
2 On the same machine, configure a Broker Server using the name “localhost” instead
of the hostname or IP address of the machine. Creating Broker Server localhost,
allows the machine to be disconnected from the network at anytime without
generating errors.
Tip! With Broker Administrator you can create multiple instances of a single Broker
Server. For example, you can create a Broker Server instance using its actual hostname
so that it is available on the network and create another instance of the same Broker
Server using “localhost” as its hostname so that it is available offline. For more
information, see “Working with Multiple Instances of a Single Broker Server” in the
next section.
Important! If you have multiple instances of a single Broker Server, please note that it will
cause redundancies in the Territories List and Join Territory pages; that is, the same
territories will be listed multiple times.
Storage types The Broker Server’s Persistent and Guaranteed storage files
each have a fixed maximum size. See “Client Queue Storage
Types” on page 95 and “Maximum Storage File Size” on
page 96.
Client Group life A document with an explicit destroy life cycle remains in a
cycle client queue until the receiving client pulls it from the queue.
See “Life Cycle Properties” on page 95.
Memory resources Factors such as the amount of physical memory and swap
space can determine how quickly documents pass through a
Broker. For information tuning your webMethods Broker
system for performance, see the webMethods Installation Guide
Thread limits on For HP-UX systems, see “Setting Maximum Thread Limit for
HP-UX HP-UX” on page 269.
A Broker Server might easily support over 30 Brokers if each Broker handles light traffic.
A few Brokers, each handling a high volume of large documents, may tax the Broker
Server’s capacity. For information about monitoring Broker Server usage, see “Monitoring
webMethods Broker Server Usage” on page 48.
To view messages on Windows, use the Document Viewer and select File, Application.
Access Control List A list of SSL certificates that define those entities which
(ACL) may access a Broker or create a client within a particular
client group.
ActiveWorks A file format that allows you to define the characteristics
Definition Language of any webMethods Broker object, such as a Broker,
(ADL) Broker Server, client group, client, or a document type.
adapter A program that connects resources to documents.
Adapters translate information between the format
required by the resource and the common document
format. Adapters are hosted by the Integration Server.
ANSI string A string of 8-bit, ISO-Latin-1 characters. See also, UTF-8.
authentication The process of identifying the sender of the data so other
people cannot pretend to be you or pretend to be the
server you are accessing. The encryption is done
through secure sockets.
AWT Abstract Windowing Toolkit, the GUI toolkit that is
included with the Java Development Kit.
Broker A part of the Broker Server process, providing services
such as receiving, queuing, and delivering documents.
One or more Brokers can exist on a Broker Server. Each
Broker can have any number of document types, client
groups, and clients associated with it; they also share
process and storage space with other Brokers. Brokers
can be added to or leave territories.
See also, territory, territory gateway, and remote Broker.
an application name
a client group
a subscription list
a storage type
a private key.
Your public key can be freely distributed, while your
private key is kept secret. Other users may encrypt
messages they send to you using your public key and
only the holder of your private key, you, will be able to
decrypt the message. A user’s private key cannot be
derived from their public key. See also, encryption
publish To transmit a document to a Broker for use by
subscribers. An application publishes a document by
creating a document data structure or object (depending
on the application language) and then invoking its
adapter’s publishing operation. Adding and deleting
publishers has no impact on subscribers. See also, deliver.
RDBMS Relational database management system, such as
ORACLE, SYBASE, or INFORMIX.
remote Broker Another Broker in the same territory or in a territory that
is accessible through a territory gateway. From the
standpoint of a particular Broker, all other Brokers in the
territory are remote.
reply document The result of a request for data. If a request document
returns any results, these results are delivered to the
client as a reply document.
A rollback 282
Abstract Windowing Toolkit (AWT), definition 275 savepoint 282
access control setting up Broker Server 23
access labels 195 SSL configuration 171
list, See ACL subscription filter strings 111
security 195 transaction 283
Access Control List, See ACL Adapters view 29
access label 195 Add Known Broker Server option 45
ALA communication 199 adding
control label 198 Broker Server
definition 196 to Broker Administrator
process 201 multiple instances 270
receipt label 198 Broker Server to Broker Servers view 45
source label 197 Broker to Broker Administrator display 45
Access Label Adapter (ALA) 195 Can Publish permission 100
as part of access label process 201 Can Subscribe permission 100
definition 199 client filters 115
failure mode 201 more queue storage 251
acked documents 131 multiple Broker Servers to Broker Administrator 46
ACL ADL (ActiveWorks Definition Language) 76, 81
client group 177 default exported elements 79
definition 275 default imported elements 80
territories 178 definition 81
territory gateways 180 export/import feature 76, 78, 82
ACTIVESW.MIB file 51 exporting to ADL file 76
ActiveWorks Definition Language (ADL) 275 file formats 81
adapter files 55
ALA 195 admin client group 177
and deleting client group 104 administrative access to Broker 169
commit 277 ANSI string, definition 275
dbAdapter 278 applications, uninstalling 71
definition 275 arithmetic operators for filters 160
explicit destroy 95 assigning
gateway filter 159 Can Publish and Can Subscribe permissions 100
information on Broker Server Information page 34 default status to a Broker 67
language 121 Log Publish and Log Acknowledge permissions 102
load balancing 281 properties to client group 20
mutliple sessions 122 async storage configuration flag 57
request document 282 asynchronous write mode 57
E F
enabling failure mode, ALA 201
access control files
for client group ACL 177
ACTIVESW.MIB 51
for territory SSL 179
ADL 55
authentication
formats 81
for client group ACL 177
awbroker.cfg 57
for territory SSL 179
awbrokermon.cfg 58, 59
Broker Monitor logging 60
state sharing for Broker client 117 Broker Monitor’s configuration file 58
static gateway forwarding 153 Broker Server List 46
W
WARNINGS
broker_load program, large files 257
import file command, large files 80
webMethods Broker
Administrator, see Broker Administrator 20
definition 284
implementing SSL 170
scalability 271
system, shutting down 62
using SSL with 167
webMethods Enterprise resource, definition 284
webMethods JMS Administrator 22, 205–226
Broker selection 210
connection factories 212
destinations 212
JNDI provider selection 207
queue connection factories 213
queues 217
staring 206
topic connection factories 220
topics 223
Windows platform
Broker Monitor logging 59
command line utilities 21
default data files location 231
error messages log file 273
Event Log, Broker Administrator 51
shutting down Broker Server on 64
Windows Services
dialog box 61
starting server 61
stopping server 61