Install the compiled runtime files for your user-defined extension
on the broker on which you want to test its function.
This
task instructs you to stop and restart brokers. This action is
required in all but the two circumstances described in step 4 below, although
if you do stop and restart the broker, you can ensure that anyone with an
interest in a particular execution group is made aware that recent changes
have been made.
To install runtime files on the broker:
- Stop the broker on which you want to install your compiled or packaged
user-defined extension file (files with extension .lil, .jar, .par, .pdb, or .lel)
- Create a directory if you haven't already got one for this purpose.
Add the directory to the LILPATH by using the mqsichangebroker command.
CAUTION:
Do not put the .lil, .jar, .par, .pdb, or .lel files in the WebSphere Message Broker installation
directory, because they could be overwritten by the broker.
- Put your user-defined file in the directory, and make sure that
the broker has access to it. For example, on UNIX, use the chmod
755* command on the file.
- Stop and restart the broker to implement the
change and to ensure that the existence of the new file is detected. A broker restart is not necessary in the following circumstances:
- If you have created an execution group in the workbench,
and nothing is yet deployed to it, you can add the .lil, .pdb, .jar, .par, or .lel file to your chosen directory.
- If something has already been deployed to the execution group that you
want to use, add the .lil, .pdb, .jar, .par,
or .lel file to your chosen directory, and issue the mqsireload command to restart the group.
You cannot overwrite an existing file on the Windows platform when the broker
is running, because of the file lock that is put in place by the operating
system.
Use these two approaches with care, because any execution group that
is connected to the same broker also detects the new .lil, .pdb, .jar, .par, or .lel files when that execution group restarts,
or when something is first deployed to that execution group.
- Repeat the above steps for every broker that needs the user-defined
extension file. If all of your brokers are on the same machine type, you can
build the user-defined extension file once and distribute it to each of your
systems.
If you have a cluster, for example, that includes one AIX, one Solaris,
and one Windows broker, you must build
the files separately on each machine type.
On
Windows, the .pdb file provides symbolic information
that is used when displaying stack diagnostic information in the event of
access violations or other software malfunctions.
- For C user-defined extensions, store the .pdb file
in the same directory as the .lil file to which it corresponds.
- Use either the mqsichangebroker command
or the mqsicreatebroker command,
as appropriate, to specify to the broker the directory that contains the user-defined
extension file.
When you have installed a user-defined extension,
it is referred to by its schema and name, just like a message flow.
The broker loads the user-defined extension files during initialization.
After loading the files, the broker invokes the registration functions in
the user-defined extension and records what nodes or parsers the user-defined
extension supports.
A C user-defined
extension implements a node or parser factory that can support multiple nodes
or parser types. For more information refer to node
and parser factory behavior. Java users do not need to write a node
factory.