Hi Gurus,
Seems that I really need your help with investigation of some strange situation.
I am faced with something similar lake that
https://www.devconnectprogram.com/forums/posts/list/17281.page#p70297
In short:
1. I have a Main IVR.
2. I have a Module which I use in Main IVR.
3. Module makes a request to a REST web service. I make it via Java code in Servlet (I do not use in this app REST Connector). Timeout to request is set to 15 seconds.
4. Web service does not provide an answer in 15 seconds. In Module I have special code to process such behavior but in reality the code does not work.
5. In trace.log I receive error.badfetch BUT in Main IVR. And all the processing of an error in Main IVR.
6. In trace.log Then I receive "AxisFault: Read timed out"(seems that 15 seconds had gone) from the Module and then "Capturing exception [java.lang.NullPointerException]. Message [null] " from the module right after timeout.
In the catalina.out I have several errors.
************************************************************************************************************
Request is invalid sessionid [E1C69F22ADD5871F5E458F6AF0FFCCC0:/RSHB_CallSteering] class [flow.JAVA_OCRM_GetApplicationByPhone] and saved class name [flow.TRANSF_ErrorHandler is -> false
Request is invalid sessionid [E1C69F22ADD5871F5E458F6AF0FFCCC0:/RSHB_CallSteering] class [flow.JAVA_OCRM_GetApplicationByPhone] and saved class name [flow.TRANSF_ErrorHandler is -> false
*** Abandoning thread sessionid [E1C69F22ADD5871F5E458F6AF0FFCCC0:/RSHB_CallSteering], request invalid AppServlet, ignore trace above
*** Abandoning thread sessionid [E1C69F22ADD5871F5E458F6AF0FFCCC0:/RSHB_CallSteering], request invalid AppServlet, ignore trace above
Request is invalid sessionid [E1C69F22ADD5871F5E458F6AF0FFCCC0:/RSHB_CallSteering] class [flow.Start] and saved class name [flow.TRANSF_ErrorHandler is -> false
Request is invalid sessionid [E1C69F22ADD5871F5E458F6AF0FFCCC0:/RSHB_CallSteering] class [flow.Start] and saved class name [flow.TRANSF_ErrorHandler is -> false
***** Saw exception, tracing before report
java.lang.NullPointerException
at ocrmws.GetApplicationByPhone.getApplicationByPhoneWS(GetApplicationByPhone.java:185)
at ocrmws.GetApplicationByPhone.run(GetApplicationByPhone.java:198)
at flow.JAVA_OCRM_GetApplicationByPhone.servletImplementation(JAVA_OCRM_GetApplicationByPhone.java:81)
************************************************************************************************************
So, my assumption: in Main IVR for some reason I have fetch timeout 15 seconds (I do not know what is the default value for that timeout) and it happens several milliseconds earlier than the Axis timeout in the Module.
That's why I do not have a proper processing of axis timeout in Module but error.badfetch in Main IVR. And after bad fetch the session is invalidated and threads in Module are not valid anymore.
And that's why I see errors in catalina.out
Abandoning thread sessionid....
Request is invalid sessionid....
Can you please tell me If I correctly understand the situation?
If yes, then how I can check and set the default fetch timeout while using Module?
My brain is burning ... please tell me if I right or not... ?
Thanks in advance!