<s:set var="isTvAppAdmin"><%=isTvAppAdmin%></s:set> <s:if test="!{isTvAppAdmin}"> <s:if test="{isTvAppAdmin != 'true'}"> <s:if test="{isTvAppAdmin.equals('true')}"> <s:if test='{isTvAppAdmin != "true"}'> <s:if test='%{#isTvAppAdmin.equals("false")}'> ... ... </s:if> |
isTvAppAdmin에 true를 넣고,
거짓이면 if문 내의 것이 실행되도록 했음.
test = !{...} 에서 {} 안의 것이 참 또는 거짓을 판별하는 조건이 되고, !는 NOT 임.
(수정)
위와 같은 경우, s:set 으로 isTvAppAdmin 에 넣은 값이 문자열 "true" 또는 "false" 라서 s:if 에서 boolean 으로 사용되지 않음.
즉, {문자열} 일 경우에는 무조건 참. 그래서 문자열 비교로 수정하였음.
(수정2)
문자열 비교이므로 equals 사용할 것. ㅡ.ㅡ;;;;
(수정3)
문자열 비교인데 equals 안됨.
수정1에서 안되었던 것은 문자열 비교이므로 ""로 묶어야 하는데 ''으로 묶어서 안되었던 것인 듯.
(수정4)
역시 equals로 해야만 함!.
단, s:set으로 밸류 스택에 넣었기 때문에 #변수명으로 불러와야만 함!
그리고 !{조건} 은 성립하지 않는 듯. 결과값이 생각과 다름. <s:if test='%!{#isTvAppAdmin.equals("true")}'> 가 안되서 위와 같이 했음.
'프로그래밍 > Framework' 카테고리의 다른 글
[struts2] <s:select> 사용법 2 (0) | 2011.03.22 |
---|---|
[maven] local repository 바꾸기 (0) | 2011.03.08 |
[struts2] Strust2 Value Stack 접근하기 (0) | 2010.12.14 |
[struts2] multipart/form-data로 파일 전송하기 (0) | 2010.12.14 |
[strust2] Chain Result (0) | 2010.12.14 |