在struts中的密钥org.apache.struts.action.MESSAGE下找不到消息资源

时间:2011-02-14 11:26:09

标签: struts struts-1

我在浏览器窗口中收到以下错误:

org.apache.jasper.JasperException:javax.servlet.ServletException:javax.servlet.jsp.JspException:无法在密钥org.apache.struts.action.MESSAGE下找到消息资源

我已经将资源文件包含在struts-config.xml中了

我的资源文件存储为WEB-INF / classes / Application.properties文件。

7 个答案:

答案 0 :(得分:2)

这是一个老帖子,但我的答案可以帮助,我猜...... 我个人浪费了一些时间让工作成为Tomcat 7下Tomcat 5.5下开发的项目。

注意:您应该命名您的资源文件:“ApplicationResources”...

有几个原因导致它不起作用,但我在网上找到的最常见的答案是:放线

<message-resources parameter="ApplicationResources" null="false" />

在你的“struts-config.xml”中。

在我的情况下,这一行已经存在,而这恰恰相反:我必须将其删除并在“web.xml”文件级别替换为:

    <context-param>
        <param-name>application</param-name>
        <param-value>ApplicationResources</param-value>
    </context-param>

在“servlet”标签中。

对不起,我没有这方面的有价值的解释,但我的申请表现得很好。 有没有人(解释)?

答案 1 :(得分:0)

可能缺少XML ... 您的应用程序在哪个上下文中运行? Tomcat? JBoss?

尝试包含xalan和xerces依赖项。

答案 2 :(得分:0)

这件事发生在我身上,因为我正在将我的项目转换为maven而我的resources目录不正确。

我有这样的struts-config.xml:

<message-resources parameter="messages.appResources" null="false"/>

我的pom.xml是这样的:

        <resource>
            <directory>src/main/resources</directory>
        </resource>

但我的messages文件夹位于我的项目根目录中。所以我把它移到了:

${project.basedir}/src/main/resources/messages

答案 3 :(得分:0)

以下解决了我的问题:

在Struts配置中,包括:

(在顶部)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC 
"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" 
"http://jakarta.apache.org/struts/dtds/struts-config_1_3.dtd">

<message-resources
    parameter="common.properties.Common" /> (or the path to your resources file)

此错误似乎是由于struts-config.xml中缺少消息资源的路径引起的 和DOCTYPE定义位于同一顶部。

答案 4 :(得分:0)

请确保您在struts-config.xml的标题中使用相同版本的DTD:

使用两个不同版本时出现此错误:

// EN” “http://jakarta.apache.org/struts/dtds/struts-config_1_3.dtd” &GT;

并且一旦进行了修正就解决了Pb:

答案 5 :(得分:0)

你应该把这一行放在你的struts-config.xml

  

&LT; message-resources parameter =“ApplicationResources”null =“false” key =“ApplicationResources” /&gt;

答案 6 :(得分:0)

就我而言,问题在从 message-resources 文件中的 struts-config.xml 元素中删除所有不必要的属性后得到解决。就像下面这样:

<message-resources parameter="ApplicationResources"/>