(Portal 개발 독서 노트) Windowstate

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

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

최소화할 때,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> 

좋은 웹페이지 즐겨찾기