gpt4 book ai didi

tomcat - 获取 404 There is no Action mapped for namespace 错误

转载 作者:行者123 更新时间:2023-11-28 22:20:25 25 4
gpt4 key购买 nike

我正在开发一个 Struts2 Web 应用程序。一切都运行良好。所有操作都得到正确映射,应用程序正确重定向到页面。但是,当我对这个特定模块(与文件上传相关)执行相同操作时,它就失败了!我不明白出了什么问题,我已经尝试了各种“/”组合,但我仍然无法让页面重新定向。我做错了什么?

我的struts.xml:

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


<struts>
<constant name="struts.enable.DynamicMethodInvocation"
value="false" />
<constant name="struts.devMode" value="false" />
<constant name="struts.custom.i18n.resources"
value="ApplicationResources" />

<package name="default" extends="struts-default" namespace="">
<action name="login" class="com.proconsulto.action.LoginAction" method="execute">
<result name="success">/Dashboard.jsp</result>
<result name="failure">/SignIn.jsp</result>
</action>

<action name="signup" class="com.proconsulto.action.UserAction" method="addUser">
<result name="success">/Dashboard.jsp</result>
<result name="failure">/SignIn.jsp</result>
</action>

<action name="logout" class="com.proconsulto.action.LoginAction" method="logout">
<result name="success">/SignIn.jsp</result>
</action>

<action name="placerequest" class="com.proconsulto.action.PlaceRequestAction" method="placeRequest">
<result name="success">/Success.jsp</result>
</action>

</package>
</struts>

以及它应该重定向的表单:

<s:form theme="simple" action="placerequest.action" enctype="multipart/form-data" method="post">
<ul style="list-style-type:none;">
<li class="field"><p id="qaz">Headline : <br/><s:textfield style="width:550px;align:center;display:inline;" name="headline" cssClass="text input"></s:textfield></li>
<li class="field"><p id="qaz">Description :<br/> <s:textarea style="width:550px;display:inline;align:center;" name="description" cssClass="textarea input"></s:textarea></li>
<li class="field"><p id="qaz">File Upload (if any) :<br/> <s:file style="height:auto;width:550px;display:inline;align:center;" name="userImage" cssClass="text input" /></li>
<div class="medium default btn"><s:submit value="Proceed"/></div>&nbsp;&nbsp;
<div class="medium default btn"><s:reset value="Reset"/></div>

placerequest 是不会被映射的操作!

请帮忙。

完整的错误信息:

type Status report

message There is no Action mapped for namespace [/] and action name [placerequest] associated with context path [/ProConsulto].

description The requested resource (There is no Action mapped for namespace [/] and action name [placerequest] associated with context path [/ProConsulto].) is not available.

最佳答案

你应该给包添加一个命名空间,比如namespace="/"。但是,如果您想坚持使用 namespace=""(这可能会产生问题和/或无人值守的结果),您可以尝试以以下形式指定它:

<s:form action="placerequest.action" namespace="" ... >

此外,仅出于测试目的,在您的项目中包含 Struts2 Config Browser plugin , 查看操作是如何映射的(使用左侧菜单浏览它们)。

enter image description here

请记住在发布到生产环境之前将其删除 ;)

关于tomcat - 获取 404 There is no Action mapped for namespace 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22895466/

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