In our application we are using Trading Networks API “wm.tn.profile:getInternalID” to fetch the internal ID for a trading partner, when processing an incoming message. Some times this API is returning a “null” value for the internal ID. This behavior interrupts the processing of the incoming message.
Does anybody face this behavior? any help how can we overcome this issue??
Can you verify what the inputs to the service were when it fails? The external ID and ID type must match the profile exactly so check for trailing spaces, look alike chars (e.g. zero and the letter O) and such.
i got your point, and checked for the input which is perfect at the time of failure.
Actually there are profiles existing in the TN and the API "wm.tn.profile:getInternalID" gives the correct Internal ID all the time, but once in a while it gives us null value for the internal ID.
The application keeps running all the time and passing the same value every time to this service for getting the profiles internal ID. Is thr any other alternative we can check from our side…
other thing that i can think of, is the DB connectivity. Make sure, you are not timing out on the DB connection / ran out of connections. Having a debug statement after the db connection service and after fetching the results, in your main service, will help you narrow down troubleshooting such issues.
This is really nice hint, but I m sure there is no such thing occurring at the time of failure…
Hereby I searched the Wm Advantage Knowledge base and found the same issue for some other application….
Here is the issue and the solution from wm in bold
When executing the Trading Networks API
“wm.tn.profile:getInternalID” under heavy load conditions,
ebXML Module intermittently retrieves a “null” value for the internal ID.
The ebXML Module invokes the Trading Networks API
“wm.tn.profile:getInternalID” to fetch the internal ID
for a trading partner when processing an incoming message.
Under heavy load of incoming messages, this API may return
a “null” value for the internal ID. This behavior interrupts
the processing of the incoming message.
This issue is resolved. The internal ID for a trading partner
is now cached to avoid a fresh query to Trading Networks for
each incoming message.
WM has provided a fix to resolve this issue.
My question is now how can I get a fix for this issue? Shall I ask WM ??
Yes, request the fix from wM tech support.