You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Struts2基础应用提交表单遇404错误,无法映射Action类求助

Fixing Struts2 404 Error After Form Submission

Hey there, let's dig into this 404 issue you're hitting with your Struts2 web app. Looking at your code snippets and the console warning, I can pinpoint a couple of straightforward fixes that should get things working:

1. Case Sensitivity & Action Name Mismatch

The biggest culprit here is a case-sensitive mismatch between your form's action target and the Action mapping in struts.xml:

  • Your form uses <form action="DemoStrtus" method="post"> (camel case starting with uppercase D)
  • But in struts.xml, you defined the Action with <action name="demostruts" ...> (all lowercase)

Struts2 treats Action names as case-sensitive, so the framework can't find the mapping when you submit the form. The console warning confirms this directly:

There is no Action mapped for namespace [/] and action name [DemoStrtus] associated with context path [/DemoStruts].

Fix:

Pick a consistent name and apply it everywhere. For example, if you want to use lowercase (a common convention):

  • Update your form's action attribute to:
    <form action="demostruts" method="post">
    
  • Or if you prefer to keep the camel case name, update the Action name in struts.xml:
    <action name="DemoStrtus" class="com.demostruts.DemoStrtus" method="execute">
    

2. Verify Action Class Deployment

Make sure your DemoStrtus.java class has been successfully compiled and is present in the WEB-INF/classes/com/demostruts/ directory of your deployed app. If the compiled .class file is missing (e.g., your build tool didn't compile it), Struts2 can't locate the Action class even if the mapping is correct.

3. Confirm Struts.xml Location

Double-check that your struts.xml is placed in the correct directory:

  • For Maven/Gradle projects: src/main/resources/
  • For traditional Web projects: The root of your src folder

This ensures the file gets packaged into WEB-INF/classes when you deploy, so Struts2 can load the Action mappings.

Quick Test After Fixes

Once you've applied the above changes, restart your server, load the form again, and submit it. The 404 error should be resolved, and you should see the DemoStrtus.jsp page displaying the submitted name.

内容的提问来源于stack exchange,提问作者Darshan_Mistry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 04:23:27