컨트롤러에 제출할 JSP로 양식이 있습니다. 이제 폼의 속성 중 하나가 enum이지만이 기능을 사용할 수 없습니다.JSP에서 컨트롤러로 enum을 제출하십시오.
public class UploadFormBean {
private Type type;
public enum Type {
A ("abc"),
B ("xyz"),
C ("pqr");
private final String str;
private Type(final String str) {
this.str = str;
}
@Override
public String toString() {
return str;
}
}
public Type getType() {
return type;
}
public void setType(final String type) {
for (Type s: Type.values()) {
if (s.toString().equalsIgnoreCase(type)) {
this.type = s;
}
}
}
}
컨트롤러 :
public ModelAndView execute(final HttpServletRequest request, @ModelAttribute final UploadFormBean uploadFormBean) {
//some code.
Type t = uploadFormBean.getType(); //t is null.
//some more code.
}
JSP : 내가 놓친 게 무엇
<input type="hidden" name="type" value="abc">
. 정보가 필요한지 알려주십시오. 모든 도움에 감사드립니다.
UploadFormBean 클래스 코드를 게시 하시겠습니까? – RE350
열거 형은 어디에 있습니까? JSP에서 어디에서 사용됩니까? 컨트롤러에서 어디에서 사용됩니까? "일할 수 없다"고 말할 때, 당신은 무엇을 의미합니까? 무슨 일이 일어날 것으로 예상됩니까? 실제로는 어떻게됩니까? "일부 코드"부품 중 하나라도 질문과 관련된 내용을 변경하거나 설정하는 경우 게시해야합니다. – RealSkeptic
@ RE350 관련 코드를 추가했습니다. –