Bdm ha scritto:
Capito. Non è una buona prassi aggiungere jar esterni perchè è già tutto compreso nella libreria di TomEE. Però non capisco perchè , pur impostando l' application server TomEE , non riconosca il package javax.servlet.* .credo di aver fatto tutto giusto ma niente da fare.
Poi poco fa ho provato a caricare sulla java build path il singolo package javax.servlet( preso dalla stessa libreria di TomEE 7.1.4) e adesso non da piu problemi di importazione del package. L'unico problema che adesso ho è che non va più il server.
Capisco che i log (e gli stacktrace) sono lunghi e noiosi da leggere .... ma forse non hai notato una riga importante nello stacktrace:
Caused by: java.lang.RuntimeException: Unable to read class definition for
it.corso.java.business.CorsoWeb
at org.apache.xbean.finder.AnnotationFinder.readClassDef(AnnotationFinder.java:1180)
at org.apache.xbean.finder.AnnotationFinder.<init>(AnnotationFinder.java:153)
at org.apache.xbean.finder.AnnotationFinder.<init>(AnnotationFinder.java:166)
at org.apache.openejb.config.FinderFactory$OpenEJBAnnotationFinder.<init>(FinderFactory.java:546)
at org.apache.openejb.config.FinderFactory.newFinder(FinderFactory.java:267)
at org.apache.openejb.config.FinderFactory.create(FinderFactory.java:80)
at org.apache.openejb.config.FinderFactory.createFinder(FinderFactory.java:69)
at org.apache.openejb.config.DeploymentLoader.addWebModule(DeploymentLoader.java:882)
... 14 more
Caused by: java.lang.IllegalArgumentException: Unsupported class file major version 59
at org.apache.xbean.asm7.ClassReader.<init>(ClassReader.java:195)
at org.apache.xbean.asm7.ClassReader.<init>(ClassReader.java:176)
at org.apache.xbean.asm7.ClassReader.<init>(ClassReader.java:162)
at org.apache.xbean.asm7.ClassReader.<init>(ClassReader.java:283)
at org.apache.xbean.finder.AnnotationFinder.readClassDef(AnnotationFinder.java:1176)
Il class version major 59 è relativo a Java 15. Questo vuol dire che ci sono delle classi (direi che sono le
tue) compilate con Java 15 ma poi (per qualche motivo) stai facendo girare tutto quanto, cioè il TomEE, con un runtime Java
inferiore.