After Patching Rdc 4.6.0.23 Getting Error Message "Failed All Attempts To Create Executable" (Doc ID 1343284.1)

Last updated on MARCH 08, 2017

Applies to:

Oracle Clinical - Version: 4.6.0 and later   [Release: 4.6 and later ]
Information in this document applies to any platform.

Symptoms


After applying patch 4.6.0.12 and 4.6.0.23, upon entering OC RDC and opening an eCRF page, immediately the error message "Failed All Attempts To Create Executable" is displayed.


ERROR MESSAGES: "Failed All Attempts To Create Executable"

MORE DETAILED ERROR MESSAGES:

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiRequestBroker, Method: createMessenger
ExecRunner failed.
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiRequestBroker, Method: createMessenger
Calling runner for exec. Attempt 2
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiExecRunner, Method: getDcapiExec
First free port is: 20067
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner, Method: createDcapiExec
Creating command line
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner, Method: createDcapiExec
Checking which desktop is available for starting process.
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiDesktop, Method: isFull
IsFull called. Returning false
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner, Method: createDcapiExec
Trying to start process in desktop 0
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiDesktop, Method: close
Returned from exitNative.Result:
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner, Method: createDcapiExec
CreateDcapIExec returned
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner, Method: createDcapiExec
Process could not be started.
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Exception thrown: 1
java.lang.ArrayIndexOutOfBoundsException: 1
at oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner.createDcapiExec(DcapiNativeExecRunner.java:286)
at oracle.pharma.oc.dcapi.impl.DcapiExecRunner.getDcapiExec(DcapiExecRunner.java:238)
at oracle.pharma.oc.dcapi.impl.DcapiExecRunner.getDcapiExec(DcapiExecRunner.java:214)
at oracle.pharma.oc.dcapi.impl.DcapiRequestBroker.createMessenger(DcapiRequestBroker.java:144)
at oracle.pharma.oc.dcapi.impl.DcapiRequestBroker.getDcapiMessenger(DcapiRequestBroker.java:216)
at oracle.pharma.oc.dcapi.impl.DcapiSocket.<init>(DcapiSocket.java:104)
at oracle.pharma.oc.dcapi.impl.DcapiSocket$DcapiSocketFactory.createDataCaptureEngine(DcapiSocket.java:1132)
at oracle.pharma.oc.dcapi.impl.DcapiCreator.createDcapi(DcapiCreator.java:77)
at oracle.pharma.rdc.de.util.DcapiManager.getDcapi(DcapiManager.java:189)
at oracle.pharma.rdc.de.servlet.InitController.doPost(InitController.java:618)
at oracle.pharma.rdc.de.servlet.InitController.doGet(InitController.java:140)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:835)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:341)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:230)
at _rdcHtmlCrf._jspService(_rdcHtmlCrf.java:60)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:356)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:498)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:402)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:835)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:341)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:230)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:239)
at oracle.pharma.rdc.adf.extension.RdcADFBindingFilter.doFilter(RdcADFBindingFilter.java:72)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:674)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:341)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:816)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:231)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:136)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
at java.lang.Thread.run(Thread.java:534)
Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiRequestBroker, Method: createMessenger
ExecRunner failed.
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiRequestBroker, Method: createMessenger
Maximum number of attempts to create messenger exhausted <<< this failure results in throwing the error message: "Failed All Attempts To Create Executable"


OCCURRENCE PATTERNS: consistent since applying patch 4.6.0.12 and 4.6.0.23. Oddly enough, however, these patches are working fine in a test instance. Only fails in the production instance. Also appears to be unrelated to any of the scaling issues because at this point only about five users are accessing the system. Suggestions from the Performance and Scalability white paper have been implemented, but should not be a factor.

WORKAROUNDS: unknown, have already implemented all suggestions in Note 1156693.1, plus reapplying the patches 4-5 times. Disabling the reverse proxy setup has not helped.

WHAT IS WORKING: can login to RDC Onsite, but as soon as one clicks on a CRF icon in the surround the error message is presented.

MORE DETAILED ERROR MESSAGES:

This was determined first by noting when the process fails by examining the detailed log file:

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiRequestBroker, Method: createMessenger
Calling runner for exec. Attempt 2
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiExecRunner, Method: getDcapiExec
First free port is: 20067
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner, Method: createDcapiExec
Creating command line
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner, Method: createDcapiExec
Checking which desktop is available for starting process.
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiDesktop, Method: isFull
IsFull called. Returning false
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner, Method: createDcapiExec
Trying to start process in desktop 0
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiDesktop, Method: close
Returned from exitNative.Result:
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner, Method: createDcapiExec
CreateDcapIExec returned
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner, Method: createDcapiExec
Process could not be started.
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Exception thrown: 1
java.lang.ArrayIndexOutOfBoundsException: 1
at oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner.createDcapiExec(DcapiNativeExecRunner.java:286)
at oracle.pharma.oc.dcapi.impl.DcapiExecRunner.getDcapiExec(DcapiExecRunner.java:238)
at oracle.pharma.oc.dcapi.impl.DcapiExecRunner.getDcapiExec(DcapiExecRunner.java:214)
at oracle.pharma.oc.dcapi.impl.DcapiRequestBroker.createMessenger(DcapiRequestBroker.java:144)
at oracle.pharma.oc.dcapi.impl.DcapiRequestBroker.getDcapiMessenger(DcapiRequestBroker.java:216)
at oracle.pharma.oc.dcapi.impl.DcapiSocket.<init>(DcapiSocket.java:104)
at oracle.pharma.oc.dcapi.impl.DcapiSocket$DcapiSocketFactory.createDataCaptureEngine(DcapiSocket.java:1132)
at oracle.pharma.oc.dcapi.impl.DcapiCreator.createDcapi(DcapiCreator.java:77)
at oracle.pharma.rdc.de.util.DcapiManager.getDcapi(DcapiManager.java:189)
at oracle.pharma.rdc.de.servlet.InitController.doPost(InitController.java:618)
at oracle.pharma.rdc.de.servlet.InitController.doGet(InitController.java:140)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:835)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:341)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:230)
at _rdcHtmlCrf._jspService(_rdcHtmlCrf.java:60)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:356)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:498)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:402)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:835)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:341)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:230)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:239)
at oracle.pharma.rdc.adf.extension.RdcADFBindingFilter.doFilter(RdcADFBindingFilter.java:72)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:674)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:341)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:816)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:231)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:136)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
at java.lang.Thread.run(Thread.java:534)
Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiRequestBroker, Method: createMessenger
ExecRunner failed.
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiRequestBroker, Method: createMessenger
Maximum number of attempts to create messenger exhausted
--------------------------------------



After the createDcapiExec method attempts to create a dcapi service, it then attempts to launch a .dll. Since the user rights are not established properly in the Windows environment, it is not able to complete this request.

This is shown by the fact that the following two steps return nothing. They should be showing the successful results of launching the command line created a couple steps before:

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiDesktop, Method: close
Returned from exitNative.Result:
--------------------------------------

Time: Sun Jul 17 09:10:15 CEST 2011
Class: oracle.pharma.oc.dcapi.impl.DcapiNativeExecRunner, Method: createDcapiExec
CreateDcapIExec returned
--------------------------------------

User was also successful upon attempting to launch the command line using the created executable.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms