Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-73374

Unable to run Pipeline or open Pipeline syntax if OpenText Application Automation Tools Version 24.2 is installed

      after installing this plugin OpenText Application Automation Tools Version24.2 it is impossible to open pipeline syntax.  here is the error log Jun 28, 2024 12:45:05 AM WARNING org.eclipse.jetty.server.handler.ContextHandler$Context log Error while serving http://10.10.120.143:8080/job/loadtest_pipeline/pipeline-syntax java.lang.ExceptionInInitializerError: Exception java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory [in thread "Handling GET /job/loadtest_pipeline/ from 10.10.158.39 : Jetty (winstone)-16 Job/index.jelly WorkflowJob/sidepanel.jelly Actionable/actions.jelly"]

        1. Capture1.PNG
          Capture1.PNG
          29 kB
        2. Capture-1.PNG
          Capture-1.PNG
          30 kB
        3. plugins.txt
          2 kB
        4. run-jenkins.sh
          0.9 kB

          [JENKINS-73374] Unable to run Pipeline or open Pipeline syntax if OpenText Application Automation Tools Version 24.2 is installed

          Mark Waite added a comment - - edited

          The "hello world" example Pipeline fails with Jenkins 2.463 and OpenText Application Automation Tools 24.2. Steps that I took:

          1. Create a plugins.txt file that lists the plugins to be installed, including most recent releases of Pipeline plugins and OpenText Application Automation Tools 24.2
          2. Create a run-jenkins.sh shell script that downloads Jenkins 2.463 and the plugins listed in the plugins.txt file
          3. Run the run-jenkins.sh shell script on a Linux computer with Java 17 or Java 21 and complete the setup wizard by creating a new user and choosing to install no additional plugins
          4. Create a Pipeline job using the "Hello world" example that is available from the Pipeline editor dropdown menu
          5. Run the Pipeline job and confirm that it fails

          The "Hello world" example Pipeline is:

          pipeline {
              agent any
              stages {
                  stage('Hello') {
                      steps {
                          echo 'Hello World'
                      }
                  }
              }
          }
          

          The failure message displayed in the Jenkins log when starting is:

          2024-06-28 11:19:42.918+0000 [id=42]    WARNING hudson.ExtensionFinder$Sezpoz#scout: Failed to scout com.microfocus.application.automation.tools.octane.actions.Webhooks
          java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory
                  at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
                  at jenkins.util.URLClassLoader2.findClass(URLClassLoader2.java:64)
                  at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:593)
                  at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
          Caused: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory
                  at PluginClassLoader for hp-application-automation-tools-plugin//com.microfocus.application.automation.tools.octane.configuration.SDKBasedLoggerProvider.getLogger(SDKBasedLoggerProvider.java:64
          

          The failure message displayed in the console output of the job when the Pipeline runs is:

          java.lang.ExceptionInInitializerError: Exception java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory [in thread "Handling GET /job/example-pipelibne/ from 172.16.16.156 : Jetty (winstone)-29 Job/index.jelly WorkflowJob/sidepanel.jelly Actionable/actions.jelly"]
          	at PluginClassLoader for hp-application-automation-tools-plugin//com.microfocus.application.automation.tools.octane.configuration.SDKBasedLoggerProvider.getLogger(SDKBasedLoggerProvider.java:64)
          	at PluginClassLoader for hp-application-automation-tools-plugin//com.microfocus.application.automation.tools.octane.configuration.JobConfigurationProxy.<clinit>(JobConfigurationProxy.java:73)
          	at PluginClassLoader for hp-application-automation-tools-plugin//com.microfocus.application.automation.tools.octane.configuration.ConfigurationAction.<init>(ConfigurationAction.java:48)
          	at PluginClassLoader for hp-application-automation-tools-plugin//com.microfocus.application.automation.tools.octane.configuration.ConfigurationActionFactory.createFor(ConfigurationActionFactory.java:59)
          

          The failure message in the Jenkins log when a Pipeline job opened from the "Configure" link on the sidebar of the job page is:

          2024-06-28 11:27:09.989+0000 [id=21]    WARNING h.ExpressionFactory2$JexlExpression#evaluate: Caught exception evaluating: attrs.actions ?: it.allActions ?: it.actions in /job/example-pipelibne/. Reason: java.lang.reflect.InvocationTargetException
          java.lang.ExceptionInInitializerError: Exception java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory [in thread "Handling GET /job/example-pipelibne/ from 172.16.16.156 : Jetty (winstone)-29 Job/index.jelly WorkflowJob/sidepanel.jelly Actionable/actions.jelly"]
                  at PluginClassLoader for hp-application-automation-tools-plugin//com.microfocus.application.automation.tools.octane.configuration.SDKBasedLoggerProvider.getLogger(SDKBasedLoggerProvider.java:64)
                  at PluginClassLoader for hp-application-automation-tools-plugin//com.microfocus.application.automation.tools.octane.configuration.JobConfigurationProxy.<clinit>(JobConfigurationProxy.java:73)
          Caused: java.lang.NoClassDefFoundError: Could not initialize class com.microfocus.application.automation.tools.octane.configuration.JobConfigurationProxy
                  at PluginClassLoader for hp-application-automation-tools-plugin//com.microfocus.application.automation.tools.octane.configuration.ConfigurationAction.<init>(ConfigurationAction.java:48)
                  at PluginClassLoader for hp-application-automation-tools-plugin//com.microfocus.application.automation.tools.octane.configuration.ConfigurationActionFactory.createFor(ConfigurationActionFactory.java:59)
                  at PluginClassLoader for hp-application-automation-tools-plugin//com.microfocus.application.automation.tools.octane.configuration.ConfigurationActionFactory.createFor(ConfigurationActionFactory.java:44)
          

          OpenText Application Automation Tools 24.2 and earlier depend on Apache Commons File Upload 1.5. Apache Commons File Upload 1.5 has been replaced in Jenkins 2.459 by Apache Commons File Upload 2. In order to upgrade from Spring Security 5.x (end of life 31 Aug 2024) to Spring Security 6.x, Jenkins must upgrade from Apache Commons File Upload 1.5 to Apache Commons File Upload 2.

          The workaround is to use an earlier Jenkins version (2.458, 2.452.2) or uninstall the OpenText Application Automation Tools plugin.

          Mark Waite added a comment - - edited The "hello world" example Pipeline fails with Jenkins 2.463 and OpenText Application Automation Tools 24.2. Steps that I took: Create a plugins.txt file that lists the plugins to be installed, including most recent releases of Pipeline plugins and OpenText Application Automation Tools 24.2 Create a run-jenkins.sh shell script that downloads Jenkins 2.463 and the plugins listed in the plugins.txt file Run the run-jenkins.sh shell script on a Linux computer with Java 17 or Java 21 and complete the setup wizard by creating a new user and choosing to install no additional plugins Create a Pipeline job using the "Hello world" example that is available from the Pipeline editor dropdown menu Run the Pipeline job and confirm that it fails The "Hello world" example Pipeline is: pipeline { agent any stages { stage( 'Hello' ) { steps { echo 'Hello World' } } } } The failure message displayed in the Jenkins log when starting is: 2024-06-28 11:19:42.918+0000 [id=42] WARNING hudson.ExtensionFinder$Sezpoz#scout: Failed to scout com.microfocus.application.automation.tools.octane.actions.Webhooks java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445) at jenkins.util.URLClassLoader2.findClass(URLClassLoader2.java:64) at java.base/java.lang. ClassLoader .loadClass( ClassLoader .java:593) at java.base/java.lang. ClassLoader .loadClass( ClassLoader .java:526) Caused: java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory at PluginClassLoader for hp-application-automation-tools-plugin //com.microfocus.application.automation.tools.octane.configuration.SDKBasedLoggerProvider.getLogger(SDKBasedLoggerProvider.java:64 The failure message displayed in the console output of the job when the Pipeline runs is: java.lang.ExceptionInInitializerError: Exception java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory [in thread "Handling GET /job/example-pipelibne/ from 172.16.16.156 : Jetty (winstone)-29 Job/index.jelly WorkflowJob/sidepanel.jelly Actionable/actions.jelly" ] at PluginClassLoader for hp-application-automation-tools-plugin //com.microfocus.application.automation.tools.octane.configuration.SDKBasedLoggerProvider.getLogger(SDKBasedLoggerProvider.java:64) at PluginClassLoader for hp-application-automation-tools-plugin //com.microfocus.application.automation.tools.octane.configuration.JobConfigurationProxy.<clinit>(JobConfigurationProxy.java:73) at PluginClassLoader for hp-application-automation-tools-plugin //com.microfocus.application.automation.tools.octane.configuration.ConfigurationAction.<init>(ConfigurationAction.java:48) at PluginClassLoader for hp-application-automation-tools-plugin //com.microfocus.application.automation.tools.octane.configuration.ConfigurationActionFactory.createFor(ConfigurationActionFactory.java:59) The failure message in the Jenkins log when a Pipeline job opened from the "Configure" link on the sidebar of the job page is: 2024-06-28 11:27:09.989+0000 [id=21] WARNING h.ExpressionFactory2$JexlExpression#evaluate: Caught exception evaluating: attrs.actions ?: it.allActions ?: it.actions in /job/example-pipelibne/. Reason: java.lang.reflect.InvocationTargetException java.lang.ExceptionInInitializerError: Exception java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory [in thread "Handling GET /job/example-pipelibne/ from 172.16.16.156 : Jetty (winstone)-29 Job/index.jelly WorkflowJob/sidepanel.jelly Actionable/actions.jelly" ] at PluginClassLoader for hp-application-automation-tools-plugin //com.microfocus.application.automation.tools.octane.configuration.SDKBasedLoggerProvider.getLogger(SDKBasedLoggerProvider.java:64) at PluginClassLoader for hp-application-automation-tools-plugin //com.microfocus.application.automation.tools.octane.configuration.JobConfigurationProxy.<clinit>(JobConfigurationProxy.java:73) Caused: java.lang.NoClassDefFoundError: Could not initialize class com.microfocus.application.automation.tools.octane.configuration.JobConfigurationProxy at PluginClassLoader for hp-application-automation-tools-plugin //com.microfocus.application.automation.tools.octane.configuration.ConfigurationAction.<init>(ConfigurationAction.java:48) at PluginClassLoader for hp-application-automation-tools-plugin //com.microfocus.application.automation.tools.octane.configuration.ConfigurationActionFactory.createFor(ConfigurationActionFactory.java:59) at PluginClassLoader for hp-application-automation-tools-plugin //com.microfocus.application.automation.tools.octane.configuration.ConfigurationActionFactory.createFor(ConfigurationActionFactory.java:44) OpenText Application Automation Tools 24.2 and earlier depend on Apache Commons File Upload 1.5. Apache Commons File Upload 1.5 has been replaced in Jenkins 2.459 by Apache Commons File Upload 2. In order to upgrade from Spring Security 5.x ( end of life 31 Aug 2024 ) to Spring Security 6.x, Jenkins must upgrade from Apache Commons File Upload 1.5 to Apache Commons File Upload 2. The workaround is to use an earlier Jenkins version (2.458, 2.452.2) or uninstall the OpenText Application Automation Tools plugin.

          Laura Buzas added a comment -

          donachou markewaite 

          The team is working on releasing version 24.3 that should come out early September. This one will have an upgrade to Java 21 and also the Apache Commons File Upload library was removed to make the plugin compatible with the latest Jenkins LTS version. 

          Laura Buzas added a comment - donachou markewaite   The team is working on releasing version 24.3 that should come out early September. This one will have an upgrade to Java 21 and also the Apache Commons File Upload library was removed to make the plugin compatible with the latest Jenkins LTS version. 

            buzas Laura Buzas
            donachou donachou
            Votes:
            4 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated: