gpt4 book ai didi

来自 websphere 的 java.lang.NoClassDefFoundError

转载 作者:行者123 更新时间:2023-12-01 04:26:32 24 4
gpt4 key购买 nike

我有一个无法解决的问题。

上下文:

是 7.0.0.19 版本(没有 preCompileJsp)引起:java.lang.NoClassDefFoundError:org/apache/jsp/_xxx(错误名称:com/ibm/_jsp/_xxx)在java.lang.ClassLoader.defineClassImpl( native 方法)在java.lang.ClassLoader.defineClass(ClassLoader) .java:275) 在 java.lang.ClassLoader.defineClass(ClassLoader.java:212) 在 com.ibm.ws.jsp.webcontainerext.JSPExtensionClassLoader.defClass(JSPExtensionClassLoader.java:181) 在 com.ibm.ws.jsp。 webcontainerext.JSPExtensionClassLoader._loadClass(JSPExtensionClassLoader.java:133)

这是唯一出现问题的 JSP,并且仅在特定环境中(在具有相同配置的其他环境中没有问题)xxx.class 很好地存在于我的 profile/tmp 目录中,其他 jsp 位于同一目录中(这一切都没有问题)并且文件系统未满。

测试

我将 xxx.jsp 复制到了同一目录中的 xxxNew.jsp我可以毫无问题地访问xxxNew.jsp(因此不存在编码问题)所以我做了一个从xxx.jsp到xxx1.jsp的mv,并且访问新命名的jsp没有问题我删除了tmp目录下的xxx.class我将 mv 返回到第一个名称 (xxx.jsp),但在 tmp 目录中使用新的 xxx.class 时仍然出现错误。websphere 中是否有类缓存可以解释这一点? (在war模块中没有找到dynacache的cachespec.xml)。

为什么 Websphere 尝试从 org.apache.jsp 包而不是 com.ibm._jsp 中查找类? (AS如何选择从URL到类的映射?)

谢谢!

最佳答案

确保您的 Web 应用程序类路径中没有包含可能与 WebSphere 运行时不兼容的任何 JSP 引擎或标准 JSP 库的其他实现。另外,一旦删除了所有可能不兼容的 jar,请尝试从 JSP 编译中删除生成的类(位于 {WAS_HOME}/AppServer/profiles/{YOUR_PROFILE}/temp 下),这样会触发重新编译并丢弃使用生成的任何过时的 .class先前的类路径状态。

如果您在应用程序的类路径中发布 JAR 列表,将会很有帮助。

关于来自 websphere 的 java.lang.NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18444616/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com