【问题标题】:'java.lang.ClassNotFoundException: javax.faces.webapp.UIComponentTag' Error'java.lang.ClassNotFoundException: javax.faces.webapp.UIComponentTag' 错误
【发布时间】:2012-08-02 09:46:13
【问题描述】:

'java.lang.ClassNotFoundException: javax.faces.webapp.UIComponentTag' 当我在带有 WebLogic 1o.2 网络服务器的 MyEclipse IDE 中运行我的 struts 应用程序时发生错误。

<Error> <Deployer> <BEA-149265> <Failure occurred in the execution of deployment request with ID '1343897268179' for task '0'. Error is: 'java.lang.ClassNotFoundException: javax.faces.webapp.UIComponentTag'
java.lang.ClassNotFoundException: javax.faces.webapp.UIComponentTag
    at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
    at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
    at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:56)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    Truncated. see log file for complete stacktrace

Caused By: java.lang.ClassNotFoundException: javax.faces.webapp.UIComponentTag
    at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
    at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
    at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:56)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    Truncated. see log file for complete stacktrace
> 
<Aug 2, 2012 2:17:49 PM IST> <Warning> <Deployer> <BEA-149004> <Failures were detected while initiating deploy task for application '_appsdir_RulesApp_dir'.> 
<Aug 2, 2012 2:17:49 PM IST> <Warning> <Deployer> <BEA-149078> <Stack trace for message 149004
java.lang.ClassNotFoundException: javax.faces.webapp.UIComponentTag
    at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
    at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
    at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:56)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    Truncated. see log file for complete stacktrace

Caused By: java.lang.ClassNotFoundException: javax.faces.webapp.UIComponentTag
    at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
    at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
    at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:56)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
        Truncated.

虽然我在 lib 文件夹中添加了这个 jsf-api.jar 文件,但我没有使用任何 JSF 库函数,但这个问题得到了解决,但在浏览器窗口应用程序仍然没有运行。它显示像..

错误 404--未找到 来自 RFC 2068 超文本传输​​协议——HTTP/1.1: 10.4.5 404 未找到

服务器没有找到任何匹配 Request-URI 的东西。没有说明这种情况是暂时的还是永久性的。

如果服务器不希望向客户端提供此信息,则可以使用状态码 403(禁止)来代替。如果服务器通过某种内部可配置的机制知道旧资源永久不可用且没有转发地址,则应该使用 410(Gone)状态码。

【问题讨论】:

  • 应用程序未在 weblogic 服务器中运行,但它与 Tomcat 服务器完美配合。

标签: java struts-1


【解决方案1】:

遇到了类似的问题,同样的错误,我的项目中也没有任何与 Faces 相关的代码。原来有一个 jar -> struts-faces.jar,如果存在于你的类路径中,它将使 weblogic 搜索 faces jar。只需从您的库中删除 struts-faces.jar,错误就会消失。 more details

【讨论】:

  • 这对我有用。确保只删除 struts-faces.jar 。您可以从属性 -> 构建路径 -> 库中执行此操作,然后在 Netbeans 中编辑
【解决方案2】:

确保您在类路径中有 JSF 库(在服务器类路径中或嵌入在 WAR 文件中)。

实际的 jar 文件应该是什么取决于您使用的 JSF 实现。 Here 是一些可能的选择。

【讨论】:

    【解决方案3】:

    确保 myfaces-api 和 myfaces-impl jar 文件包含在类路径中。

    【讨论】:

      猜你喜欢
      • 2013-07-23
      • 2016-03-14
      • 2020-01-22
      • 2015-03-25
      • 2015-08-15
      • 1970-01-01
      • 2018-05-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多