title: TomEE :- Caused by: java.lang.RuntimeException at org.apache.xbean.asm5.MethodVisitor.visitTypeAnnotation(Unknown Source)
body: <p>I have a spring mvc web application (maven). It runs on JDK 1.7 perfectly , but the error occurred when i try with 1.8.</p>
  
  <p>Similar question asked <a href="https://stackoverflow.com/questions/22921889/tomee-unable-to-create-annotation-scanner-for-web-module-null">here</a>. Where they moved back to 1.7.</p>
  
  <p>But i want to run on 1.8. How can i do that ? i also hear ASM 5 can run it (Not sure). Where do i suppose to change dispatcher servlet or web.xml or spring version ?</p>
  
  <pre><code>java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/gurusahakari]]
  at java.util.concurrent.FutureTask.report(FutureTask.java:122)
  at java.util.concurrent.FutureTask.get(FutureTask.java:192)
  at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1122)
  at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:819)
  at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1574)
  at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1564)
  at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
  at java.lang.Thread.run(Thread.java:748)
   Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/gurusahakari]]
  at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
  ... 6 more
   Caused by: org.apache.tomee.catalina.TomEERuntimeException: org.apache.openejb.OpenEJBException: Unable to create annotation scanner for web module gurusahakari: null
  at org.apache.tomee.catalina.TomcatWebAppBuilder.loadApplication(TomcatWebAppBuilder.java:2198)
  at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1147)
  at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1100)
  at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:130)
  at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
  at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
  at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5419)
  at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  ... 6 more
    Caused by: org.apache.openejb.OpenEJBException: Unable to create annotation scanner for web module gurusahakari: null
  at org.apache.openejb.config.DeploymentLoader.addWebModule(DeploymentLoader.java:849)
  at org.apache.openejb.config.DeploymentLoader.load(DeploymentLoader.java:221)
  at org.apache.tomee.catalina.TomcatWebAppBuilder.loadApplication(TomcatWebAppBuilder.java:2196)
  ... 13 more
   Caused by: java.lang.RuntimeException
  at org.apache.xbean.asm5.MethodVisitor.visitTypeAnnotation(Unknown Source)
  at org.apache.xbean.asm5.ClassReader.b(Unknown Source)
  at org.apache.xbean.asm5.ClassReader.accept(Unknown Source)
  at org.apache.xbean.asm5.ClassReader.accept(Unknown Source)
  at org.apache.xbean.finder.AnnotationFinder.readClassDef(AnnotationFinder.java:1170)
  at org.apache.xbean.finder.AnnotationFinder.&lt;init&gt;(AnnotationFinder.java:147)
  at org.apache.xbean.finder.AnnotationFinder.&lt;init&gt;(AnnotationFinder.java:160)
  at org.apache.openejb.config.FinderFactory$OpenEJBAnnotationFinder.&lt;init&gt;(FinderFactory.java:514)
  at org.apache.openejb.config.FinderFactory.newFinder(FinderFactory.java:259)
  at org.apache.openejb.config.FinderFactory.create(FinderFactory.java:77)
  at org.apache.openejb.config.FinderFactory.createFinder(FinderFactory.java:66)
  at org.apache.openejb.config.DeploymentLoader.addWebModule(DeploymentLoader.java:841)
  ... 15 more
  </code></pre>
  
  <p>Here is my dependency:tree result </p>
  
  <pre><code>[WARNING] Some problems were encountered while building the effective model for com.guru.gurusahakari:gurusahakari:war:0.0.1-SNAPSHOT
  [WARNING] 'dependencies.dependency.(groupId:artifactId:type:classifier)' must be unique: junit:junit:jar -&gt; duplicate declaration of version 3.8.1 @ line 246, column 15
  [WARNING] 
  [WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
  [WARNING] 
  [WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
  [WARNING] 
  [INFO]                                                                         
  [INFO] ------------------------------------------------------------------------
  [INFO] Building gurusahakari 0.0.1-SNAPSHOT
  [INFO] ------------------------------------------------------------------------
  [INFO] 
  [INFO] --- maven-dependency-plugin:2.1:tree (default-cli) @ gurusahakari ---
  [INFO] com.guru.gurusahakari:gurusahakari:war:0.0.1-SNAPSHOT
  [INFO] +- org.codehaus.jackson:jackson-mapper-asl:jar:1.9.7:compile
  [INFO] +- org.codehaus.jackson:jackson-core-asl:jar:1.9.7:compile
  [INFO] +- junit:junit:jar:3.8.1:test
  [INFO] +- javax.validation:validation-api:jar:2.0.1.Final:compile
  [INFO] +- org.hibernate:hibernate-validator:jar:4.0.2.GA:compile
  [INFO] |  +- org.slf4j:slf4j-api:jar:1.5.6:compile
  [INFO] |  +- javax.xml.bind:jaxb-api:jar:2.1:compile
  [INFO] |  |  +- javax.xml.stream:stax-api:jar:1.0-2:compile
  [INFO] |  |  \- javax.activation:activation:jar:1.1:compile
  [INFO] |  \- com.sun.xml.bind:jaxb-impl:jar:2.1.3:compile
  [INFO] +- org.apache.bval:bval-jsr303:jar:0.5:compile
  [INFO] |  +- org.apache.bval:bval-core:jar:0.5:compile
  [INFO] |  |  \- commons-beanutils:commons-beanutils-core:jar:1.8.3:compile
  [INFO] |  \- org.apache.commons:commons-lang3:jar:3.1:compile
  [INFO] +- org.springframework.session:spring-session:jar:1.0.0.RELEASE:compile 
  [INFO] +- org.springframework:spring-context-support:jar:4.3.7.RELEASE:compile
  [INFO] |  +- org.springframework:spring-beans:jar:4.3.7.RELEASE:compile
  [INFO] |  +- org.springframework:spring-context:jar:4.3.7.RELEASE:compile
  [INFO] |  \- org.springframework:spring-core:jar:4.3.7.RELEASE:compile
  [INFO] +- net.sf.jasperreports:jasperreports:jar:6.1.0:compile
  [INFO] |  +- commons-beanutils:commons-beanutils:jar:1.9.0:compile
  [INFO] |  +- commons-collections:commons-collections:jar:3.2.1:compile
  [INFO] |  +- commons-digester:commons-digester:jar:2.1:compile
  [INFO] |  +- commons-logging:commons-logging:jar:1.1.1:compile
  [INFO] |  +- com.lowagie:itext:jar:2.1.7.js2:compile
  [INFO] |  |  +- bouncycastle:bcmail-jdk14:jar:138:compile
  [INFO] |  |  +- bouncycastle:bcprov-jdk14:jar:138:compile
  [INFO] |  |  \- org.bouncycastle:bctsp-jdk14:jar:1.38:compile  
  [INFO] |  |     +- org.bouncycastle:bcprov-jdk14:jar:1.38:compile
  [INFO] |  |     \- org.bouncycastle:bcmail-jdk14:jar:1.38:compile
  [INFO] |  +- jfree:jcommon:jar:1.0.15:compile 
  [INFO] |  +- jfree:jfreechart:jar:1.0.12:compile
  [INFO] |  +- xml-apis:xml-apis:jar:1.3.02:compile
  [INFO] |  +- org.eclipse.jdt.core.compiler:ecj:jar:4.3.1:compile
  [INFO] |  +- org.codehaus.castor:castor-xml:jar:1.3.3:compile
  [INFO] |  |  +- org.codehaus.castor:castor-core:jar:1.3.3:compile
  [INFO] |  |  +- commons-lang:commons-lang:jar:2.6:compile
  [INFO] |  |  +- javax.inject:javax.inject:jar:1:compile
  [INFO] |  |  \- stax:stax:jar:1.2.0:compile
  [INFO] |  |     \- stax:stax-api:jar:1.0.1:compile
  [INFO] |  +- org.apache.lucene:lucene-core:jar:4.5.1:compile
  [INFO] |  +- org.apache.lucene:lucene-analyzers-common:jar:4.5.1:compile
  [INFO] |  +- org.apache.lucene:lucene-queryparser:jar:4.5.1:compile
  [INFO] |  |  +- org.apache.lucene:lucene-queries:jar:4.5.1:compile
  [INFO] |  |  \- org.apache.lucene:lucene-sandbox:jar:4.5.1:compile
    [INFO] |  |     \- jakarta-regexp:jakarta-regexp:jar:1.4:compile
   [INFO] |  +- org.olap4j:olap4j:jar:0.9.7.309-JS-3:compile
  [INFO] |  \- com.google.zxing:core:jar:2.3.0:compile
  [INFO] +- org.springframework:spring-webmvc:jar:4.3.7.RELEASE:compile
  [INFO] |  +- org.springframework:spring-aop:jar:4.3.7.RELEASE:compile
   [INFO] |  +- org.springframework:spring-expression:jar:4.3.7.RELEASE:compile
   [INFO] |  \- org.springframework:spring-web:jar:4.3.7.RELEASE:compile
     [INFO] +- javax.servlet:javax.servlet-api:jar:4.0.1:provided
     [INFO] +- commons-codec:commons-codec:jar:1.9:compile
      [INFO] +- com.sun.xml.messaging.saaj:saaj-impl:jar:1.3.18:compile
  [INFO] |  \- org.jvnet.mimepull:mimepull:jar:1.7:compile
    [INFO] +- org.slf4j:slf4j-log4j12:jar:1.7.11:compile
   [INFO] +- log4j:log4j:jar:1.2.17:compile
        [INFO] +- javax.servlet:jstl:jar:1.2:compile
      [INFO] +- com.fasterxml.jackson.core:jackson-databind:jar:2.5.0:compile
    [INFO] +- com.fasterxml.jackson.core:jackson-annotations:jar:2.5.0:compile
       [INFO] +- com.fasterxml.jackson.core:jackson-core:jar:2.5.0:compile
   [INFO] +- commons-fileupload:commons-fileupload:jar:1.3.1:compile
    [INFO] +- commons-io:commons-io:jar:2.4:compile
     [INFO] \- org.json:json:jar:20160810:compile
      [INFO] ------------------------------------------------------------------------
      [INFO] BUILD SUCCESS
      [INFO] ------------------------------------------------------------------------
     [INFO] Total time: 7.668 s
      [INFO] Finished at: 2018-08-12T10:08:25+05:45
  [INFO] Final Memory: 11M/158M
      [INFO] ------------------------------------------------------------------------
  </code></pre>
  
  <p>Here is my web.xml :</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  &lt;web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://xmlns.jcp.org/xml/ns/javaee"
  xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
  version="3.1"&gt;
  &lt;display-name&gt;gurusahakari&lt;/display-name&gt;
  &lt;listener&gt;
      &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener&lt;/listener-class&gt;
  &lt;/listener&gt;
  
  &lt;servlet&gt;
      &lt;servlet-name&gt;default&lt;/servlet-name&gt;
      &lt;servlet-class&gt;org.apache.catalina.servlets.DefaultServlet&lt;/servlet-class&gt;
  &lt;/servlet&gt;
  
  &lt;context-param&gt;
      &lt;param-name&gt;contextConfigLocation&lt;/param-name&gt;
      &lt;param-value&gt;/WEB-INF/spring/applicationContext.xml&lt;/param-value&gt;
  &lt;/context-param&gt;
  
  &lt;servlet&gt;
      &lt;servlet-name&gt;dispatcher&lt;/servlet-name&gt;
      &lt;servlet-class&gt;org.springframework.web.servlet.DispatcherServlet&lt;/servlet-class&gt;
      &lt;init-param&gt;
          &lt;param-name&gt;contextConfigLocation&lt;/param-name&gt;
          &lt;param-value&gt;/WEB-INF/spring/dispatcher-servlet.xml&lt;/param-value&gt;
      &lt;/init-param&gt;
      &lt;load-on-startup&gt;1&lt;/load-on-startup&gt;
  &lt;/servlet&gt;
  &lt;servlet-mapping&gt;
      &lt;servlet-name&gt;dispatcher&lt;/servlet-name&gt;
      &lt;url-pattern&gt;/&lt;/url-pattern&gt;
  &lt;/servlet-mapping&gt;
  
  &lt;context-param&gt;
      &lt;param-name&gt;master.db&lt;/param-name&gt;
      &lt;param-value&gt;master-db&lt;/param-value&gt;
  &lt;/context-param&gt;
  
  &lt;context-param&gt;
      &lt;param-name&gt;upload.image.path&lt;/param-name&gt;
      &lt;param-value&gt;/Software Backup/Images&lt;/param-value&gt;
  &lt;/context-param&gt;
  </code></pre>
  
  <p></p>
  
  <p>here is my pom.xml</p>
  
  <pre><code>&lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"&gt;
  &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;
  &lt;groupId&gt;com.abc.abcd&lt;/groupId&gt;
  &lt;artifactId&gt;abcd&lt;/artifactId&gt;
  &lt;packaging&gt;war&lt;/packaging&gt;
  &lt;version&gt;0.0.1-SNAPSHOT&lt;/version&gt;
  &lt;url&gt;http://maven.apache.org&lt;/url&gt;
  
  
  
  &lt;properties&gt;
      &lt;project.build.sourceEncoding&gt;UTF-8&lt;/project.build.sourceEncoding&gt;
      &lt;tomee.version&gt;2.0.0-SNAPSHOT&lt;/tomee.version&gt;
      &lt;version.shrinkwrap.resolver&gt;2.0.0&lt;/version.shrinkwrap.resolver&gt;
      &lt;javaassist.version&gt;3.21.0-GA&lt;/javaassist.version&gt;
  &lt;/properties&gt;
  
  &lt;repositories&gt;
      &lt;repository&gt;
          &lt;id&gt;apache-m2-snapshot&lt;/id&gt;
          &lt;name&gt;Apache Snapshot Repository&lt;/name&gt;
          &lt;url&gt;https://repository.apache.org/content/groups/snapshots&lt;/url&gt;
      &lt;/repository&gt;
  &lt;/repositories&gt;
  
  
  &lt;build&gt;
      &lt;sourceDirectory&gt;src&lt;/sourceDirectory&gt;
      &lt;!-- &lt;finalName&gt;gurusahakari&lt;/finalName&gt; --&gt;
      &lt;defaultGoal&gt;install&lt;/defaultGoal&gt;
  
      &lt;plugins&gt;
          &lt;plugin&gt;
              &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
              &lt;artifactId&gt;maven-dependency-plugin&lt;/artifactId&gt;
              &lt;version&gt;2.1&lt;/version&gt;
              &lt;executions&gt;
                  &lt;execution&gt;
                      &lt;id&gt;copy-test-libs&lt;/id&gt;
                      &lt;phase&gt;process-test-resources&lt;/phase&gt;
                      &lt;configuration&gt;
                          &lt;artifactItems&gt;
                              &lt;artifactItem&gt;
                                  &lt;groupId&gt;javax.servlet&lt;/groupId&gt;
                                  &lt;artifactId&gt;jstl&lt;/artifactId&gt;
                                  &lt;version&gt;1.2&lt;/version&gt;
                              &lt;/artifactItem&gt;
                              &lt;artifactItem&gt;
                                  &lt;groupId&gt;taglibs&lt;/groupId&gt;
                                  &lt;artifactId&gt;standard&lt;/artifactId&gt;
                                  &lt;version&gt;1.1.2&lt;/version&gt;
                              &lt;/artifactItem&gt;
                          &lt;/artifactItems&gt;
                          &lt;outputDirectory&gt;
                              ${project.build.directory}/test-libs
                          &lt;/outputDirectory&gt;
                          &lt;stripVersion&gt;true&lt;/stripVersion&gt;
                      &lt;/configuration&gt;
                      &lt;goals&gt;
                          &lt;goal&gt;copy&lt;/goal&gt;
                      &lt;/goals&gt;
                  &lt;/execution&gt;
              &lt;/executions&gt;
          &lt;/plugin&gt;
          &lt;plugin&gt;
              &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
              &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt;
              &lt;version&gt;2.17&lt;/version&gt;
              &lt;configuration&gt;
                  &lt;reuseForks&gt;false&lt;/reuseForks&gt; &lt;!-- otherwise openejb embedded and tomee embedded shares the same context 
                      and EJBContainer is broken --&gt;
              &lt;/configuration&gt;
          &lt;/plugin&gt;
          &lt;plugin&gt;
              &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
              &lt;artifactId&gt;maven-compiler-plugin&lt;/artifactId&gt;
              &lt;version&gt;3.8.0&lt;/version&gt;
              &lt;configuration&gt;
                  &lt;source&gt;1.8&lt;/source&gt;
                  &lt;target&gt;1.8&lt;/target&gt;
              &lt;/configuration&gt;
          &lt;/plugin&gt;
          &lt;plugin&gt;
              &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
              &lt;artifactId&gt;maven-eclipse-plugin&lt;/artifactId&gt;
              &lt;version&gt;2.9&lt;/version&gt;
              &lt;configuration&gt;
                  &lt;configuration&gt;
                      &lt;wtpapplicationxml&gt;true&lt;/wtpapplicationxml&gt;
                      &lt;wtpversion&gt;2.0&lt;/wtpversion&gt;
                  &lt;/configuration&gt;
              &lt;/configuration&gt;
          &lt;/plugin&gt;
  
          &lt;plugin&gt;
              &lt;groupId&gt;org.apache.aries.blueprint&lt;/groupId&gt;
              &lt;artifactId&gt;blueprint-maven-plugin&lt;/artifactId&gt;
              &lt;version&gt;1.4.0&lt;/version&gt;
              &lt;configuration&gt;
                  &lt;scanPaths&gt;
                      &lt;scanPath&gt;org.opendaylight&lt;/scanPath&gt;
                  &lt;/scanPaths&gt;
              &lt;/configuration&gt;
              &lt;dependencies&gt;
                  &lt;dependency&gt;
                      &lt;!-- https://stackoverflow.com/questions/38825386/blueprint-maven-plugin-runtimeexception --&gt;
                      &lt;groupId&gt;org.apache.xbean&lt;/groupId&gt;
                      &lt;artifactId&gt;xbean-finder-shaded&lt;/artifactId&gt;
                      &lt;version&gt;4.5&lt;/version&gt;
                  &lt;/dependency&gt;
              &lt;/dependencies&gt;
              &lt;executions&gt;
                  &lt;execution&gt;
                      &lt;goals&gt;
                          &lt;goal&gt;blueprint-generate&lt;/goal&gt;
                      &lt;/goals&gt;
                  &lt;/execution&gt;
              &lt;/executions&gt;
          &lt;/plugin&gt;
  
          &lt;plugin&gt;
              &lt;groupId&gt;org.apache.openejb.maven&lt;/groupId&gt;
              &lt;artifactId&gt;tomee-maven-plugin&lt;/artifactId&gt;
              &lt;version&gt;2.0.0-SNAPSHOT&lt;/version&gt;
              &lt;configuration&gt;
                  &lt;tomeeClassifier&gt;plus&lt;/tomeeClassifier&gt;
                  &lt;args&gt;-Xmx512m -XX:PermSize=256m&lt;/args&gt;
              &lt;/configuration&gt;
          &lt;/plugin&gt;
      &lt;/plugins&gt;
  &lt;/build&gt;
  
  &lt;dependencies&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.codehaus.jackson&lt;/groupId&gt;
          &lt;artifactId&gt;jackson-mapper-asl&lt;/artifactId&gt;
          &lt;version&gt;1.9.7&lt;/version&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.codehaus.jackson&lt;/groupId&gt;
          &lt;artifactId&gt;jackson-core-asl&lt;/artifactId&gt;
          &lt;version&gt;1.9.7&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;junit&lt;/groupId&gt;
          &lt;artifactId&gt;junit&lt;/artifactId&gt;
          &lt;version&gt;3.8.1&lt;/version&gt;
          &lt;scope&gt;test&lt;/scope&gt;
      &lt;/dependency&gt;
  
  
      &lt;!-- validation jar --&gt;
      &lt;!-- https://mvnrepository.com/artifact/javax.validation/validation-api --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;javax.validation&lt;/groupId&gt;
          &lt;artifactId&gt;validation-api&lt;/artifactId&gt;
          &lt;version&gt;2.0.1.Final&lt;/version&gt;
      &lt;/dependency&gt;
  
  
      &lt;dependency&gt;
          &lt;groupId&gt;org.hibernate&lt;/groupId&gt;
          &lt;artifactId&gt;hibernate-validator&lt;/artifactId&gt;
          &lt;version&gt;4.0.2.GA&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;!-- https://mvnrepository.com/artifact/org.apache.bval/bval-jsr303 --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.apache.bval&lt;/groupId&gt;
          &lt;artifactId&gt;bval-jsr303&lt;/artifactId&gt;
          &lt;version&gt;0.5&lt;/version&gt;
      &lt;/dependency&gt;
  
  
      &lt;!-- https://mvnrepository.com/artifact/org.springframework.session/spring-session --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework.session&lt;/groupId&gt;
          &lt;artifactId&gt;spring-session&lt;/artifactId&gt;
          &lt;version&gt;1.0.0.RELEASE&lt;/version&gt;
      &lt;/dependency&gt;
  
  
      &lt;!-- https://mvnrepository.com/artifact/org.springframework/spring-context-support --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework&lt;/groupId&gt;
          &lt;artifactId&gt;spring-context-support&lt;/artifactId&gt;
          &lt;version&gt;4.3.8.RELEASE&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;!-- https://mvnrepository.com/artifact/net.sf.jasperreports/jasperreports --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;net.sf.jasperreports&lt;/groupId&gt;
          &lt;artifactId&gt;jasperreports&lt;/artifactId&gt;
          &lt;version&gt;6.1.0&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework&lt;/groupId&gt;
          &lt;artifactId&gt;spring-webmvc&lt;/artifactId&gt;
          &lt;version&gt;4.3.8.RELEASE&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;!-- https://mvnrepository.com/artifact/org.springframework/spring-core --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework&lt;/groupId&gt;
          &lt;artifactId&gt;spring-core&lt;/artifactId&gt;
          &lt;version&gt;4.3.8.RELEASE&lt;/version&gt;
      &lt;/dependency&gt;
  
  
      &lt;!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;javax.servlet&lt;/groupId&gt;
          &lt;artifactId&gt;javax.servlet-api&lt;/artifactId&gt;
          &lt;version&gt;4.0.1&lt;/version&gt;
          &lt;scope&gt;provided&lt;/scope&gt;
      &lt;/dependency&gt;
  
      &lt;!-- https://mvnrepository.com/artifact/commons-codec/commons-codec --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;commons-codec&lt;/groupId&gt;
          &lt;artifactId&gt;commons-codec&lt;/artifactId&gt;
          &lt;version&gt;1.9&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;!-- https://mvnrepository.com/artifact/com.sun.xml.messaging.saaj/saaj-impl --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;com.sun.xml.messaging.saaj&lt;/groupId&gt;
          &lt;artifactId&gt;saaj-impl&lt;/artifactId&gt;
          &lt;version&gt;1.3.18&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;org.slf4j&lt;/groupId&gt;
          &lt;artifactId&gt;slf4j-log4j12&lt;/artifactId&gt;
          &lt;version&gt;1.7.11&lt;/version&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;log4j&lt;/groupId&gt;
          &lt;artifactId&gt;log4j&lt;/artifactId&gt;
          &lt;version&gt;1.2.17&lt;/version&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;javax.servlet&lt;/groupId&gt;
          &lt;artifactId&gt;jstl&lt;/artifactId&gt;
          &lt;version&gt;1.2&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;!-- jackson data biending --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;com.fasterxml.jackson.core&lt;/groupId&gt;
          &lt;artifactId&gt;jackson-databind&lt;/artifactId&gt;
          &lt;version&gt;2.5.0&lt;/version&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;com.fasterxml.jackson.core&lt;/groupId&gt;
          &lt;artifactId&gt;jackson-annotations&lt;/artifactId&gt;
          &lt;version&gt;2.5.0&lt;/version&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;com.fasterxml.jackson.core&lt;/groupId&gt;
          &lt;artifactId&gt;jackson-core&lt;/artifactId&gt;
          &lt;version&gt;2.5.0&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;!-- Apache Commons FileUpload --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;commons-fileupload&lt;/groupId&gt;
          &lt;artifactId&gt;commons-fileupload&lt;/artifactId&gt;
          &lt;version&gt;1.3.1&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;!-- Apache Commons IO --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;commons-io&lt;/groupId&gt;
          &lt;artifactId&gt;commons-io&lt;/artifactId&gt;
          &lt;version&gt;2.4&lt;/version&gt;
      &lt;/dependency&gt;
  
  
      &lt;dependency&gt;
          &lt;groupId&gt;junit&lt;/groupId&gt;
          &lt;artifactId&gt;junit&lt;/artifactId&gt;
          &lt;version&gt;3.8.1&lt;/version&gt;
          &lt;scope&gt;test&lt;/scope&gt;
      &lt;/dependency&gt;
  
      &lt;!-- https://mvnrepository.com/artifact/org.json/json --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.json&lt;/groupId&gt;
          &lt;artifactId&gt;json&lt;/artifactId&gt;
          &lt;version&gt;20160810&lt;/version&gt;
      &lt;/dependency&gt;
  &lt;/dependencies&gt;
  </code></pre>
  
  <p></p>
  
  <p>I used tomee 1.7.4 under tomcat 7.</p>