Incompatibilité de Type: impossible de convertir de Boolean boolean

- Je obtenir cette exception:

org.apache.jasper.JasperException: Impossible de compiler la classe pour les JSP

Je suis en utilisant tomcat 5.5.23.

org.apache.jasper.JasperException: Impossible de compiler la classe pour les JSP:

Une erreur s'est produite à la ligne: 29 dans le fichier jsp: /jsp/général/pos/DoMultiWordFrozen.jspf

Incompatibilité de Type: impossible de convertir de Boolean boolean

26:

27: item = (ItemType)session.getAttribute("item");

28: id = Integer.parseInt((String)session.getAttribute("id"));

29: newItem = Booléen.valueOf((String)session.getAttribute("newItem"));

30: changeGroup = null;

31:

32: if (!newItem && point.getMultiWordFrozen() != null && id != 0) {

Stacktrace:

org.apache.jasper.compilateur.DefaultErrorHandler.javacError(jasper5-compilateur-5.5.23.jar.donc)
org.apache.jasper.compilateur.ErrorDispatcher.javacError(jasper5-compilateur-5.5.23.jar.donc)
org.apache.jasper.compilateur.JDTCompiler.generateClass(jasper5-compilateur-5.5.23.jar.donc)
org.apache.jasper.compilateur.Compilateur.compiler(jasper5-compilateur-5.5.23.jar.donc)
org.apache.jasper.compilateur.Compilateur.compiler(jasper5-compilateur-5.5.23.jar.donc)
org.apache.jasper.compilateur.Compilateur.compiler(jasper5-compilateur-5.5.23.jar.donc)
org.apache.jasper.JspCompilationContext.compiler(jasper5-compilateur-5.5.23.jar.donc)
org.apache.jasper.servlet.JspServletWrapper.service(jasper5-compilateur-5.5.23.jar.donc)
org.apache.jasper.servlet.JspServlet.serviceJspFile(jasper5-compilateur-5.5.23.jar.donc)
org.apache.jasper.servlet.JspServlet.service(jasper5-compilateur-5.5.23.jar.donc)
javax.servlet.http.HttpServlet.service(tomcat5--servlet 2.4-api-5.5.23.jar.donc)

newitem est défini comme:

boolean newItem = false;

SOLUTION:

Cela a été causé parce que j'ai utilisé un ancienne version du JDK qui ne comprennent pas autobxing
après la mise à niveau de jdk 1.6 (ou de toute >= 1.5 ). Il fonctionne bien maintenant.

  • essayez newItem = session.getAttribute("newItem");
  • Semble que vous êtes en utilisant la version Java de moins de 1,5 pour la compilation de pages Jsp. 1.5 un unboxing (conversion de "boîte", c'est à dire un objet Boolean, à un simple 'boolean' type) devrait être fait automatiquement. Si possible, je vous suggère d'utiliser les nouvelles JDK
  • java -version java version "1.6.0_20" OpenJDK Environnement d'Exécution (IcedTea6 1.9.10) (rhel-1.23.1.9.10.el5_7-x86_64) OpenJDK 64-Bit Server VM (build 19.0-b09, en mode mixte)
InformationsquelleAutor yossi | 2012-01-18