1) Component종류
1. Pure Component
2. AbstractField (Form이 필요한 컴포넌트)
*processSubmission(String controlName) : form전송시 이 메소드로 들어옴.
*주로 , input text데이터 하나에 JSON데이터를 담아서 전송 및 사용.
2) Parameter
-required
-autoconnect : 구현하는 Page객체에서 해당 객체를 연결시켜줌.
-allowNull
-defaultPrefix = BindingConstants.* (ex LITERAL..)
3) Event
- Class상단에 발생시킬 이벤트 등록 @Events
- 발생한 이벤트를 처리할 Method상단에 @OnEvent 지정.
*Event 버블링.
-컴포넌트의 이벤트를 페이지로 이벤트 이관가능. (물론 콜백도 가능함. 즉, 전처리 후처리가 가능함.)
*인터셉터 개념과 비슷할듯.
4) requireJS 사용법
-JS모듈들은 모두 /resources/META-INF/modules에 존재 한다.
*JavaScriptSupport.require(“모듈명”).with(파라미터로 넘길 데이터)
-JS에서의 구조는 기존 requirejs사용시와 동일하다.
*define([load할 모듈 Dep],function(){ return function(spec){} });
5) Javascript 외부접근.
-jQuery의 대표적인 domload이벤트를 사용못함. (ex jQuery(document).ready(function(){});
-그래 window.onload = function을 사용했음. 제대로 되는것 같으나 아주가끔 씹히는경우가 있어 검증다시해봐야할듯.
6) Event URL만들고자 할때
- ComponentResources.createEventLink(“EventName”).toAbsoluteURI();