Handling xfNetLink Java exceptions

All xfNetLink Java exceptions are thrown as xfJCWException, which your code should catch. If you are using Java connection pooling, you should also catch xfPoolException. The error text associated with these exceptions will tell you what the specific problem is. Check the table below for the likely cause and possible solutions. Some errors may include additional text that was generated by the system or xfServerPlus. You may also see xfServerPlus status codes returned to the client; refer to the xfServerPlus Status Codes table.   

xfNetLink Java Exceptions

Error message

Cause

What to do

<numParms> is illegal parameter count. Range is 0 to 253

The method call has more parameters than permitted.

Correct your client code to pass fewer parameters.

14-day demo period expired

The 14-day evaluation period for your xfServerPlus license has expired.

Contact Synergex Customer Service to purchase a license.

Bad array, Index <number>

There is a problem with an element in an array.

The message will include additional information that can help you determine the nature of the problem.

Bad Packet: Type conflict prevented variable update after method call

The format of the returned data is incompatible with that of the sent data, or the wrong data type was used in a method call.

Check your client code to ensure you are using the correct data types.

Bad packet. Improper delimiter after parameter

The packet is corrupted or badly formed.

Retry. The problem may be noise on the line or some other type of transmission error. If logging is turned on, you can examine the packet contents in the log.

Can’t create a new connection

There was a problem creating a connection in the pool.

The information in the message can help you determine the source of the problem.

Can’t declare an array with multiple SynTypes

You attempted to declare an array that contains more than one data type.

Correct your client code to use a single data type in the array.

Can’t use array to store multiple SynTypes. Array declared as <declared type>. Element <name> is of type <deviant type>.

You attempted to store multiple data types in an array.

Correct your client code to use a single data type in the array.

Could not convert <value> to a SynByteArray. Value must be byte[]

Conversion to or from a byte array failed.

This error should not occur when using Java class wrappers, unless code in the generated Java classes has been altered or removed. If you know what was changed, you can attempt to correct the code, but the recommended solution is to regenerate the classes and rebuild the JAR file.

Could not convert <value> to a SynDec. Value must be integer

Conversion to or from a decimal data type failed.

Could not convert <value> to a SynEnum. Value must be integer

Conversion to or from an enumeration failed.

Could not convert <value> to a SynImpDec. Value must be integer or real

Conversion to or from an implied-decimal data type failed.

Could not convert the first element of the ArrayList to a byte[]

Conversion to or from an ArrayList failed.

Error parsing data to structure format

A structure parameter has an incorrect type.

Check your client code. If the repository was updated, you must also update the SMC, regenerate classes, and rebuild the JAR file.

Extended demo period expired

An extended evaluation period for your xfServerPlus license has expired.

Contact Synergex Customer Service to purchase a license.

Failure occurred within remote Synergy routine

xfServerPlus cannot translate a method call into a Synergy routine call, or xfServerPlus has a problem (e.g., an error reading the SMC), or a routine that’s being executed caused an error.

The information in the error can help you determine if the problem is in the Java code, the Synergy code, the SMC, or was generated by xfServerPlus.

Invalid connectWaitTimeout property setting

The connectWaitTimeout setting in the pooling properties file is invalid.

Correct the pooling properties file. See Specifying pool time-out values.

Invalid initializationTimeout property setting

The initializationTimeout setting in the pooling properties file is invalid.

This setting was deprecated in version 10.1.1c; we recommend you use poolMethodTimeout instead. See Specifying pool time-out values.

Invalid poolMethodTimeout property setting

The poolMethodTimeout setting in the pooling properties file is invalid.

Correct the pooling properties file. See Specifying pool time-out values.

Invalid maxPool property setting

The minPool setting in the pooling properties file is invalid.

Correct the pooling properties file. See Specifying the pool size.

Invalid Message Type in DTL

The packet is corrupted or badly formed.

Retry. The problem may be noise on the line or some other type of transmission error. If logging is turned on, you can examine the packet contents in the log.

Invalid minPool property setting

The minPool setting in the pooling properties file is invalid.

Correct the pooling properties file. See Specifying the pool size.

Invalid poolReturn property setting

The poolReturn setting in the pooling properties file is invalid.

Correct the pooling properties file. See Specifying whether connections should be returned to the pool.

Invalid security compliance level level

Invalid value passed to the setSSLSecCompliance() method.

Correct your code to pass 0, 2, 3, 4.

Method Id Cannot Be Null

The method ID is missing from the method call.

This error should not occur when using Java class wrappers, unless code in the generated Java classes has been altered or removed. If you know what was changed, you can attempt to correct the code, but the recommended solution is to regenerate the classes and rebuild the JAR file.

Method Id not extracted because no delimiter found

The packet is corrupted or badly formed.

Retry. The problem may be noise on the line or some other type of transmission error. If logging is turned on, you can examine the packet contents in the log.

Method Id not found in return result stream

The packet is corrupted or badly formed.

Retry. The problem may be noise on the line or some other type of transmission error. If logging is turned on, you can examine the packet contents in the log.

Missing required property setting for the maxPool connections

The maxPool setting is missing from the pooling properties file.

Add the setting to the pooling properties file. See Specifying the pool size.

Missing required property setting for the minPool connections

The minPool setting is missing from the pooling properties file.

Add the setting to the pooling properties file. See Specifying the pool size.

Missing required property setting for the pool ID

The setting that identifies the named pool is missing from the pooling property file.

Define the pool ID setting (e.g., myPool.pool) in the pooling properties file. See Setting up a pooling properties file.

Missing required property setting for the xfNetLink Java properties file

The propertiesFile setting, which specifies the location of the xfNetLink Java properties file, is missing from the pooling properties file.

Add the setting to the pooling properties file. See Specifying the xfNetLink Java properties file to use.

No hostname found in xfNetLink properties file

The xfServerPlus machine name is missing from the xfNetLink Java properties file

Correct the xfNetLink Java properties file or specify the host name with setxfHost(). See Specifying the host name and port number.

No pool description specified

There are one or more settings in the pooling properties file that are missing the pool ID.

Correct the pooling properties file. Each setting must be preceded by the pool ID (e.g., myPool.maxpool). See Setting up a pooling properties file.

No port number found in xfNetLink properties file

The port number is missing from the xfNetLink Java properties file.

Correct the xfNetLink Java properties file or specify the port number with setxfPort(). See Specifying the host name and port number.

Number of licensed concurrent connections exceeded

xfServerPlus has exceeded the number of available licenses.

Contact Synergex Customer Service to purchase additional licenses.

Port number in xfNetLink properties file must be an integer

There is an invalid value for port number in the xfNetLink Java properties file.

Correct the xfNetLink Java properties file. See Specifying the host name and port number.

Received bad packet. Length or num-elements inconsistent with amount expected

The method call contains more or fewer parameters than expected, or the size of a parameter does not match the expected size.

Check your client code to verify you are passing the correct parameters in the call. Also, make sure your Synergy routines, repository, SMC, and JAR file are all in sync.

Remote Synergy execution aborted

There was a fatal, untrappable error during the execution of a Synergy routine.

For additional information, check the xfServerPlus log or the event log (Windows), syslog (Unix), or operator console (OpenVMS).

Server version n is incompatible with the required version n

The version of xfServerPlus is not compatible with the version of xfNetLink for the current operation.

Upgrade xfServerPlus to the current version. The message includes the protocol version; see the table in Protocol versions for how it maps to the software version.

Severe system error

A serious error, such as inadequate memory, occurred while xfServerPlus was starting up.

Retry. If the problem persists, save the error log and contact Synergy/DE Developer Support.

SSL Protocol error: no valid protocols

The requested security compliance level is not supported for the version of JDK.

Change either the security compliance level or update your JDK version. For TLS 1.1 and 1.2 support, you must use JDK 7 or higher; for TLS 1.3 support, you must use JDK 11 or higher.

The minPool cannot be less than one!

The minimum pool size must be at least one.

Increase the value of the minPool setting in the pooling properties file. See Specifying the pool size.

The minPool is greater than maxPool setting

The minPool setting cannot be greater than the maxPool setting.

Adjust the minPool and maxPool settings in the pooling properties file. See Specifying the pool size.

xfServer denied access to remote execution

xfServerPlus cannot start a session because it is not licensed, or the number of licenses has been exceeded, or it cannot access the license database, or there is some problem with the account used to start xfServerPlus, such as invalid username or password.

Check your xfServerPlus account setup and licensing.

xfServerPlus not supported by this xfServer

The version of xfServer that is running does not support xfServerPlus.

Upgrade xfServerPlus to the current version.

xfServerPlus session did not connect

xfServerPlus was started without the remote execution option.

Restart rsynd with the -w option.

Zero length packet received, host terminated connection

Slow startup caused a time out.

Retry. See Connect session time-out.