1/13
Contents
Title and Copyright Information
Preface
Documentation Accessibility
Conventions
1
Introduction and Roadmap
Document Scope and Audience
Guide to This Document
Related Documentation
JMS Samples and Tutorials for the JMS Administrator
Avitek Medical Records Application (MedRec) and Tutorials
JMS Examples in the WebLogic Server Distribution
WebLogic Server Value-Added JMS Features
Enterprise-Grade Reliability
Enterprise-Level Features
Performance
Tight Integration with WebLogic Server
Interoperability With Other Messaging Services
New and Changed JMS Features
WebLogic Server 10.3.4.0 New and Changed Features
WebLogic Server 10.3.3.0 New and Changed Features
WebLogic Server 10.3.2.0 New and Changed Features
2
Understanding JMS Resource Configuration
Overview of JMS and WebLogic Server
What Is the Java Message Service?
WebLogic JMS Architecture and Environment
Domain Configuration
What Are JMS Configuration Resources?
Overview of JMS Servers
JMS Server Behavior in WebLogic Server 9.x and Later
Overview of JMS Modules
JMS System Modules
JMS Application Modules
Comparing JMS System Modules and Application Modules
Configurable JMS Resources in Modules
JMS Schema
JMS Interop Modules
Other Environment-Related System Resources for WebLogic JMS
Persistent Stores
JMS Store-and-Forward (SAF)
Path Service
Messaging Bridges
3
Configuring Basic JMS System Resources
Methods for Configuring JMS System Resources
Main Steps for Configuring Basic JMS System Resources
Advanced Resources in JMS System Modules
JMS Configuration Naming Requirements
JMS Server Configuration
JMS Server Configuration Parameters
JMS Server Targeting
JMS Server Monitoring Parameters
Session Pools and Connection Consumers
JMS System Module Configuration
JMS System Module and Resource Subdeployment Targeting
Default Targeting
Advanced (Subdeployment) Targeting
Connection Factory Configuration
Using a Default Connection Factory
Connection Factory Configuration Parameters
Connection Factory Targeting
Queue and Topic Destination Configuration
Queue and Topic Configuration Parameters
Creating Error Destinations
Creating Distributed Destinations
Queue and Topic Targeting
Destination Monitoring and Management Parameters
JMS Template Configuration
JMS Template Configuration Parameters
Destination Key Configuration
Quota Configuration
Foreign Server Configuration
Distributed Destination Configuration
JMS Store-and-Forward (SAF) Configuration
4
Configuring Advanced JMS System Resources
Configuring WebLogic JMS Clustering
Advantages of JMS Clustering
How JMS Clustering Works
JMS Clustering Naming Requirements
Distributed Destination Within a Cluster
JMS Services As a Migratable Service Within a Cluster
Configuration Guidelines for JMS Clustering
What About Failover?
Migration of JMS-related Services
Automatic Migration of JMS Services
Manual Migration JMS Services
Persistent Store High Availability
Using the WebLogic Path Service
Path Service High Availability
Implementing Message UOO With a Path Service
Configuring Foreign Server Resources to Access Third-Party JMS Providers
How WebLogic JMS Accesses Foreign JMS Providers
Creating Foreign Server Resources
Creating Foreign Connection Factory Resources
Creating a Foreign Destination Resources
Sample Configuration for MQSeries JNDI
Configuring Distributed Destination Resources
Uniform Distributed Destinations vs. Weighted Distributed Destinations
Creating Uniform Distributed Destinations
Targeting Uniform Distributed Queues and Topics
Pausing and Resuming Message Operations on UDD Members
Monitoring UDD Members
Configuring Partitioned Distributed Topics
Creating Weighted Distributed Destinations
Load Balancing Messages Across a Distributed Destination
Load Balancing Options
Consumer Load Balancing
Producer Load Balancing
Load Balancing Heuristics
Defeating Load Balancing
Distributed Destination Load Balancing When Server Affinity Is Enabled
Distributed Destination Migration
Distributed Destination Failover
Configure an Unrestricted ClientID
Configure Shared Subscriptions
5
Configuring JMS Application Modules for Deployment
Methods for Configuring JMS Application Modules
JMS Schema
Packaging JMS Application Modules In an Enterprise Application
Creating Packaged JMS Application Modules
Packaged JMS Application Module Requirements
Main Steps for Creating Packaged JMS Application Modules
Sample of a Packaged JMS Application Module In an EJB Application
Packaged JMS Application Module References In weblogic-application.xml
Packaged JMS Application Module References In ejb-jar.xml
Packaged JMS Application Module References In weblogic-ejb-jar.xml
Packaging an Enterprise Application With a JMS Application Module
Deploying a Packaged JMS Application Module
Deploying Standalone JMS Application Modules
Standalone JMS Modules
Creating Standalone JMS Application Modules
Standalone JMS Application Module Requirements
Main Steps for Creating Standalone JMS Application Modules
Sample of a Simple Standalone JMS Application Module
Deploying Standalone JMS Application Modules
Tuning Standalone JMS Application Modules
Generating Unique Runtime JNDI Names for JMS Resources
Unique Runtime JNDI Name for Local Applications
Unique Runtime JNDI Name for Application Libraries
Unique Runtime JNDI Name for Standalone JMS Modules
Where to Use the ${APPNAME} String
Example Use-Case
6
Using WLST to Manage JMS Servers and JMS System Module Resources
Understanding JMS System Modules and Subdeployments
How to Create JMS Servers and JMS System Module Resources
How to Modify and Monitor JMS Servers and JMS System Module Resources
Best Practices when Using WLST to Configure JMS Resources
7
Interoperating with Oracle AQ JMS
Overview
Using AQ Destinations as Foreign Destinations
Driver Support
Transaction Support
Oracle RAC
MBean and Console Support
Migrating from OC4J
Configuring WebLogic Server to Interoperate with AQ JMS
Configure Oracle AQ in the Database
Create Users and Grant Permissions
Create AQ Queue Tables
Create a JMS Queue or Topic
Start the JMS Queue or Topic
Configure WebLogic Server
Configure a WebLogic Data Source
Configure a JMS System Module
Configure a JMS Foreign Server
Configure JMS Foreign Server Connection Factories
Configure AQ JMS Foreign Server Destinations
Programming Considerations
Message Driven Beans
AQ JMS Extensions
Resource References
JDBC Connection Utilization
Oracle RAC Support
Debugging
Performance Considerations
Advanced Topics
Security Considerations
Configuring AQ Destination Security
Access to JNDI Advertised Destinations and Connection Factories
Controlling Access to Destinations that are Looked Up using the JMS API
WebLogic Messaging Bridge
Create a Messaging Bridge Instance
Stand-alone WebLogic AQ JMS Clients
Configure a Foreign Server using a Database's JDBC URL
Limitations when using Stand-alone WebLogic AQ JMS Clients
Related Documentation
8
Monitoring JMS Statistics and Managing Messages
Monitoring JMS Statistics
Monitoring JMS Servers
Monitoring Active JMS Destinations
Monitoring Active JMS Transactions
Monitoring Active JMS Connections, Sessions, Consumers, and Producers
Monitoring Active JMS Session Pools
Monitoring Queues
Monitoring Topics
Monitoring Durable Subscribers for Topics
Monitoring Uniform Distributed Queues
Monitoring Uniform Distributed Topics
Monitoring Pooled JMS Connections
Managing JMS Messages
JMS Message Management Using Java APIs
JMS Message Management Using the Administration Console
Monitoring Message Runtime Information
Querying Messages
Moving Messages
Deleting Messages
Creating New Messages
Importing Messages
Exporting Messages
Managing Transactions
Managing Durable Topic Subscribers
9
Best Practices for JMS Beginners and Advanced Users
Configuration Best Practices
Configure JMS Servers and Persistent Stores.
Configure a JMS Module
Configure JMS Resources
Configure SAF Agents, Stores, and Imported Destination
Targeting Best Practices
Integration and Multi-Domain Best Practices
Understanding WebLogic JMS Client Options
Understanding WebLogic URLs
URL syntax
Strict Message Ordering Best Practices
High Availability Best Practices
Distributed Queues vs Distributed Topics
JMS Performance and Tuning
10
Troubleshooting WebLogic JMS
Configuring Notifications for JMS
Debugging JMS
Enabling Debugging
Enable Debugging Using the Command Line
Enable Debugging Using the WebLogic Server Administration Console
Enable Debugging Using the WebLogic Scripting Tool
Changes to the config.xml File
JMS Debugging Scopes
Messaging Kernel and Path Service Debugging Scopes
Request Dyeing
Message Life Cycle Logging
Events in the JMS Message Life Cycle
Message Log Location
Enabling JMS Message Logging
JMS Message Log Content
JMS Message Log Record Format
Sample Log File Records
Consumer Created Event
Consumer Destroyed Event
Message Produced Event
Message Consumed Event
Message Expired Event
Retry Exceeded Event
Message Removed Event
Managing JMS Server Log Files
Rotating Message Log Files
Renaming Message Log Files
Limiting the Number of Retained Message Log Files
Controlling Message Operations on Destinations
Definition of Message Production, Insertion, and Consumption
Pause and Resume Logging
Production Pause and Production Resume
Pausing and Resuming Production at Boot-time
Pausing and Resuming Production at Runtime
Production Pause and Resume and Distributed Destinations
Production Pause and Resume and JMS Connection Stop/Start
Insertion Pause and Insertion Resume
Pausing and Resuming Insertion at Boot Time
Pausing and Resuming Insertion at Runtime
Insertion Pause and Resume and Distributed Destination
Insertion Pause and Resume and JMS Connection Stop/Start
Consumption Pause and Consumption Resume
Pausing and Resuming Consumption at Boot-time
Pausing and Resuming Consumption at Runtime
Consumption Pause and Resume and Queue Browsers
Consumption Pause and Resume and Distributed Destination
Consumption Pause and Resume and Message-Driven Beans
Consumption Pause and Resume and JMS Connection Stop/Start
Definition of In-Flight Work
In-flight Work Associated with Producers
In-flight Work Associated with Consumers
Order of Precedence for Boot-time Pause and Resume of Message Operations
Security
Scripting on this page enhances content navigation, but does not change the content in any way.