2016-09-06 2 views
1

db에서 데이터를 반입하고 양식 (name = studentListForm)을 사용하여 JSP로 리턴하는 struts2 조치에 제출되는 검색 양식 (name = studentForm)이 있습니다.EL struts 2의 EL이 작동하지 않습니다.

s : 속성을 사용할 때 EL이 비어있는 반면 액션 폼에서 속성을 가져올 수 있습니다.

액션

private int pageNumber; 
/** some code here **/ 
setPageNumber(1); 
public int getPageNumber() 
{ 
    return pageNumber; 
} 

public void setPageNumber(int pageNumber) 
{ 
    this.pageNumber = pageNumber; 
} 

JSP는

<%@ page language="java" contentType="text/html; charset=UTF-8" 
pageEncoding="UTF-8"%> 
<%@ taglib prefix="s" uri="/struts-tags"%> 
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>  
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<s:form id="studentListForm" name="studentListForm" action="student.do" method="post" class="pure-form pure-form-aligned"> 
<table width="50%"> 

      <tr> 
       <td align="center" colspan="2"> 
        <!-- This works --> 
        <s:property value="pageNumber"/> 
        <!-- This doesn't --> 
        <c:out value="${studentListForm.pageNumber}"></c:out> 
       </td> 
      </tr> 
</table> 
<div id="hiddenFields"> 
    <s:hidden key="pageNumber"></s:hidden> 
</div> 
</s:form> 
</html> 

답변

1

당신은 valueStack에서 액션 변수를 찾기 위해 EL을 변경해야합니다. EL 식 인해 스트럿 요청 래퍼 valueStack 변수에 대한 액세스를 가져야

<c:out value="${pageNumber}"/> 

참고. How we use JSTL with the framework을 참조하십시오.

관련 문제