自 java 8 以来,tomcat 日志中出现“位置 X 处未知类型常量池”

问题描述 投票:0回答:4

我在 Tomcat 服务器上部署了一个基于 Java JSF2 Web 的应用程序,自从我们迁移到 Java 8 / Tomcat 8 后,此错误在 tomcat 输出中出现很多:

déc. 05, 2016 10:51:07 AM com.sun.faces.config.JavaClassScanningAnnotationScanner$ConstantPoolInfo containsAnnotation
GRAVE: Unknow type constant pool 0 at position 178

我尝试了不同的方法来修复此警告,但它总是回来。

此日志是否是任何问题的征兆?这只是正常输出吗?有办法解决这个问题吗?

java jsf tomcat jsf-2 tomcat8
4个回答
12
投票

我也提出了同样的问题

今天我将 pom.xml 文件更新为 jsf 版本:2.2.15,并且错误日志消失了。

<dependency>
   <groupId>com.sun.faces</groupId>
   <artifactId>jsf-api</artifactId>
   <version>${jsf.version}</version>
   <scope>provided</scope>
</dependency>

<dependency>
   <groupId>com.sun.faces</groupId>
   <artifactId>jsf-impl</artifactId>
   <version>${jsf.version}</version>
   <scope>provided</scope>
</dependency>

8
投票

根据我的研究,这似乎是 JSF 实现中的一个错误,并在 JSF 版本 2.3.0-m02 中修复了

报告的错误: http://github.com/javaserverfaces/mojarra/issues/3736 https://github.com/javaserverfaces/mojarra/issues/3780

从哪里获取 JSF 实现的固定版本 http://repo1.maven.org/maven2/javax/faces/javax.faces-api/2.2/ http://repo1.maven.org/maven2/org/glassfish/javax.faces/2.3.0-m02/

或者使用(2.3.0-m02或更高版本)更新maven POM依赖项:

<groupId>org.glassfish</groupId>
<artifactId>javax.faces</artifactId>
<version>2.3.0-m02</version>

3
投票

我也遇到了同样的问题。我将 pom.xml 文件更新到 2.2.11 后解决了。

<groupId>com.sun.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>2.2.11</version>

<artifactId>jsf-impl</artifactId>
<version>2.2.11</version>

postConstruct 没有在某些 ManagedBean 中执行,没有任何错误。


0
投票

Eu consegui uma solução usando versão 2.2.2 do jsf

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <jetty.version>6.1.4</jetty.version>
    <jsf.version>2.2.2</jsf.version>
</properties>




    <!-- https://mvnrepository.com/artifact/com.sun.faces/jsf-api -->
    <dependency>
       <groupId>com.sun.faces</groupId>
       <artifactId>jsf-api</artifactId>
       <version>${jsf.version}</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/com.sun.faces/jsf-impl -->
    <dependency>
       <groupId>com.sun.faces</groupId>
       <artifactId>jsf-impl</artifactId>
       <version>${jsf.version}</version>
    </dependency>
© www.soinside.com 2019 - 2024. All rights reserved.