Creating Transacted Sessions in the PubSub+ JCSMP API

A client using the PubSub+ JCSMP API can create one or more transacted sessions within an existing session. A transacted session always has exactly one active transaction. Once a transacted session is created, a transaction automatically begins within that transacted session.

Within a transacted session, a client can create a maximum of one producer flow to publish messages (refer to Publishing Messages in Transactions in the PubSub+ JCSMP API) and a maximum of 256 consumer flows to consume messages (refer to Consuming Messages in Transactions in the PubSub+ JCSMP API.

For the PubSub+ JCSMP API, a producer flow and/or a consumer flow must be specifically invoked within the transacted session.

To invoke a producer flow, call createProducer(...).

To invoke a consumer flow, call createConsumer(...).

To create a transacted session, use JCSMPSession.createTransactedSession().