#define TPMINVAL 0 /* minimum error message */
tperrno:1 : TPEABORT - transaction cannot commit
tperrno:2 : TPEBADDESC - bad communication descriptor
tperrno:3 : TPEBLOCK - blocking condition found
tperrno:4 : TPEINVAL - invalid arguments given
tperrno:5 : TPELIMIT - a system limit has been reached
tperrno:6 : TPENOENT - no entry found
tperrno:7 : TPEOS - operating system error
tperrno:8 : TPEPERM - bad permissions
tperrno:9 : TPEPROTO - protocol error
tperrno:10 : TPESVCERR - server error while handling request
tperrno:11 : TPESVCFAIL - application level service
tperrno:12 : TPESYSTEM - internal system error
tperrno:13 : TPETIME - timeout occured
tperrno:14 : TPETRAN - error starting transaction
tperrno:15 : TPGOTSIG - signal received and TPSIGRSTRT not specified
tperrno:16 : TPERMERR - resource manager error
tperrno:17 : TPEITYPE - type and/or subtype do not match service's
tperrno:18 : TPEOTYPE - type and/or subtype do not match buffer's or unknown
tperrno:19 : TPERELEASE - invalid release
tperrno:20 : TPEHAZARD - hazard exists that transaction heuristically completed
tperrno:21 : TPEHEURISTIC - transaction heuristically completed
tperrno:22 : TPEEVENT - event occurred
tperrno:23 : TPEMATCH - service name cannot be advertised due to matching conflict
tperrno:24 : TPEDIAGNOSTIC - function failed - check diagnostic value
tperrno:25 : TPEMIB - Management Information Base access error
#define TPMAXVAL 26 /* maximum error message */
The following list describes the general meaning of each error:
TPEABORT
A transaction could not commit because either the work performed by the
initiator or by one or more of its participants could not commit.
TPEBADDESC
A call descriptor is invalid or is not the descriptor with which a conversational
service was invoked.
TPEBLOCK
A blocking condition exists and TPNOBLOCK was specified.
TPEDIAGNOSTIC
The enqueuing of a message on the specified queue failed. The reason for
failure can be determined by the diagnostic returned via ctl.
TPEEVENT
An event occurred; the event type is returned in revent.
TPEGOTSIG
A signal was received and TPSIGRSTRT was not specified.
TPEHAZARD
Due to some failure, the work done on behalf of the transaction could have
been heuristically completed.
TPEHEURISTIC
Due to a heuristic decision, the work done on behalf of the transaction was
partially committed and partially aborted.
TPEINVAL
An invalid argument was detected.
TPEITYPE
The type and subtype of the input buffer is not one of the types and subtypes
that the service accepts.
TPELIMIT
The caller’s request was not sent because the maximum number of
outstanding requests or connections has been reached.
TPEMATCH
svcname is already advertised for the server but with a function other than
func.
TPEMIB
The administrative request failed. outbuf is updated and returned to the
caller with FML32 fields indicating the cause of the error, as described in
MIB(5) and TM_MIB(5).
TPENOENT
Cannot send to svc because it does not exist or is not the correct type of
service.
TPEOS
An operating system error has occurred.
TPEOTYPE
The type and subtype of the reply are not known to the caller.
TPEPERM
A client cannot join an application because it does not have permission to do
so or because it has not supplied the correct application password.
TPEPROTO
A library routine was called in an improper context.
TPERELEASE
When the TPACK is set and the target is a client from a prior release of the BEA
Tuxedo system that does not support the acknowledgment protocol.
TPERMERR
A resource manager failed to open or close correctly.
TPESVCERR
A service routine encountered an error either in tpreturn() or
tpforward() (for example, bad arguments were passed).
TPESVCFAIL
The service routine sending the caller’s reply called tpreturn() with
TPFAIL. This is an application-level failure.
TPESYSTEM
A BEA Tuxedo system error has occurred.
TPETIME
A timeout occurred.
TPETRAN
The caller cannot be placed in transaction mode.
The Jolt Class Library exceptions are listed for each class, constructor, and method listed in the BEA Jolt API Reference.
The following table lists the BEA Jolt and BEA Tuxedo exceptions that you may encounter while running BEA Jolt. Each exception includes a possible cause (or causes) and a recommended action (wherever possible) to help resolve the situation
1. TPEABORT
A transaction could not commit.
Cause
This exception occurs because a transaction could not commit on the server side. This exception may also occur if the JSH performs a message resend for a commit that has timed out due to a previous blocking condition. In BEA Tuxedo, you can get this exception if tpcommit() is called with outstanding replies or open conversation connections.
Action
Check transaction failures on the server side. BEA Jolt clients should resend the request after the transaction problem has been fixed on the server side.
2. TPEBADDESC
This exception should not occur in BEA Jolt.
Cause
In BEA Tuxedo, this exception usually occurs when an invalid caller descriptor is given to tpgetrply() or tpsend().
Action
None.
3. TPEBLOCK
A blocking condition has occurred and the TPNOBLOCK flag is specified in BEA Tuxedo.
Cause
This exception occurs because the server is backed up.
Action
You may need to re-examine and re-architect the application to handle extreme load cases.
4. TPEINVAL
Invalid arguments were given by the application.
Cause
This exception occurs if a new JoltSession class is processed before performing the security protocol. In Jolt's URL handler routine, this exception occurs when a invalid challenge response is received by the openConnection() method. The TPEINVAL exception can also occur if you specified a hexadecimal address for the JSL -H option without a leading "0x" , or if you entered a wrong address in UBBCONFIG file. In addition, the GETREC(), DELREC() and GETSVC() services in JREPSVR can return TPEINVAL if the REPNAME is missing. Also, the ADDREC() service in JREPSVR can return TPEINVAL if the REPVAL is not specified.
Action
This type of exception should have been handled during the application development cycle. You should not receive this exception in a production environment.
5. TPELIMIT
The maximum number of outstanding requests or subscriptions has been reached.
Cause
The maximum number of outstanding requests has been reached. This exception could also mean that the BEA Tuxedo System Event Broker's maximum number of subscriptions (50 internally defined for now) has been reached.
Action
You may need to re-examine and re-architect the application to handle load extreme cases.
6. TPENOENT
The requested service is not available.
Cause
Usually, the requested service is not booted or advertised on the BEA Tuxedo server side. It is also possible that the requested service is not defined in the Jolt Repository. This exception could also indicate that you could not access the BEA Tuxedo System Event Broker.
Action
You need to check the server side to see if the service is booted or advertised. Otherwise, check to see if the requested service is defined in the Jolt Repository. After the service is available on the server side, Jolt clients should resend the request.
7. TPEOS
An operating system exception has occurred.
Cause
The exact nature of the problem is described in the ULOG file. Typically, you can get this exception due to the memory allocation failures, wrong network address, or failure to attach to the Bulletin Board for the JSL.
Action
Try fixing the problem as described in the ULOG file. Jolt clients might need to reconnect or resend the request after the problem has been fixed.
8. TPEPERM
There is a permission problem when attempting to join a session.
Cause
In the JoltSession class, this exception occurs because the Jolt client does not have the permission to join the application. Permission may be denied based on an invalid application password, failure to pass application specific authentication, or the use of restricted client names. In the Jolt URL handler routing, this exception occurs when a bad challenge response is received on the openConnection() method. If the Jolt Repository is set to read-only, the ADDREC() and DELREC() services, or the GARBAGECOLLECT() service in JREPSVR, also return the TPEPERM exception.
Action
This type of exception should have been handled during the application development cycle. You should not receive this exception in a production environment.
9. TPEPROTO
A function was called in an improper context.
Cause
For this exception, an improper context could include a rollback() or commit() method called by a participant, an unsubscribe event that is called while "unsubscribe all" is in progress, or when the caller is not a client.
Action
This type of exception should have been handled during the application development cycle. You should not receive this exception in a production environment.
10. TPESVCERR
A service routine has encountered an exception during tpreturn() or tpforward() in BEA Tuxedo.
Cause
The service routine is returning application-level failures, which may include any of the following: an application calls tpreturn() or tpforward() with invalid flags, the caller descriptor is no longer valid, or there are invalid return values.
Action
This type of exception should have been handled during the application development cycle. You should not receive this exception in a production environment.
11. TPESVCFAIL
The service routine sending the caller's reply called tpreturn() with TPFAIL.
Cause
The service routine is returning application-level failures.
Action
This type of exception should have been handled during the application development cycle. You should not receive this exception in a production environment.
12. TPESYSTEM
A BEA Tuxedo system exception has occurred.
Cause
The exact nature of the exception is written to the ULOG file. For example, when performing the Diffie-Hellman encryption, this exception occurs if the JSH is unable to send negotiation parameters. The JSL fails to send the reply challenge call to the Jolt client. The Jolt client sends an incorrect timestamp value, an incorrect number of encrypted bits value, an incorrect ticket value, or timestamp mismatches in reconnect protocol. The JSL fails to initialize network protocol information, or could not establish a listening address on a network. The JSH receives a network message with an unknown context or receives a message with a different connection.
Action
In most cases, you need to find out the exact nature of the exception from the ULOG file on the server side. In case of hardware or network failures, you can try to reconnect if a hardware or network failover is available.
13. TPETIME
A transaction timeout has occurred.
Cause
There is a transaction timeout on the server side.
Action
This type of exception should be addressed on the application server side. Jolt clients should resend the request after the server side problem has been resolved.
14. TPETRAN
The requested service belongs to a server that does not support transactions and TPNOTRAN is not set.
Cause
A transaction is not supported for the requested service.
Action
This type of exception should be addressed on the application server side. Jolt clients should resend the request after the server side problem has been resolved.
15. TPGOTSIG
An unexpected signal was received.
Cause
A signal was received and the TPSIGSTRT flag was not specified.
Action
None.
16. TPERMERR
A resource manager failed to open or close correctly on the server side.
Cause
The resource manager might not be available; or all the resource might not be released or committed before close.
Action
Check the ULOG file for reasons why the resource manager failed to open or close on the server side.
17. TPEITYPE
For the JoltRemoteService class, the requested BEA Tuxedo service does not recognize the type and subtype of the input data.
Cause
The type and subtype of input data is not defined in the Jolt Repository.
Action
The type and subtype of input data should be defined in the Jolt Repository. This type of exception should have been handled during the application development cycle. You should not receive this exception in a production environment.
18. TPEOTYPE
For the JoltRemoteService class, the BEA Tuxedo caller does not recognize the type and the subtype of the reply data.
Cause
The type and subtype of output data is not defined in the Jolt Repository.
Action
The type and subtype of output data should be defined in the Jolt Repository. This type of exception should have been handled during the application development cycle. You should not receive this exception in a production environment.
19. TPERELEASE
This exception should not occur in BEA Jolt.
Cause
Usually, this exception occurs when an unsolicited notification message is sent from a server with the TPACK flag set, and the target is a Jolt client from an older release of BEA Jolt that does not support the acknowledgment protocol.
Action
Verify that the correct version of BEA Jolt is installed on your machine. This type of exception should have been handled during the application development cycle. You should not receive this exception in an production environment.
20. TPEHAZARD
Due to some failure, the work done on behalf of the transaction may have been heuristically completed.
Cause
Check the ULOG file on the server side for details.
Action
None.
21. TPEHEURISTIC
Due to a heuristic decision, the work done on behalf of the transaction was partially committed and partially aborted.
Cause
Check the ULOG file on the server side for details.
Action
None.
22. TPEEVENT
This exception should not occur in BEA Jolt.
Cause
Usually, this exception means that an event has occurred when sending or receiving a message in a conversational connection in BEA Tuxedo. However, conversational server connections are not available in BEA Jolt.
Action
None.
23. TPEMATCH
The JoltUserEvent class has implemented a subscription to an asynchronous notification event, but the subscription has failed because it matches an existing subscription.
Cause
The subscription failed because it matched one already listed with the BEA Tuxedo System Event Broker.
Action
None.
24. TPEDIAGNOSTIC
This exception should not occur in BEA Jolt.
Cause
Usually, this exception occurs when enqueuing or dequeuing a message from the specified queue fails in BEA Tuxedo. However, enqueing and dequeing of messages is not available in BEA Jolt.
Action
None.
25. TPEMIB
This exception should not occur in BEA Jolt.
Cause
Usually, this exception occurs when an administrative request via tpadmcall() has failed in BEA Tuxedo. However, TMIB calls are not available in BEA Jolt.
Action
None.
26. TPEJOLT
This exception indicates there is a problem in BEA Jolt.
Cause
The TPEJOLT exception could occur for any of the following reasons: