Problems constructing an adapter from a profile
Loading errors
During the construction of the adapter from the profile, the
core will report both fatal and nonfatal errors. Fatal errors are
caused if the adapter could not be constructed or there was a fatal
inconsistency in the profile.
Fatal errors
Fatal errors include:
- Could not load class
- The class could not be found or there was an error in
attempting to load it.
- Could not configure class
- The loaded class threw an exception during loading. This could
result from not passing the correct parameters.
- Could not start class
- The class could not correctly start its operation, possibly
resulting from the inability to connect to an application.
- Routing paths conflict
- At least two routing paths contain the same origin and
object.
- Routing destination specified does not exist
- One of the routing paths specified a destination that did not
map to any sender in the profile
- Routing origin specified does not exist
- One of the routing paths specified an origin that did not map
to any receiver in the profile
- Routing logic module specified does not exist.
- One of the routing paths specified a logic module that does not
exist in the profile
Nonfatal errors
Nonfatal errors during loading include warnings about correctly
configured adapters that could cause inadvertent errors. Examples
of nonfatal errors include:
- Objects not supported from CW controller side.
- If WBI is the broker, the connector controller on ICS may
expect the adapter to support certain business objects. This
warning is created if an object cannot be sent into the adapter
from ICS.
- Specific route overrides a Generic Route
- Warns if the profile has a specific route that overrides a
generic route. Warns the user that an object from the particular
receiver will take the specific route and not the generic
route.
The nonfatal errors do not stop operation of the adapter because
they do not interfere with the performance of the adapter. However,
warning messages are sent in case the user has configured the
adapter incorrectly.
Routing errors
At runtime, the adapter core will attempt to recover from all
errors. However, the core will report errors to the transport
receivers if their objects caused an error in routing. Each
transport receiver must implement the handleError() function to
attempt to recover from failed routing. Here are some errors that
could occur during routing:
- Route not found for object
- There could be several reasons for this error. One could be
that the MessageEvent did not correctly specify the receiver who
requested routing. Each transport receiver is expected to set its
name in the MessageEvent before it routes the event. If the name
specified is malformed this could also cause an error. Finally, a
routing path may not exist in the profile, so the core does not
have an route to apply.
- Logic Module processing failure
- One of the logic modules in the path threw an exception during
processing.
