(Portal 개발 독서 노트) Windowstate

WindowState는 포틀릿 창의 상태를 나타냅니다.
JSR-168 사양은 세 가지 창 상태를 정의합니다(표준, 최대화, 최소화).

  
  
  
  
  1. public class WindowState 
  2.   public static final WindowState NORMAL = new WindowState("normal"); 
  3.  
  4.   public static final WindowState MAXIMIZED = new WindowState("maximized"); 
  5.  
  6.   public static final WindowState MINIMIZED = new WindowState("minimized"); 
  7.   private String _name; 
  8.  
  9.   public WindowState(String name) 
  10.   { 
  11.     if (name == null) { 
  12.       throw new IllegalArgumentException("WindowState name can not be NULL"); 
  13.     } 
  14.     this._name = name.toLowerCase(Locale.ENGLISH); 
  15.   } 
  16.  
  17.   public String toString() 
  18.   { 
  19.     return this._name; 
  20.   } 
  21.  
  22.   public int hashCode() 
  23.   { 
  24.     return this._name.hashCode(); 
  25.   } 
  26.  
  27.   public boolean equals(Object object) 
  28.   { 
  29.     if (object instanceof WindowState) { 
  30.       return this._name.equals(((WindowState)object)._name); 
  31.     } 
  32.     return false
  33.   } 

최소화할 때,render 요청은 무시되고, 최대화할 때, 포틀릿은 추가 정보를 표시합니다.
 
-----
 
다양한 Portal Server(예: Liferay)는 고유의 사양 이외의 창 상태를 가질 수 있습니다.
사용자 정의 창 상태를 개발하는 방법:
우선 포트렛에서.xml 에서 이 Porlet이 지원하는 창 상태를 설명합니다. 여러 개를 지정할 수 있습니다.

  
  
  
  
  1. <portlet> 
  2. <portlet-name>bookCatalog</portlet-name> 
  3. <portlet-class> 
  4. chapter03.code.listing.base.BookCatalogPortlet</portlet-class> 
  5. <supports> 
  6. <mime-type>text/html</mime-type> 
  7. <window-state>pop_up</window-state> 
  8. ... 
  9. </supports> 
  10. ... 
  11. </portlet> 

그리고portlet 응용 단계, 즉portlet.xml에 있는 모든 요소의 바깥쪽에 사용자 정의 창 상태를 표시합니다. 이 window-state는 포틀릿 응용 프로그램에 속하는portal 서버에 의해 지원되어야 합니다.

  
  
  
  
  1. <portlet-app> 
  2.  
  3. <portlet> 
  4. .. 
  5. </portlet> 
  6.  
  7. <custom-window-state> 
  8. <window-state>pop_up</window-state> 
  9. </custom-window-state> 
  10. ... 
  11. </portlet-app> 

좋은 웹페이지 즐겨찾기