Struts 2 라디오 버튼 작업 중입니다. 내가 내 액션 클래스에서 목록을 검색하고 싶지만는 다음 오류를주고있다Struts 2 라디오 버튼 목록
org.apache.jasper.JasperException : 태그 '라디오'필드 '목록', 이름 'user.yourGender' 요청한 목록 키 '# user.gender'는 이 컬렉션/배열 /지도/열거/반복기 유형으로 해결 될 수 없습니다. . 예 : 사람이나 사람 {이름} -
HelloAction
package com.geekcap.struts2.action; import com.geekcap.struts2.model.User; import com.opensymphony.xwork2.ActionSupport; import java.util.List; import java.util.ArrayList; public class HelloAction extends ActionSupport { private User user; public String execute() throws Exception { return "success"; } public void validate() { if(user.getName().length()==0) { addFieldError("user.name", "User Name is required"); } if(user.getAge()==0) { addFieldError("user.age","Age is required"); } if(user.getPassword().length()==0) { addFieldError("user.password","Please enter your password !"); } /* if(user.getGender().equals("-1")) { addFieldError("user.gender","Please select gender !"); }*/ } public User getUser() { return user; } public void setUser(User userbean) { user=userbean; } }
사용자 클래스
에 따라 같이 알 수없는 위치]
내 액션 클래스 & 사용자 클래스입니다
package com.geekcap.struts2.model;
import java.util.List;
import java.util.ArrayList;
public class User
{
private String name,password;
// private List like;
private int age;
private List<String> gender;
private String yourGender;
public User()
{
gender= new ArrayList<String>();
gender.add("MALE");
gender.add("FEMALE");
gender.add("UNKNOWN");
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password=password;
}
public int getAge()
{
return age;
}
public void setAge(int age)
{
this.age=age;
}
public List<String> getGender()
{
return gender;
}
public void setGender(List<String> gender)
{
this.gender=gender;
}
public void setYourGender(String yourGender)
{
this.yourGender=yourGender;
}
public String getYourGender()
{
return yourGender;
}
public String getDefaultGenderValue()
{
return "UNKNOWN";
}
helloForm.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Welcome to Struts 2</title>
</head>
<body>
<s:form action="Hello">
<s:textfield name="user.name" label="User name" value="shahid"/>
<s:password name="user.password" label="Password"/>
<s:textfield name="user.age" label="Age"/>
<s:radio label="Gender" name="user.yourGender" list="user.gender" value="defaultGenderValue"/>
<s:submit/>
</s:form>
</body>
</html>
Hello.jsp 라
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Hello, Struts 2</title>
</head>
<body>
<h4>
Hello, <s:property value="user.name"/>!
<br>Your password :<s:property value="user.password"/></br>
<br>your age :<s:property value="user.age"/></br>
<br>Gender :<s:property value="user.yourGender"/></br>
</h4>
</body>
</html>
당신은 귀하의 질문에 더 나은 포맷 할 수 있다면 도움이 될 것이다 [힌트를 다음 '코드'포맷을 사용]. 라디오 버튼에 사용하는 html 코드는 무엇입니까? anirvan으로서 – anirvan
은 코드 포맷팅 버튼 (1010으로 레이블 된 코드 포맷터 버튼)을 사용하여 코드를 포맷팅합니다. 나는 이번에 너를 위해 그것을했다. – Nivas