クラス AuthTag

java.lang.Object
jakarta.servlet.jsp.tagext.TagSupport
org.iplass.mtp.web.template.tags.AuthTag
すべての実装されたインタフェース:
jakarta.servlet.jsp.tagext.IterationTag, jakarta.servlet.jsp.tagext.JspTag, jakarta.servlet.jsp.tagext.Tag, jakarta.servlet.jsp.tagext.TryCatchFinally, Serializable

public class AuthTag extends jakarta.servlet.jsp.tagext.TagSupport implements jakarta.servlet.jsp.tagext.TryCatchFinally

認可情報に従って制御を行うためのJSPタグです。 特定ロールの場合のみボディコンテンツを表示したり、ボディコンテンツの処理を特権実行するなどの制御が可能です。

JSPでの利用例を以下に示します。

 <%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
 <%@taglib prefix="m" uri="http://iplass.org/tags/mtp"%>
 
 :
 
 <!-- roleAまたはroleBの場合のみボディコンテンツを表示します -->
 <m:auth role="roleA,roleB">
   this content only show with role:"roleA" or "roleB".
   :
   :
 </m:auth>
 
 
 
 <!-- some/actionXアクションのAction権限を保持する場合ボディコンテンツを表示します -->
 <m:auth permission="<%=new ActionPermission(\"some/actionX\", new MapActionParameter().put(\"defName\",\"Hoge\"))%>">
   this content only show with action permission:"some/actionX?defName=Hoge".
   :
   :
 </m:auth>
 
 
 <!-- ボディコンテンツの処理を特権実行します -->
 <m:auth privileged="true">
   doPrivileged...
   
   <%
     //some privileged execution
     :
     :
   
   %>
   :
   :
 </m:auth>
 
 

指定可能な属性の説明

属性名Script可デフォルト値説明
role  ロール名指定します。
当該ロールを保持する場合、ボディコンテンツが出力されます。 複数のロール名をカンマ区切りで指定することが可能です。 複数指定された場合、いずれかのロールを保持する場合にボディコンテンツが出力されます。
permission  Permissionのインスタンスを指定します。 当該権限を保持する場合、ボディコンテンツが出力されます。
privilegedfalse trueが指定された場合、ボディコンテンツの出力処理を特権実行します。

関連項目:
  • フィールドの概要

    クラスから継承されたフィールド jakarta.servlet.jsp.tagext.TagSupport

    id, pageContext

    インタフェースから継承されたフィールド jakarta.servlet.jsp.tagext.IterationTag

    EVAL_BODY_AGAIN

    インタフェースから継承されたフィールド jakarta.servlet.jsp.tagext.Tag

    EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
  • コンストラクタの概要

    コンストラクタ
    コンストラクタ
    説明
     
  • メソッドの概要

    修飾子とタイプ
    メソッド
    説明
    void
     
    void
     
    int
     
     
     
     
    void
     
    void
    setPrivileged(Boolean privileged)
     
    void
     

    クラスから継承されたメソッド jakarta.servlet.jsp.tagext.TagSupport

    doAfterBody, doEndTag, findAncestorWithClass, getId, getParent, getValue, getValues, release, removeValue, setId, setPageContext, setParent, setValue

    クラスから継承されたメソッド java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • AuthTag

      public AuthTag()
  • メソッドの詳細

    • getPrivileged

      public Boolean getPrivileged()
    • setPrivileged

      public void setPrivileged(Boolean privileged)
    • getRole

      public String getRole()
    • setRole

      public void setRole(String role)
    • getPermission

      public Permission getPermission()
    • setPermission

      public void setPermission(Permission permission)
    • doStartTag

      public int doStartTag() throws jakarta.servlet.jsp.JspException
      定義:
      doStartTag インタフェース内 jakarta.servlet.jsp.tagext.Tag
      オーバーライド:
      doStartTag クラス内 jakarta.servlet.jsp.tagext.TagSupport
      例外:
      jakarta.servlet.jsp.JspException
    • doCatch

      public void doCatch(Throwable t) throws Throwable
      定義:
      doCatch インタフェース内 jakarta.servlet.jsp.tagext.TryCatchFinally
      例外:
      Throwable
    • doFinally

      public void doFinally()
      定義:
      doFinally インタフェース内 jakarta.servlet.jsp.tagext.TryCatchFinally