Installing a user-defined extension on a broker domain

Before you start

You must have a compiled user-defined extension, which was compiled using the procedure described in Compiling a Java user-defined node, or Compiling a C user-defined extension.

  1. Put a copy of your compiled or packaged user-defined extension file on every broker system from which you intend to use it.

    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 (see Distributing a user-defined extension for details of how to do this). If you have a cluster that consists of one AIX, one Solaris, and one Windows broker, you must build the files separately on each machine type.

    Use either the mqsichangebroker command or the mqsicreatebroker command to specify to the broker the directory that contains the user-defined extension file.
    Note: Do not save the .lil or .jar file in the WebSphere Message Broker install directory.

    For C user-defined extensions, it is recommended that the .pdb file, which corresponds to the .lil file, is also stored in the chosen directory. The .pdb file provides symbolic information that is used by WebSphere Message Broker when displaying stack diagnostic information in the event of access violations or other software malfunctions.

  2. Stop and start each broker. This is to ensure that the existence of a new file is detected.
    There are two situations where a broker restart is not necessary:
    • If you have created an execution group in the Toolkit, and there is nothing yet deployed to it, you can add the .lil, .pdb, and .jar file to your chosen directory.
    • If something has already been deployed to the execution group you that want to use, add the .lil, .pdb, and .jar file to your chosen directory and then use the mqsireload command to restart the group. It is not possible to 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.
    These two approaches should be used with caution because any execution group that is connected to the same broker will also detect the new .lil, .pdb, and .jar files when that execution group is restarted, or when something is first deployed to that execution group. By using the more conventional way of restarting the broker, you ensure that anyone with an interest in a particular execution group is made aware that recent changes have been made to the broker.

    These two situations assume that you have already completed the previous step, and have therefore used either the mqsichangebroker command or the mqsicreatebroker command to notify the broker of the directory in which the user-defined extension files have been placed.

    When you have installed a user-defined node, it is referred to by its schema and name, just like a message flow.

Related concepts
User-defined extensions
User-defined extensions in the runtime environment
Related tasks
Developing user-defined extensions
Creating the user interface representation of a user-defined node in the workbench
Testing a user-defined node
Distributing a user-defined extension
Related reference
User-defined extensions
mqsichangebroker command
mqsicreatebroker command
mqsireload command