# Message Broker Controls

Note: The Message Broker controls are available in WebLogic Workshop only if you are licensed to use WebLogic Integration.

Messaging systems are often used in enterprise applications to communicate with legacy systems, or for communication between software components. A client of a messaging system can send messages to, and receive messages from, any other client.

The Message Broker resource provides a publish and subscribe message-based communication model for WebLogic Integration business processes, and includes a powerful message filtering capability.

The Message Broker provides typed channels, to which messages can be published, and to which services can subscribe to receive messages. You can design a business process to subscribe to specific channels, using XML Beans for type-safe methods.

Subscribers to Message Broker channels can filter messages on the channels using XQuery filters. WebLogic Integration supports a powerful mapping tool that allows you to create XQuery filters for channels. Business processes can filter documents on channels, based on document type or document content. For example, you can design a filter that filters on stock symbol documents, or one that filters on a specific purchase order number.

In addition to business processes that can publish messages to Message Broker channels, WebLogic Integration supports event generators, which can publish external events to message broker channels. WebLogic Integration provides native event generators, including Email, File, HTTP, JMS, MQ, and Timer event generators. These event generators allow you to start or continue a business process based on events, such as the receipt of email or a new file appearing in a directory. WebLogic Integration also works with Application View event generators, which work with J2EE-CA connectors. To learn about creating and managing event generators using the WebLogic Integration Administration Console, see Event Generators in Managing WebLogic Integration Solutions at the following URL:
http://edocs.bea.com/wli/docs81/manage/evntgen.html

To learn more about defining channels, publishing or subscribing to channels, and creating subscription filters, see:

- Publishing and Subscribing to Channels
- "Note About Static and Dynamic Subscriptions" in @jpd:mb-static-subscription Annotation

You can customize Message Broker controls in several ways. You may modify the properties of the control. These modifications is described in more detail in the sections that follow.

You can use the ControlContext Interface for access to a control's properties at run time and for handling control events. Property values set by a developer who is using the control are stored as annotations on the control's declaration in a JWS, JSP, or JPD file, or as annotations on its interface, callback, or method declarations in a JCX file.

## Topics Included in This Section

- Message Broker Publish Control
- Message Broker Subscription Control
- Using Event Generators to Publish to Message Broker Channels