读书人

请教logon是不是struts2的保留字段,奇

发布时间: 2012-05-07 12:40:40 作者: rapoo

请问logon是不是struts2的保留字段,奇怪问题
我用struts2做了一个登录的小例子,很简单的,一个输入页面(index.jsp),一个action(类名:LogonAction),还有两个页面,一个成功,一个失败页面,这两个页面都很简单。情况是这样的,当我把struts.xml里的action名字改为logon时总是报
No result defined for action com.yan.web.action.LogonAction and result success,当我把随便改一下logon名字时比如改为logon1就可以正常运行,在网上找struts2的保留字段也找到什么,奇怪,请教各位。我把我用到的代码贴在下边:

struts.xml
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">

<!-- START SNIPPET: xworkSample -->
<struts>

<package name="default" extends="struts-default">
<action name="logon" class="com.yan.web.action.LogonAction">
<result name="success">/success.jsp</result>
<result name="error">/failure.jsp</result>
</action>
</package>

</struts>

<!-- END SNIPPET: xworkSample -->

index.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>test</title>
<% String base = request.getContextPath(); %>

</head>

<body>
<form action="logon.action" method="post">
<div style="color:red"><s:fielderror /></div>
<!-- 读取显示提示信息 -->
<table>
<tr>
<td>
用户名:
</td>
<td>
<input type="text" name="user.userName"/>
</td>
</tr>
<tr>
<td>
密码:
</td>
<td>
<input type="password" name="user.password"/>
</td>
</tr>
<tr>
<td>
年龄:
</td>
<td>
<input type="text" name="user.userLevel"/>
</td>
</tr>
<tr>
<td>
生日:
</td>
<td>
<input type="text" name="user.agentNumber"/>
</td>
</tr>
<tr>
<td colspan="2">
<s:submit value="注册"></s:submit>
</td>
</tr>
</table>
</form>

</body>
</html>

LogonAction.java

package com.yan.web.action;

import com.opensymphony.xwork2.ActionSupport;
import com.yan.entity.User;

public class LogonAction extends ActionSupport {
private static final long serialVersionUID = 4991026832999229787L;
private User user;

@Override
public String execute() {

return "success";
}

/**
* @return the user
*/


public User getUser() {
return user;
}

/**
* @param user
* the user to set
*/
public void setUser(User user) {
this.user = user;
}
}

user.java

package com.yan.entity;

/**
* User entity. @author MyEclipse Persistence Tools
*/

public class User implements java.io.Serializable {

// Fields

private Integer id;
private String userName;
private String password;
private String userLevel;
private String agentNumber;

// Constructors

/** default constructor */
public User() {
}

/** full constructor */
public User(String userName, String password, String userLevel,
String agentNumber) {
this.userName = userName;
this.password = password;
this.userLevel = userLevel;
this.agentNumber = agentNumber;
}

// Property accessors

public Integer getId() {
return this.id;
}

public void setId(Integer id) {
this.id = id;
}

public String getUserName() {
return this.userName;
}

public void setUserName(String userName) {
this.userName = userName;
}

public String getPassword() {
return this.password;
}

public void setPassword(String password) {
this.password = password;
}

public String getUserLevel() {
return this.userLevel;
}

public void setUserLevel(String userLevel) {
this.userLevel = userLevel;
}

public String getAgentNumber() {
return this.agentNumber;
}

public void setAgentNumber(String agentNumber) {
this.agentNumber = agentNumber;
}

}
代码就上面这些

[解决办法]
不清楚楼主这个问题,你不妨把loginAction改做loginAction试试

读书人网 >J2EE开发

热点推荐