Data Connection Properties
This section discusses JMS properties associated with the JMS connection to the event broker.
Authentication Scheme
This property specifies the authentication scheme.
- Supported by: For basic and client certificate authentication schemes, event brokers running Solace PubSub+ version 6.1 and higher. For a Kerberos authentication scheme, event brokers running Solace PubSub+ version 7.0 and higher. For an OAuth authentication scheme, event brokers running Solace PubSub+ version 9.13.1 and higher.
- Type: String
- Format must be one of the following:
SupportedProperty.AUTHENTICATION_SCHEME_BASIC
(username/password authentication). This is the default authentication scheme.SupportedProperty.AUTHENTICATION_SCHEME_CLIENT_CERTIFICATE
(Client Certificate Authentication)SupportedProperty.AUTHENTICATION_SCHEME_GSS_KRB
(Kerberos)SupportedProperty.AUTHENTICATION_SCHEME_OAUTH2
(OAuth 2.0)
- Default:
SupportedProperty.AUTHENTICATION_SCHEME_BASIC
This property applies to both the JNDI and data connections.
Property Source (in descending priority) | Example |
---|---|
Initial Context |
The example below shows how to enable Client Certificate authentication. env.put(SupportedProperty.SOLACE_JMS_AUTHENTICATION_SCHEME, SupportedProperty.AUTHENTICATION_SCHEME_CLIENT_CERTIFICATE); |
JNDI Properties File |
Solace_JMS_Authentication_Scheme=AUTHENTICATION_SCHEME_BASIC Solace_JMS_Authentication_Scheme=AUTHENTICATION_SCHEME_GSS_KRB Solace_JMS_Authentication_Scheme=AUTHENTICATION_SCHEME_CLIENT_CERTIFICATE Solace_JMS_Authentication_Scheme=AUTHENTICATION_SCHEME_OAUTH2 |
Browser Timeout
This property specifies the maximum time in milliseconds for a QueueBrowser Enumeration.hasMoreElements()
to wait for a message to arrive in the Browser’s local message buffer before returning. If there is already a message waiting, Enumeration.hasMoreElements()
returns immediately.
- Supported by: Solace JMS API version 6.2 or higher.
- Type: Integer
- Format: Any value. Default is -1. A value of 0 means wait forever (
Enumeration.hasMoreElements()
will return false only on closing the browser). A value < 0 will return immediately. - Default: –1
Property Source (in descending priority) | Example |
---|---|
Initial Context |
The example below shows how to set the browser timeout to 10000 ms. env.put(SupportedProperty.SOLACE_JMS_BROWSER_TIMEOUT_IN_MS, "10000"); |
JNDI Properties File |
Solace_JMS_Browser_Timeout_In_MS=10000 |
System |
-DSolace_JMS_Browser_Timeout_In_MS=10000 |
Client Description
This property specifies the application description on the event broker for the data connection.
- Supported by: event brokers running Solace PubSub+ version 5.0 and higher
- Type: String
- Format: Can be a maximum of 254 ASCII characters.
- Default: “”
Property Source (in descending priority) | Example |
---|---|
Initial Context |
env.put(SupportedProperty. SOLACE_JMS_CLIENT_DESCRIPTION, “My Client Description”); |
JNDI Properties File |
Solace_JMS_ClientDescription=My Client Description |
JNDI Connection Factory |
SolAdmin—Set through the Client Description box in the Client Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “client‑properties”, Property “client-description”. |
Client ID
This property specifies the client name on the event broker for the data connection. The default client ID used is generated by the API.
- Supported by: event brokers running Solace PubSub+ version 5.0 and higher
- Type: String
- Format: Must be a valid topic name. A maximum of 160 bytes is supported when encoded in UTF-8.
- Default: A generated client ID
Property Source (in descending priority) | Example |
---|---|
JNDI Connection Factory |
Soladmin—Set through the Client Id box in the Client Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “client-properties”, Property “client-id”. All clients that use this Connection Factory will have the same client ID. |
JMS API |
Connection.setClientID(String clientID); If the client ID is set in the Connection Factory, calling this function throws a |
Compression Level
This property is used to enable and specify the ZLIB compression level.
- Supported by: Solace PubSub+ event brokers
- Type: Integer
- Format: Valid values for the compression level are -1 through 9. -1 means use the JNDI connection’s compression level (refer to Compression Level). 0 means use no compression. 1 through 9 enables data compression (where 1 offers the least amount of compression and fastest data throughput, and 9 offers the most compression and slowest data throughput).
- Default: –1
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Compression Level box in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “compression‑level”. |
Connect Retries
This property specifies the maximum number of times to attempt a data connection if the first connect fails. If this value is -1 or greater than 1, and a host list is used, each connect retry will traverse the host list according to the value set for the Connect Retries property.
- Type: Integer
- Format: Valid values are -1 through 2147483647. 0 means do not perform any automatic connection retries (that is, try once and give up); –1 means retry forever.
- Default: 0
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Connection Retries box in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “connect-retries”. |
Connect Retries Per Host
When using a list of hosts for the URL property, this property defines how many times to retry a data connection to a single host before moving on to the next host in the list.
- Type: Integer
- Format: Valid values are -1 through 2147483647. 0 means do not perform any automatic connection retries (that is, try once and give up); –1 means retry forever (that is, the API only tries to connect or reconnect to first host listed.)
- Default: 0
This property works in conjunction with the connect and reconnect retries settings; it does not replace them.
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Connection Retries Per Host box in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “connect‑retries-per-host”. |
Connect Timeout
This property specifies the maximum amount of time (in milliseconds) permitted for a data connection attempt.
- Type: Integer
- Format: Valid values are 0 through 2147483647. 0 means wait forever.
- Default: 30000 (that is, 30 seconds)
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Timeout for Initial Connection to appliance in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “connect‑timeout”. |
Generate Sender ID
This property specifies whether the API generates a sender ID on published messages. If the message property is specified, that value will take precedence over generating one.
- Supported by: Solace PubSub+ version 7.1 and higher.
- Type: Boolean
- Format: [true|false]
- Default: false
Property Source (in descending priority) | Example |
---|---|
Initial Context |
env.put(SupportedProperty.SOLACE_JMS_GENERATE_SENDER_ID, true); |
JNDI Properties File |
Solace_JMS_GenerateSenderId=true |
Guaranteed Delivery Reconnect Fail Action
This property specifies to the action to take after a client that was publishing Guaranteed messages is disconnected. The API can do one of the following:
- Clear the publisher state and reconnect the publisher flow. Then republish all unacknowledged messages and raise a SolProducerEvent (note that this may cause duplication).
- Do not automatically attempt to reconnect the client.
- Supported by: Solace PubSub+ version 7.1.2 and higher.
-
Format: Valid values are
SupportedProperty.GD_RECONNECT_FAIL_ACTION_AUTO_RETRY
orSupportedProperty.GD_RECONNECT_FAIL_ACTION_DISCONNECT
- Default:
SupportedProperty.GD_RECONNECT_FAIL_ACTION_AUTO_RETRY
Property Source (in descending priority) | Example |
---|---|
System |
-DSolace_JMS_GD_Reconnect_Fail_Action=gd_reconnect_fail_action_auto_retry |
Initial Context |
env.put(SupportedProperty.SOLACE_JMS_ GD_RECONNECT_FAIL_ACTION, SupportedProperty.GD_RECONNECT_FAIL_ACTION_AUTO_RETRY); |
Host
This property specifies the IP address and port (optional) of the event broker to connect to.
This property is required if you are programmatically creating Connection Factories or looking up Connection Factories from LDAP JNDI stores. The values provided for the Host
property overrides the values implicitly set through the URL
property used for the JNDI connection.
A host entry uses the following format:
<URI Scheme>://[username]:[password]@<IP address>[:port]
Where:
URI Scheme
is the uniform resource identifier (URI) scheme used for the data connection lookup. The valid values are:
smf
—use plain-text over SMF for communications between the application and the event broker. SMF is the default.smfs
—use TLS/ SSL protocols over SMF for secure communications between the application and the event brokerws:
orws://
—Use a WebSockets transport for communication between the application and the event broker.wss:
orwss://
—Use a TLS/SSL channel over WebSockets for secure communication between the application and the event broker.
username
is the user name that is required to authenticate a client connecting to an event broker. A client username can be used by a single or by multiple JMS clients.
password
is the username password for the connection when authentication is required.
IP address
is the IP address (or host name) of the event broker acting as the JMS broker. To specify a prioritized list of hosts that a client can attempt to connect to, list each IP address, in order of importance, separated by a comma.
port
is the port number to use to establish the connection. A value is only required when the client needs to use a port other than the automatically‑assigned default port number. The default port number for is 55555 when compression is not in use, or 55003 when compression is in use. The default port for TLS/SSL connections (with or without compression) is 55443.
- Type: String
- Format:
smf://username:password@ipaddress:port
- Default: None
The provided URL parameters are used for both a JNDI connection and a JMS data connection. This is useful when both the JNDI and JMS data connections are for an event broker that provides JNDI and JMS service. However, when the JNDI store to be used is hosted on an LDAP server, and the event broker is only used for the JMS broker, the specified URL parameters, which are used for the JNDI connection, can be overridden by parameters specified in the Connection Factory when creating a JMS connection.
Property Source (in descending priority) | Example |
---|---|
Initial Context |
env.put( InitialContext.PROVIDER_HOST, “smf://user:pwd@192.168.1.1:55555”); |
System |
-Djava.naming.provider.host=smf://192.168.1.1 |
JNDI Properties File |
java.naming.provider.url=smf://192.168.1.1,smf://192.168.2.1 Host=smf://192.168.1.1,smf://192.168.2.1 This example shows a prioritized list of event brokers. |
JAAS Login Context
This property specifies a name that applications use to refer to the entry in a login configuration file when they instantiate a LoginContext.
- Type: String
- Format: The name that refers to the entry in the login configuration file.
- Default: SolaceGSS
Property Source (in highest priority) | Example |
---|---|
Initial Context |
env.put(SupportedProperty.SOLACE_JMS_JAAS_LOGIN_CONTEXT, “SolaceGSS”); |
JAAS Configuration File Reload Enabled
This property, when true, indicates the login configuration file is reloaded before connect or reconnect to the event broker.
- Type: Boolean
- Format: [true | false]
- Default: false (disabled)
Property Source (in highest priority) | Example |
---|---|
Initial Context |
env.put(SupportedProperty.SOLACE_JMS_JAAS_CONFIG_FILE_RELOAD_ENABLED, true); |
JMSMessage ID Mode
This property is used to specify how the API should generate a JMSMessageID. It supports two modes:
SOLACE_JMS_JMS_MESSAGE_ID_MODE_DEFAULT
—The default mode for generating JMSMessageIDs.
SOLACE_JMS_JMS_MESSAGE_ID_MODE_ASCII_ENCODED_HASH
—A mode for generating fixed length JMSMessageIDs that are 23 characters long.
- Supported by: Solace PubSub+ version 7.1.2 and higher
- Type: String
- Default:
SupportedProperty.SOLACE_JMS_JMS_MESSAGE_ID_MODE_DEFAULT
The ASCII_ENCODED_HASH mode generates a 23 character, fixed length JMSMessageID. This mode has a small impact on message send performance compared to the default mode, which generates a longer ID that is not of fixed length.
Property Source (in descending priority) | Example |
---|---|
Initial Context |
env.put(SupportedProperty.SOLACE_JMS_JMS_MESSAGE_ID_MODE,SupportedProperty.SOLACE_JMS_JMS_MESSAGE_ID_MODE_ASCII_ENCODED_HASH); |
JNDI Properties File |
Solace_JMS_MessageIDMode=ASCII_ENCODED_HASH |
System |
-DSolace_JMS_MessageIDMode=ASCII_ENCODED_HASH |
Keep-Alive
This property is used to enable/disable application-level Keep-Alives.
- Type: Boolean
- Format: [true|false]
- Default: true
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Enabled box of the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “keep‑alive‑enabled”. |
Keep-Alive Interval
This property specifies the interval (in milliseconds) between application-level Keep-Alives. The API sends Keep-Alive messages to the event broker over the data connection at timed intervals. If a response is not received after the maximum number of consecutive Keep-Alive messages are sent, the API closes the connection.
- Type: Integer
- Format: Valid values are 50 and greater. 0 disables the use of Keep-Alives.
- Default: 3000 (that is, three seconds)
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Interval for Keep‑Alive Pings box in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “keep‑alive‑interval”. |
Keep-Alive Limit
This property specifies the number of consecutive application-level Keep-Alive messages that can be sent without receiving a response before the connection is closed by the API.
- Type: Integer
- Format: Valid values are 3 through 2147483647.
- Default: 3
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Max Number of Keep-Alive Pings in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “keep‑alive‑count‑max”. |
Kerberos Mutual Authentication
This property specifies that mutual authentication is to be used when the Kerberos authentication scheme is enabled.
- Supported by: Solace PubSub+ version 7.0 and higher
- Type: Boolean
- Format: [true|false]
- Default: true
Property Source (in descending priority) | Example |
---|---|
Initial Context |
env.put(SupportedProperty.SOLACE_JMS_KRB_MUTUAL_AUTHENTICATION, false); |
JNDI Properties File |
Solace_JMS_KRB_Mutual_Authentication=false |
Kerberos Service Name
This property specifies the Service Name portion of the Kerberos Service Principal Name (SPN) that has a format of service_name/<customer-provided_host>@REALM
- Supported by: Solace PubSub+ version 7.0 and higher
- Type: String
- Format: Any string. The total SPN value must not exceed 190 characters, including Service Name, Host FQDN, ‘@’ symbol, and ‘REALM’ name.
- Default: “
solace
” (SupportedProperty.DEFAULT_KRB_SERVICE_NAME
)
This property applies to both the JNDI and data connections.
Property Source (in descending priority) | Example |
---|---|
Initial Context |
env.put(SupportedProperty.SOLACE_JMS_KRB_SERVICE_NAME, "solace"); |
JNDI Properties File |
Solace_JMS_KRB_Service_Name=KRBName |
Local Host
This property specifies the IP address of the local interface to use. By default, the operating system picks the interface. This property applies to both the JNDI and data connections.
- Type: String
- Format: IP address.
- Default: None
Property Source (in descending priority) | Example |
---|---|
Initial Context |
env.put( SupportedProperty.SOLACE_JMS_LOCALHOST, "192.168.1.1"); |
JNDI Properties File |
Solace_JMS_Localhost=192.168.1.1 |
System |
-DJMS_Solace_localhost=192.168.1.1 |
OAuth2 Access Token
This property specifies an access token; Defined in OAuth, access tokens are issued by the authorization server after successfully authenticating the user and obtaining their consent. The access token is the artifact that allows an client application to access the user's resource when the OAuth 2.0 authentication scheme is enabled.
- Supported by: Solace PubSub+ version 9.13.1 and higher
- Type: String
- Format: b64token, token max size specified on a broker, invalid property response if size exceeded.
- Default: None
Property Source (in descending priority) | Exampe |
---|---|
Initial Context |
env.put(SupportedProperty.SOLACE_JMS_OAUTH2_ACCESS_TOKEN, myAccessToken); |
OAuth Issuer Identifier
This property specifies An Authorization Server Issuer Identifier (iss). This parameter can be used to provide support for explicit selection of the authorization server for token validation purposes on an event broker. The Message VPN on the event broker must have at least one Required Issuer configured for this parameter to have an effect (see Required Issuer).
- Supported by: Solace PubSub+ version 9.13.1 and higher
- Type: String
- Format: Any string.
- Default: None
Property Source (in descending priority) | Example |
---|---|
Initial Context |
env.put(SupportedProperty.SOLACE_JMS_OAUTH2_ISSUER_IDENTIFIER, issuerIdentifiereURL); |
OIDC ID Token
This property specifies an OpenID Connect ID Token; OpenID Connect ID tokens are the artifact that allows an client application to access the user's resource when the when the Open ID Connect OAuth authentication scheme is enabled.
- Supported by: Solace PubSub+ version 9.13.1 and higher
- Type: String
- Format: b64token, token max size specified on a broker, invalid property response if size exceeded.
- Default: None
Property Source (in descending priority) | Example |
---|---|
Initial Context |
env.put(SupportedProperty.SOLACE_JMS_OIDC_ID_TOKEN, myIdToken); |
Password
This property specifies the password to connect to the event broker with. By default, no password is specified.
- Type: String
- Format: The maximum length is 128 characters.
- Default: None
Property Source (in descending priority) | Example |
---|---|
JMS API |
ConnectionFactory.createConnection(String username, String password); Applies to just the data connection. |
System |
-Djava.naming.security.credentials=user1 Applies to both the JNDI and data connections. |
Initial Context |
env.put(SupportedPropertyContext.SECURITY_CREDENTIALS, user1); Applies to both the JNDI and data connections. |
JNDI Properties File |
java.naming.security.credentials=user1 Applies to both the JNDI and data connections. |
URL Property |
smf://user1:pwd@192.168.1.1:55555 Applies to both the JNDI and data connections.With host lists there is the capability to specify a username or password in every URL. In this case the chosen username and password will be the first ones found in the URL list. |
Port
This property specifies the port to use for the data connection.
- Type: Integer
- Format: Valid values are 0 through 65,535. -1 means use the same port as specified for the JNDI connection.
- Default: –1
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Port box in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “port”. |
Read Timeout
This property specifies the maximum amount of time (in milliseconds) permitted for reading a reply from the event broker.
- Type: Integer
- Format: Valid values are 0 through 2147483647.
- Default: 10000 (that is, 10 seconds)
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Timeout for Reading Reply from Appliance box in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “read-timeout”. |
Receive Buffer
This property is used to configure the socket’s receive buffer size in bytes.
- Type: Integer
- Format: Valid values 0 and greater.
- Default: 65536
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Receive Socket Buffer box in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “receive‑buffer”. |
Reconnect Retries
This property specifies the number of times to attempt a reconnect once the data connection to an event broker has been lost.
When a host list of event brokers is provided, and no connection is reestablished to any of the hosts, the API can reattempt connecting to the listed hosts again starting with the first host listed. Each time the API works through the host list without establishing a reconnection is considered an reconnect retry. For example, if a Reconnect Retries value of two is used, the API could possibly work through all of the listed hosts without reconnecting to them three times: one time through for the initial connect attempt, and then two times through for reconnect retries.
After each unsuccessful attempt to reconnect to a host, the API waits for the amount of time set for Reconnect Retry Wait property (refer to Reconnect Retry Wait) before attempting another reconnection to a host. It should be noted that the number times to attempt to reconnect to one host before moving on to the next listed host is determined by the value set for the Connection Retries Per Host property (refer to Connect Retries Per Host).
- Type: Integer
- Format: Valid values are 0 through 2147483647. -1 means retry forever.
- Default: 3
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Number of Times to Attempt Reconnect box in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “reconnect‑retries”. |
Reconnect Retry Wait
If a connect or reconnect attempt to a host is not successful, the API waits the amount of time (in milliseconds) set for this property, and then makes another connect or reconnect attempt.
When using a list of hosts for the URL property (refer to URL), the Connect Retries Per Host property (refer to Connect Retries Per Host) sets how many connection or reconnection attempts can be made before moving on to the next host in the list.
- Type: Integer
- Format: Valid values are 0 through 60,000. 0 means do not wait.
- Default: 3000 (that is, three seconds)
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Interval Between Reconnect Attempts box in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “reconnect‑retry‑wait”. |
Send Buffer
This property specifies the socket’s send buffer size (in bytes).
- Type: Integer
- Format: Valid values are greater than 0.
- Default: 65536
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the Send Socket Buffer box in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property send‑buffer”. |
TCP No Delay
This property specifies whether to set the TCP_NODELAY
option. When enabled, this option disables Nagle’s algorithm.
- Type: Boolean
- Format: [true|false]
- Default: true
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the TCP No Delay box in the Transport Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “transport‑properties”, Property “tcp-no-delay”. |
URL
This property specifies the IP address and port (optional) of the event broker to connect to. A host entry uses the following format:
<URI Scheme>://[username]:[password]@<IP address>[:port]
Where:
URI Scheme
is the uniform resource identifier (URI) scheme used for the data connection lookup. The valid values are:
smf
—use plain-text over SMF for communications between the application and the event broker. SMF is the default.smfs
—use TLS/ SSL protocols over SMF for secure communications between the application and the event broker
username
is the user name that is required to authenticate a client connecting to an event broker. A client username can be used by a single or by multiple JMS clients.
password
is the username password for the connection when authentication is required.
IP address
is the IP address (or host name) of the event broker acting as the JMS broker. To specify a prioritized list of hosts that a client can attempt to connect to, list each IP address, in order of importance, separated by a comma.
port
is the port number to use to establish the connection. A value is only required when the client needs to use a port other than the automatically‑assigned default port number. The default port number for is 55555 when compression is not in use, or 55003 when compression is in use. The default port for TLS/SSL connections (with or without compression) is 55443.
- Type: String
- Format:
smf://username:password@ipaddress:port
- Default: None
The provided URL parameters are used for both a JNDI connection and a JMS data connection. This is useful when both the JNDI and JMS data connections are for an event broker that provides JNDI and JMS service. However, when the JNDI store to be used is hosted on an LDAP server, and the event broker is only used for the JMS broker, the specified URL parameters, which are used for the JNDI connection, can be overridden by parameters specified in the Connection Factory when creating a JMS connection.
Property Source (in descending priority) | Example |
---|---|
Initial Context |
env.put( InitialContext.PROVIDER_URL, “smf://user:pwd@192.168.1.1:55555”); |
System |
-Djava.naming.provider.url=smf://192.168.1.1 |
JNDI Properties File |
java.naming.provider.url=smf://192.168.1.1,smf://192.168.2.1 Host=smf://192.168.1.1,smf://192.168.2.1 This example shows a prioritized list of event brokers. |
Username
This property specifies the username to connect to the event broker with. By default, the username specified for the JNDI connection is used. However, that username can be overwritten when one is specified for a JMS connection.
- Type: String
- Format: The maximum length is 32 characters.
- Default: Use the same username as the JNDI connection.
Property Source (in descending priority) | Example |
---|---|
JMS API |
ConnectionFactory.createConnection(String username, String password); Applies to only the data connection. |
System |
-Djava.naming.security.principal=user1 Applies to both the JNDI and data connections. |
Initial Context |
env.put(SupportedPropertyContext.SECURITY_PRINCIPAL, user1); Applies to both the JNDI and data connections. |
File |
java.naming.security.principal=user1 Applies to both the JNDI and data connections. |
URL |
smf://user1:pwd@192.168.1.1:55555 Applies to both the JNDI and data connections. With host lists there is the capability to specify a username or password in every URL. In this case, the chosen username and password are the first ones found in the URL list. |
VPN
This property specifies the Message VPN to use when connecting to the event broker. This property applies to both the JNDI and data connections. The default value is blank, which means connect to the Message VPN default
.
- Type: String
- Format: The maximum length is 32 bytes when encoded in UTF-8.
- Default: “”
Property Source (in descending priority) | Example |
---|---|
System |
-DSolace_JMS_VPN=myVPN |
Initial Context |
env.put( SupportedProperty.SOLACE_JMS_VPN, “myVPN”); |
File |
Solace_JMS_VPN=myVPN |
XA
This property specifies whether a Connection Factory is XA-enabled. When a lookup is performed on a Connection Factory with this property enabled, the resulting Connection Factory can be cast to an XAConnectionFactory
, XAQueueConnectionFactory
, or an XATopicConnectionFactory
.
- Type: Boolean
- Format: [true|false]
- Default: false (the Connection Factory is not XA-enabled).
Property Source | Example |
---|---|
JNDI Connection Factory |
SolAdmin—Set through the XA check box in the Messaging Properties tab of the New JMS Connection Factory or Edit JMS Connection Factory dialog box. CLI/SEMP—Set through Property List “messaging‑properties”, Property “xa”. |