Uploaded image for project: 'OFBiz'
  1. OFBiz
  2. OFBIZ-8342

ConfigXMLReader doesn't verify if "transaction-timeout" is set before trying to unbox

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: Trunk
    • Fix Version/s: 16.11.01
    • Component/s: None
    • Labels:
      None
    • Flags:
      Patch

      Description

      site-conf.xsd doesn't define transaction-timeout as being mandatory but ConfigXMLReader treats it as one and in the absence of the attribute an exception is being thrown causing the application to break.

      Stacktrace:

      java.lang.NumberFormatException: For input string: ""
              java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
              java.lang.Integer.parseInt(Integer.java:592)
              java.lang.Integer.valueOf(Integer.java:766)
              org.apache.ofbiz.webapp.control.ConfigXMLReader$Event.<init>(ConfigXMLReader.java:514)
              org.apache.ofbiz.webapp.control.ConfigXMLReader$RequestMap.<init>(ConfigXMLReader.java:573)
              org.apache.ofbiz.webapp.control.ConfigXMLReader$ControllerConfig.loadRequestMap(ConfigXMLReader.java:487)
              org.apache.ofbiz.webapp.control.ConfigXMLReader$ControllerConfig.<init>(ConfigXMLReader.java:203)
              org.apache.ofbiz.webapp.control.ConfigXMLReader.getControllerConfig(ConfigXMLReader.java:144)
              org.apache.ofbiz.webapp.control.RequestHandler.<init>(RequestHandler.java:91)
              org.apache.ofbiz.webapp.control.RequestHandler.getRequestHandler(RequestHandler.java:81)
              org.apache.ofbiz.webapp.control.ControlServlet.getRequestHandler(ControlServlet.java:326)
              org.apache.ofbiz.webapp.control.ControlServlet.init(ControlServlet.java:77)
              org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
              org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
              org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
              org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528)
              org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1100)
              org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:687)
              org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520)
              org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476)
              java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
              java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
              org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
              java.lang.Thread.run(Thread.java:745)
      

        Issue Links

          Activity

          Hide
          jacques.le.roux Jacques Le Roux added a comment -

          Thanks Valery,

          Your patch is committed in
          trunk at revision 1770539
          R16.11 at revision 1770541

          I have slightly modified the patch, eventElement.getAttribute never
          returns null, it defaults to empty

          Show
          jacques.le.roux Jacques Le Roux added a comment - Thanks Valery, Your patch is committed in trunk at revision 1770539 R16.11 at revision 1770541 I have slightly modified the patch, eventElement.getAttribute never returns null, it defaults to empty

            People

            • Assignee:
              jacques.le.roux Jacques Le Roux
              Reporter:
              nchenzo Valery Chenzo
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development