问题描述
我已经下载了 Eclipse 并尝试创建一个示例 servlet 程序,但出现以下错误
I have downloaded Eclipse and tried to create a sample servlet program but I got following error
无法解析 java.io.ObjectInputStream 类型.它是从所需的 .class 文件间接引用的
我已经正确配置了构建路径.我正在使用 Java 8 和 Apache Tomcat 7,并且正确引用了两者的库.
I have configured build path correctly.I am using Java 8 and Apache Tomcat 7 and libraries for both are referenced correctly.
问题仅针对 Java EE.通常 Java SE 项目运行良好.
Problem is specifically for Java EE only. Ordinarily Java SE projects are running fine.
推荐答案
Java 8 Update 91 中发生了一些破坏现有 JSP 代码的事情.这似乎很清楚.以下是类似问题和错误报告的示例:
Something happened in Java 8 Update 91 that broke existing JSP code. That seems pretty clear. Here is a sample of similar questions and bug reports:
- 无法使用 JDK1.8.0_92 编译 JSP 文件
- Spring MVC - 无法为 JSP 编译类
- 无法访问云平台客户端
- https://bugs.openjdk.java.net/browse/JDK-8155588(关闭为不是问题")
- https://bugs.openjdk.java.net/browse/JDK-8155223(关闭为不是问题")
- https://access.redhat.com/solutions/2294701
- https://alluxio.atlassian.net/browse/ALLUXIO-1956
- https://jira.atlassian.com/browse/CWD-4729
- https://community.exoplatform.com/portal/intranet/forum/话题/话题991e097d9e45345236bb2bd1920a4c68
- https://issues.apache.org/jira/browse/OOZIE-2533(来自评论:这真的看起来像一个 JDK 错误")
- https://bugzilla.redhat.com/show_bug.cgi?id=1337940(评论 2 提到更新 91 中对
java.io.ObjectInputStream
的更改使其与 RHEL6 当前的 ECJ 版本不兼容") - https://github.com/mit-cml/appinventor-sources/问题/814
- https://community.oracle.com/thread/3953395
- Unable to compile JSP file with JDK1.8.0_92
- Spring MVC - Unable to compile class for JSP
- Unable to access CloudPlatform Client
- https://bugs.openjdk.java.net/browse/JDK-8155588 (closed as "not an issue")
- https://bugs.openjdk.java.net/browse/JDK-8155223 (closed as "not an issue")
- https://access.redhat.com/solutions/2294701
- https://alluxio.atlassian.net/browse/ALLUXIO-1956
- https://jira.atlassian.com/browse/CWD-4729
- https://community.exoplatform.com/portal/intranet/forum/topic/topic991e097d9e45345236bb2bd1920a4c68
- https://issues.apache.org/jira/browse/OOZIE-2533 (from a comment: "This is really looking like a JDK bug")
- https://bugzilla.redhat.com/show_bug.cgi?id=1337940 (comment 2 mentions the change to
java.io.ObjectInputStream
in Update 91 that "made it incompatible with RHEL6's current ECJ version") - https://github.com/mit-cml/appinventor-sources/issues/814
- https://community.oracle.com/thread/3953395
所有这些都是关于 Java 8 Update 91(或更高版本)的问题,这些问题在使用早期 JRE/JDK 版本时不存在.
All these are about problems with Java 8 Update 91 (or later) that are not present when using earlier JRE/JDK versions.
以下自 2016 年 1 月 22 日起的 OpenJDK 变更集似乎相关:http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/rev/32f64c19b5fb(提交消息8144430:改进 JMX 连接").变更集似乎与此漏洞有关,https:///cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-3427,在对此 Red Hat 错误报告的评论中提到,https://bugzilla.redhat.com/show_bug.cgi?id=1336481.
The following OpenJDK changeset from 22 January 2016 appears to be related: http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/rev/32f64c19b5fb (commit message "8144430: Improve JMX connections"). The changeset seems to be related to this vulnerability, https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-3427, which is mentioned in a comment to this Red Hat bug report, https://bugzilla.redhat.com/show_bug.cgi?id=1336481.
Update 91 发行说明文档提到了 JDK-8144430(非公开票证):http://www.oracle.com/technetwork/java/javase/8u91-relnotes-2949462.html.
The Update 91 release notes document mentions JDK-8144430 (non-public ticket): http://www.oracle.com/technetwork/java/javase/8u91-relnotes-2949462.html.
在Oracle 重要补丁更新咨询 - 2016 年 4 月"中,提到了 CVE-2016-3427 漏洞:http://www.oracle.com/technetwork/security-advisory/cpuapr2016v3-2985753.html.
In "Oracle Critical Patch Update Advisory - April 2016", the CVE-2016-3427 vulnerability is mentioned: http://www.oracle.com/technetwork/security-advisory/cpuapr2016v3-2985753.html.
这篇关于无法解析 java.io.ObjectInputStream 类型.它是从所需的 .class 文件间接引用的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!