刚学struts2,出现错误,搜索后依然不会解决,麻烦大家帮忙看下
- Java code
package tutorial;import com.opensymphony.xwork2.ActionSupport;public class HelloWorld extends ActionSupport{ private String name; public String getName(){ return name ; } public void setName(String name){ this.name = name ; } public String execute(){ name = "Hello,"+ name+"!"; return SUCCESS; }}这是HelloWorld.java的内容
- XML code
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"><struts> <include file="struts-default.xml"/> <package name="tutorial" extends="struts-default"> <action name="HelloWorld" class="tutorial.HelloWorld"> <result>HelloWorld.jsp</result> </action> </package></struts>
这是struts.xml的内容
- JScript code
<%@ page contentType="text/html; charset=UTF-8" %><%@ taglib prefix="s" uri="/struts-tags" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>Say Hello</title> </head> <body> <h3>Say "Hello" to: </h3> <s:form action="HelloWorld"> Name: <s:textfield name="name" /> <s:submit /> </s:form> </body></html>
这是SayHello.jsp的内容,不知道选用的论坛代码格式对不对。。
- JScript code
<%@ page contentType="text/html; charset=UTF-8" %><%@ taglib prefix="s" uri="/struts-tags" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>Hello</title> </head> <body> <h3><s:property value="name"/></h3> </body></html>
这是HelloWorld.jsp的内容
对应路径:
struts.xml是*/src/struts.xml
HelloWorld.java是*/src/tutorial/HelloWorld.java
SayHello.jsp和HelloWorld.jsp都是在*/WebContent下
PS:SayHello.jsp打开无问题
麻烦大家给个修改方法 多谢
[解决办法]
<action name="HelloWorld" class="tutorial.HelloWorld" method="excute">
<result name="success">HelloWorld.jsp</result>
</action>
[解决办法]
<s:form action="/工程名/HelloWorld.action">
Name: <s:textfield name="name" />
<s:submit />
</s:form>
[解决办法]
action="tutorial/HelloWird"这样试试
[解决办法]
<s:form action="tutorial/HelloWorld">
这样改下。
[解决办法]
http://zuoqiang.iteye.com/blog/670569
------解决方案--------------------
struts helloworld 前面写成/helloworld试试
[解决办法]
<s:form action="HelloWorld.action" method="post" >
试试
[解决办法]
奇怪.struts配置的时候没指定namespace的话默认不是 namespace="/" 么?
那这样这个Action的访问路径 该是 ***/HelloWorld.
这样的话应该没错啊?
[解决办法]
亲自试了。代码在我这测试没问题.
[解决办法]
<package name="tutorial" extends="struts-default" namespace="/">
[解决办法]
还没解决!
错误:There is no Action mapped for namespace / and action name HelloWorld.
明显就是你的请求找不到对应的action在回去看看路径到底对了没,这种东西只要自己仔细找肯定能找出来的
[解决办法]
<result>/HelloWorld.jsp</result>
[解决办法]
对不起上面的帖子回错了!
应该是
<s:form action="HelloWorld" method="post" >
Name: <s:textfield name="name"/>
<s:submit />
</s:form>
[解决办法]
<include file="struts-default.xml"/>
这个不要。
[解决办法]
两处提示:希望有帮助.注意你jsp的路径
<result name="success">/HelloWorld.jsp</result>