(Portal 개발 독서 노트) Windowstate
8101 단어 PortalportletWindowState
JSR-168 사양은 세 가지 창 상태를 정의합니다(표준, 최대화, 최소화).
- public class WindowState
- {
- public static final WindowState NORMAL = new WindowState("normal");
-
- public static final WindowState MAXIMIZED = new WindowState("maximized");
-
- public static final WindowState MINIMIZED = new WindowState("minimized");
- private String _name;
-
- public WindowState(String name)
- {
- if (name == null) {
- throw new IllegalArgumentException("WindowState name can not be NULL");
- }
- this._name = name.toLowerCase(Locale.ENGLISH);
- }
-
- public String toString()
- {
- return this._name;
- }
-
- public int hashCode()
- {
- return this._name.hashCode();
- }
-
- public boolean equals(Object object)
- {
- if (object instanceof WindowState) {
- return this._name.equals(((WindowState)object)._name);
- }
- return false;
- }
- }
최소화할 때,render 요청은 무시되고, 최대화할 때, 포틀릿은 추가 정보를 표시합니다.
-----
다양한 Portal Server(예: Liferay)는 고유의 사양 이외의 창 상태를 가질 수 있습니다.
사용자 정의 창 상태를 개발하는 방법:
우선 포트렛에서.xml
- <portlet>
- <portlet-name>bookCatalog</portlet-name>
- <portlet-class>
- chapter03.code.listing.base.BookCatalogPortlet</portlet-class>
- <supports>
- <mime-type>text/html</mime-type>
- <window-state>pop_up</window-state>
- ...
- </supports>
- ...
- </portlet>
그리고portlet 응용 단계, 즉portlet.xml에 있는 모든
- <portlet-app>
-
- <portlet>
- ..
- </portlet>
-
- <custom-window-state>
- <window-state>pop_up</window-state>
- </custom-window-state>
- ...
- </portlet-app>