Java 没有为命名空间/和操作名称教程映射的操作

Java 没有为命名空间/和操作名称教程映射的操作,java,struts,struts2-config-browser,Java,Struts,Struts2 Config Browser,我无法执行struts2应用程序。我正在使用EclipseIndigoIDE、Tomcat7和JDK1.7 我包括的jar文件是: commons-logging-1.0.4.jar freemarker-2.3.8.jar ognl-2.6.11.jar struts2-core-2.0.11.jar xwork-2.0.4.jar 我将struts.xml放在WEB-INF的classes文件夹中,并尝试将其放在 src文件夹,但我无法创建它。我在控制台上得到以下错误 There is

我无法执行struts2应用程序。我正在使用EclipseIndigoIDE、Tomcat7和JDK1.7

我包括的jar文件是:

  • commons-logging-1.0.4.jar
  • freemarker-2.3.8.jar
  • ognl-2.6.11.jar
  • struts2-core-2.0.11.jar
  • xwork-2.0.4.jar
我将
struts.xml
放在
WEB-INF
的classes文件夹中,并尝试将其放在
src
文件夹,但我无法创建它。我在控制台上得到以下错误

There is no Action mapped for namespace / and action name tutorial. - [unknown    location]
index.jsp
尝试在
struts.xml
文件的
package
元素中添加
namespace
属性

像这样:

<struts>
<package name="default" extends="struts-default" namespace="/">
    <action name="tutorial" class="com.test.TutorialAction">
        <result name="success">/success.jsp</result>
        <result name="failure">/failure.jsp</result>
    </action>
</package>
</struts>

/success.jsp
/failure.jsp

尝试向
struts.xml
文件的
package
元素中添加
namespace
属性

像这样:

<struts>
<package name="default" extends="struts-default" namespace="/">
    <action name="tutorial" class="com.test.TutorialAction">
        <result name="success">/success.jsp</result>
        <result name="failure">/failure.jsp</result>
    </action>
</package>
</struts>

/success.jsp
/failure.jsp

正如其他人所指出的,映射中没有getTutorial操作,只有“教程”。然而,我将跳过这一点,并建议您学习如何检查Struts2应用程序的健全性。无论何时您正在设置一项新技术,甚至当您使用熟悉的技术时,了解如何进行基本的健全性检查都非常有用——在本例中,您需要验证您的struts xml是否已成功解析,并且框架是否了解您的操作

我强烈建议您将添加到struts 2应用程序中。要添加插件,您只需(所有struts 2插件都是JAR)并将其放入webapp的lib目录中。就这样。启动应用程序时,点击以下URL:

http://localhost:8080/starter/config-browser/index.action

它向您展示了框架知道的所有操作以及其他配置。基本上是struts 2诊断工具,使用起来太容易了,不能不使用它。

正如其他人所指出的,映射中没有getTutorial操作,只有“教程”。然而,我将跳过这一点,并建议您学习如何检查Struts2应用程序的健全性。无论何时您正在设置一项新技术,甚至当您使用熟悉的技术时,了解如何进行基本的健全性检查都非常有用——在本例中,您需要验证您的struts xml是否已成功解析,并且框架是否了解您的操作

我强烈建议您将添加到struts 2应用程序中。要添加插件,您只需(所有struts 2插件都是JAR)并将其放入webapp的lib目录中。就这样。启动应用程序时,点击以下URL:

http://localhost:8080/starter/config-browser/index.action

它向您展示了框架知道的所有操作以及其他配置。基本上是struts 2诊断工具,使用起来太容易了,所以不能不使用它。

我也遇到了同样的问题,我在这篇文章中看到了多篇文章……下面是可能的解决方案

我很确定我已经准确地映射了我所有的动作,但上面显示的是相同的错误…所以我只是清理了项目,然后再次运行它…它工作得非常好…试试看


我多次遇到这种情况…为了避免这种情况,我只是在快捷方式图标属性中添加了“./eclipse.exe-clean”…这样做很有效,你可以忘记得到这种错误,而这实际上不是错误

我也遇到了同样的问题,我在这篇文章中看到了多篇文章……下面是可能的解决方案

我很确定我已经准确地映射了我所有的动作,但上面显示的是相同的错误…所以我只是清理了项目,然后再次运行它…它工作得非常好…试试看


我多次遇到这种情况…为了避免这种情况,我只是在快捷方式图标属性中添加了“./eclipse.exe-clean”…这样做很有效,你可以忘记得到这种错误,而这实际上不是错误

尝试此操作一次,不要附加
。操作

<form action="tutorial">


将struts.xml文件放在包外的src或WEB-INF classes文件夹中

尝试一次,不要附加
。操作

<form action="tutorial">


将struts.xml文件放在包外的src或WEB-INF classes文件夹中

出现错误是因为服务器无法找到struts.xml的正确路径。
最好将struts.xml与src文件夹或WEB-INF/classes并行放置。

出现错误的原因是服务器无法找到struts.xml的正确路径。
最好将struts.xml与src文件夹并行或放在WEB-INF/classes中。

到目前为止,您编写了哪些代码?你创造了那些动作吗?getTutorial来自哪里?我在你的表格中看到了“tutorial.action”。TutorialAction不应该源于ActionSupport吗?事实上,即使我们不扩展ActionSupport,Struts2应用程序也应该正常工作。我明白了。您可能需要下载一个示例应用程序,并检查是否缺少某些内容。因此,您正在调用配置中没有的操作。到目前为止,您编写了哪些代码?你创造了那些动作吗?getTutorial来自哪里?我在你的表格中看到了“tutorial.action”。TutorialAction不应该源于ActionSupport吗?事实上,即使我们不扩展ActionSupport,Struts2应用程序也应该正常工作。我明白了。您可能需要下载一个示例应用程序,并检查是否缺少某些内容。因此,您正在调用配置中没有的操作。
<form action="tutorial">