2010-11-20 1 views
1

앞서 우리는 우리가 하나 개의 필수 필드 role했다이 태그의 태그 ifRole 등이다른 속성에 따라 jstl 태그에 선택적 속성을 사용할 수 있습니까?

<op:ifRole role="role1"> 
    <li id="menu3SubMenu4">This will be shown only to the user with role1</li> 
</op:ifRole> 

다른 옵션 필드 secondaryRole했다. 지금은 다른 선택 속성을 추가

<op:ifRole excluding="role2"> 
    <li id="menu3SubMenu4">This will be shown to all users except the one with role=role2</li> 
</op:ifRole> 

은 또한, 나는 선택에 필요한에서 속성 role를 변경하는 것이 excluding 등. 아무도이 태그를 다음과 같이 사용하지 않기를 바랍니다.

<op:ifRole excluding="role2" role="role1"> 

이 것은 허용되지 않아야합니다. 한 가지 방법은이 두 매개 변수가 모두 제공된 경우 doStartTag에 예외를 던지기위한 것입니다. 하지만 나는 다른 방향으로 가고 싶다.

+1

당신이 "라운드 다른 방법을"무엇을 의미합니까 커버? – skaffman

+0

@skaffman : xml을 사용하여 작업하는 것을 의미했습니다. –

답변

3

태그를 javax.servlet.jsp.tagext.TagExtraInfo 클래스와 연결할 수 있습니다.이 클래스는 속성의 런타임 유효성 검사를 수행 할 수 있습니다. 이것은 아마도 태그 클래스 자체에서 수행하는 것보다이 유효성 검사를 수행하는 더 깨끗한 방법 일 것입니다.

JavaEE 어플 튜토리얼은 here