Miscellaneous
The following troubleshooting tips pertain to scenarios not covered in other sections.
My connections are not released after I stop using the Java library or REST API
A connection created through the REST API is not released until it is deleted or its messaging context expires. If a connection is created through the Java library, and the client that created it crashes without invoking its close()
method, the connection will not be released until its timeout has expired. Ensure that you always delete or close connections when they are no longer in use.
Refer to the following methods for controlling a connection's timeout in the Java library:
-
isTimeoutSupported()
in Java API Reference for Oracle Messaging Cloud Service -
getTimeoutInSeconds()
in Java API Reference for Oracle Messaging Cloud Service -
setTimeoutInSeconds(int)
in Java API Reference for Oracle Messaging Cloud Service
I am receiving the error message "Missing or incorrect X-OC-ID-TOKEN"
You must send the X-OC-ID-TOKEN
header on every HTTP request to the REST API. You may also disable the checking of this token. See Understanding Anti-CSRF Measures.
I am receiving an error stating that my service instance does not have any available connections
Ensure that your connections are being used effectively by storing and sending the JSESSIONID
cookie with the REST API and closing connections from the Java library. Delete any unneeded message push listeners. You may also opt to buy more connections.
I am getting a "404 Not Found" response when I try to access connections, sessions, producers, consumers, or queue browsers that I just created
Be sure to store the JSESSIONID
cookie sent in HTTP responses and send it back in subsequent responses. If you do not do this, connections, sessions, producers, consumers, and queue browsers created by previous requests will be inaccessible by subsequent responses.
Check the value of the Maximum Inactive Interval (MII) to ensure that your REST API messaging context is not expiring before you use it. The default value of the MII is 5 minutes, and it can be set to at most 15 minutes. If your application needs to create and hold messaging contexts through the REST API for more than 15 minutes, send a "heartbeat" request periodically to keep the messaging context from expiring. For example, a GET
request to /maxInactiveInterval
keeps the messaging context alive without side effects.
I am receiving an error message of the form "Internal error; log reference: <pseudorandom string>"
This is an indication that an internal exception was thrown. Details of the exception can be found in the server log, in a log entry that can be found by searching for the <pseudorandom string>. Note that the server log can only be accessed by Oracle Support. The error message, including the pseudorandom string, should be included in any communication about the error to Oracle Support.