HTTP Status 404 - No result defined for action org.cxj.action.LoginAction and result success
我的配置:
用的是MyEclipse8.5,创建Web Project时选的J2EE 5.0
WebRoot目录下的Hello.jsp:
<body>
<form action="login.action" method="post">
<input type="text" name="user" />
<input type="submit" value="submit" />
</form>
</body>在src中新建了一个org.cxj.action,里面建了一个LoginAction类,内容如下:
package org.cxj.action;public class LoginAction {
private String user; public String getUser() {
return user;
} public void setUser(String user) {
this.user = user;
}
public String execute() {
return "success";
}
}在src中建一个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"><struts>
<package name="struts2" namespace="" extends="struts-default">
<action name="login" class="org.cxj.action.LoginAction" method="execute" >
<result name="success">/Hello.jsp</result>
<result name="input">/Hello.jsp</result>
</action>
</package>
</struts>WEB-INF中web.xml内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>Tomcat中sever.xml中加入:
<Context path="/test" docBase="H:\Java\MyEclipse\struts2Demo\WebRoot" reloadable="ture" />Hello.jsp可以打开,但按下submit后就出现第一行的错误
刚开始学,不太懂,请教各位大侠~PS:还有个问题就是我在Tomcat中设置了listings为true,但打开这个项目的http://localhost/test/时无法显示列表,提示
HTTP Status 404 - There is no Action mapped for namespace / and action name .
我的配置:
用的是MyEclipse8.5,创建Web Project时选的J2EE 5.0
WebRoot目录下的Hello.jsp:
<body>
<form action="login.action" method="post">
<input type="text" name="user" />
<input type="submit" value="submit" />
</form>
</body>在src中新建了一个org.cxj.action,里面建了一个LoginAction类,内容如下:
package org.cxj.action;public class LoginAction {
private String user; public String getUser() {
return user;
} public void setUser(String user) {
this.user = user;
}
public String execute() {
return "success";
}
}在src中建一个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"><struts>
<package name="struts2" namespace="" extends="struts-default">
<action name="login" class="org.cxj.action.LoginAction" method="execute" >
<result name="success">/Hello.jsp</result>
<result name="input">/Hello.jsp</result>
</action>
</package>
</struts>WEB-INF中web.xml内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>Tomcat中sever.xml中加入:
<Context path="/test" docBase="H:\Java\MyEclipse\struts2Demo\WebRoot" reloadable="ture" />Hello.jsp可以打开,但按下submit后就出现第一行的错误
刚开始学,不太懂,请教各位大侠~PS:还有个问题就是我在Tomcat中设置了listings为true,但打开这个项目的http://localhost/test/时无法显示列表,提示
HTTP Status 404 - There is no Action mapped for namespace / and action name .
commons-fileupload-1.2.1
commons-logging-1.0.4
freeer-2.3.15
ognl-2.7.3
struts2-convention-plugin-2.1.8.1
struts2-core-2.1.8.1
xwork-core-2.1.6
package org.cxj.action;public class LoginAction {
private String user; public String getUser() {
return user;
} public void setUser(String user) {
this.user = user;
}
public String execute() {
return SUCCESS;// =====================
}
}
java.lang.Error: Unresolved compilation problem:
SUCCESS cannot be resolved org.cxj.action.LoginAction.execute(LoginAction.java:17)
package org.cxj.action;public class LoginAction implements Action{ //这里实现个接口
private String user; public String getUser() {
return user;
} public void setUser(String user) {
this.user = user;
}
public String execute() {
return SUCCESS;// =====================
}
}
<?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"><struts>
<package name="struts2" namespace="" extends="struts-default">
<action name="login" class="org.cxj.action.LoginAction" > // method="execute"这里把method去掉
<result name="success">/Hello.jsp</result>
<result name="input">/Hello.jsp</result>
</action>
</package>
</struts>再试试
java.lang.Error: Unresolved compilation problem:
SUCCESS cannot be resolvedorg.cxj.action.LoginAction.execute(LoginAction.java:17)
<action name="login" class="org.cxj.action.LoginAction">
<result>/Hello.jsp</result>
<result name="input">/Hello.jsp</result>
</action>
</package>
出现错误:
java.lang.Error: Unresolved compilation problems:
The type ActionSupport cannot be a superinterface of LoginAction; a superinterface must be an interface
SUCCESS cannot be resolved我改成
extends ActionSupport,并导入import com.opensymphony.xwork2.ActionSupport;
点击Hello.jsp上的submit出现错误:
No result defined for action org.cxj.action.LoginAction and result success
谢谢各位!