2006-01-01ãã1å¹´éã®è¨äºä¸è¦§
æ¥å¹´å ¥ç¤¾äºå®ã®å å®è éãã ãªããã²ã¼ã ãä½ã£ãã¨ãè¨ã£ã¦ãã®ã§ãæ©éè¦ã¦ã¿ã¾ããã ã¿ããã (SMG 2007年度å å®è ãã¼ã¸) ã¤ãã¤ãæ®éã«ããããã¦ã (^^; èªåã®å å®è æ代ãè¶ ãã¦ããå®å ¨ã« (^^;; ã¾ããã©ã«ãæ§æã¨ããã¦ãªã®ã¨ã£ã¦æã¯ãããã©â¦
S2JSFã®HTMLããã¼ãã«å½¢å¼ã§ç·¨éã§ããããã«ããããã®ããã©ã°ã¤ã³ã§ãã ç¾å¨éçºä¸ã§ããããããªæããçºç«¯ã¯ã ãHTMLã¢ãã¯ã¨UIä»æ§æ¸ããæ¸ãã°ã S2JSFã®HTMLã¨ããå¿ è¦ãªã½ã¼ã¹ã¨ããåºæ¥ä¸ããã¨å¬ããããã ã¨ããææ³ããçã¾ãããEclipseãâ¦
ãã¾åãçµãã§ããããã¸ã§ã¯ãã§ã S2Daoã®ã¹ãã¢ãããã·ã¼ã¸ã£å¼ã³åºãæ©è½ãæ¹ä¿®ãã Dtoã¨ãOracleã®ã¦ã¼ã¶å®ç¾©åãèªåã§ãããã³ã° Dtoé åã¨ãOracleã®ã¦ã¼ã¶å®ç¾©åã®é åããããã³ã° ãªã©ãåºæ¥ãããã«ãã¾ããã å²ã¨è¯ãæãã§åãã¦ããã¦ãâ¦
æè¿Eclipseãã©ã°ã¤ã³ãä½ã£ã¦ããããã§ããã TableViewerãç·¨éå¯è½ã«ããAPIã£ã¦ã¤ãã¤ã ã¨ããæè¦ã«æ¿ããåæã ãã³ãã«ãã¼ã¨æã£ã¦ãSeasar Eclipse Commonãè¦ããã ä¸è¨ã®ã½ã¼ã¹ãã³ãããããã¦ãã¾ããã æ©éãå©ç¨ã ããããªä½¿ãã¦ã¾ãâ¦
ãinsertãããHTMLã®initActionå®è¡ããã³ããããã¾ããã ã¡ãã£ã¨ã³ããã¿å ã§ç¸è«ãã¦ããç¹ã¯ããã¾ããã æããã次ã®ãã¼ã¸ã§ã³ããå©ç¨ã§ããããã«ãªãã¾ãã ã¾ããinsertãå©ç¨ãããµã³ãã«ãä¸ç·ã«å ¬éãããäºå®ã§ãã 次ã®ç®æ¨ã¨ãã¦ã¯ã inâ¦
ã£ã¦ã®ãåæã«è©±ãããã ããã¼ï¼ ããã ã¨ãããã使ããªãããããªãï¼ãã¨ããåå¿ãããããï¼ å¶éäºé ã¨ãã¦è¨±å®¹ç¯å²ãããªãï¼ã åæãã ã£ã¦ãåºåããã1è¡ã«ãªã£ã¡ãããã§ããï¼ã ãããã¾ããããã ãã©ï¼ã åæãå ¨é¨ä¸è¡ã«ãªã£ãããdiffâ¦
ä»æã®é ã«ã ååã®S2JmxJavelinã³ããã¿2åã¨ä¸ç·ã«éçºå宿ãè¡ãªã£ããã§ããã ããã§Eclipseãã©ã°ã¤ã³ã®ä½ãæ¹ãè¦ãã¦ä»¥æ¥ã Eclipseãã©ã°ã¤ã³ä½ãã«ããã£ã¦ã¾ãã ã¨ãããããS2JSFã®ãã¨ãããç¥ããªãã¦ãã S2JSFã使ã£ããããã¯ããä½ããâ¦
ãã¾ã®S2Daoã ã¨ãã¹ãã¢ãããã·ã¼ã¸ã£ï¼ã¹ãã¢ããã¡ã³ã¯ã·ã§ã³ï¼ã®å¼æ°ãæ»ãå¤ã« ã¦ã¼ã¶å®ç¾©åï¼STRUCTï¼ããã¦ã¼ã¶å®ç¾©é åï¼ARRAYï¼ã使ããªããããªã®ã§ã ãã®ãããã使ããããã«ããããã«ãã½ã¼ã¹ãç¬èªæ¹ä¿®ãã¦ãã¾ãã ã¢ããã¼ã·ã§ã³ã¨ã使ãâ¦
ãµã³ãã«ãè¿ããã¡ã«ä½æãã¾ãã ãªãªã¼ã¹ããããã使ã£ã¦ããã¦ãã ããã
ãã¾ãã è¤æ°ã®ãã£ã¼ã«ãã§ãæ¥ä»ãå ¥åãããã¨ãã£ã¦è¨ã ãããã é¢å㪠è¦æã«å¯¾å¿ããããã®ããªãã¼ã¿ã package examples.jsf.validator; import java.util.Calendar; import javax.faces.application.FacesMessage; import javax.faces.componentâ¦
ãã¡ãã¯ãããã¾ãã¿ããªä½ã£ã¦ãªãããç¥ããªãã è¤æ°ãã£ã¼ã«ãã®SubmittedValue段éã®å¤ã使ãããªãã¼ã¿ã ä¸ã®ãã®ã¨æ¯ã¹ãã¨ã è¤æ°é ç®ã®ãä¸çªæå¾ã®é ç®ãã«ä»æããªãã¦ããã ã³ã³ãã¼ã¿ãéãåã®å¤ãããªãã¼ããã ãªæãã«ãªãã¾ãã æç¶â¦
ã¿ããªä½ã£ã¦ãã¨æããã ãã©ã è¤æ°é ç®ãã¾ã¨ãã¦ãã§ãã¯ããããªãã¼ã¿ã æ©ã話ããS2ComparaValidatorã®è¤æ°çã targetId="xxx"ãããªãã¦ãtargetId="xxx,yyy,zzz"ã¨è¤æ°é¸æã§ããã ä¾ã«ãã£ã¦ã ãã®ããªãã¼ã¿ãä»æããé ç®ãå ¥åããã¦ãªãã¨â¦
ãã¡ã®ãã³ã·ã§ã³ã¯ã室å ã ã¨ãã©ãã®ãã£ãªã¢ãé»æ³¢ãå ¥ããªãã®ã§ ãã¼ã ã¢ã³ããã使ããã¨ããçç±ã§ãã¦ã£ã«ã³ã ã使ã£ã¦ããããã§ããã auã使ãã®ã¯ãå¤ã«ããæã ã (^^; ãã£ããã ãããMNPã§ã½ãããã³ã¯ã«ç§»ã£ã¦ã ã¿ã¤ãã«ã®ãµã¼ãã¹ãåãâ¦
æè¿ãS2Daoã§ã¹ãã¢ãããã·ã¼ã¸ã£ãã£ã¦ã¾ãã æ¢åæ©è½ãã対å¿ã§ããªãã®ã§ãã½ã¼ã¹ãã¤ã¸ãä¸ã ã³ã³ããªãã¥ã¼ãããããã S2JSFã®insertã¿ã°ã®m:srcã«VBå¼ä½¿ããããã«ããæ©è½ã¯ã ãã§ãããªãªã¼ã¹ãããã®ã§ããã¾ã¯InitActionå®è¡ãä½æä¸ã§ããâ¦
ã¾ããã¨ã«ãããm:immediate="true"ã§å¼ã°ããActionã¡ã½ããã¯ã é·ç§»ããã ãã®ãã·ã³ãã«ãªå½¢ã«ãã¨ãï¼ ã£ã¦è©±ã ç¾èã¯ä¸è¦ã«ãããã ã¨ãããããããæ¹ããã S2JSF Exampleãåããã errorpage/pageTran1.htmlã®buttonã«m:immediate="true"å±æ§ãâ¦
hiddenã¿ã°ã®å¤ããJavaScriptã¨ããªã¯ã¨ã¹ãæ¹ãã㧠æ¸ãæããããå ´åã«ãã¨ã©ã¼ãåºåããããªãã¼ã¿ã確èªç»é¢ã®hiddenã¿ã°ã«ã¯ãå¿ ãåãè¾¼ã¾ãªãããããã§ãããã package examples.jsf.validator; import javax.faces.component.StateHolder; impâ¦
ããã»ã©ãã¯ã¦ãªãã¤ã¢ãªã¼å¸æ°ãã«ãªãã¾ããã ãªã«ããï¼ ã¡ãªã¿ã«ãä¸ã«æããS2JSFã®ç解ä¸è¶³åé¡ã¯ã å¾æ¥ãã½ã¼ã¹ãèªãã ä¸ã§ãçµæãæ¸ãããã¨æãã¾ãã
ã¡ãªã¿ã«ä¸ã®ãµã³ãã«ã§ã searchã¡ã½ããã®æ»ãå¤ããnullãããã"employeeSearch"ãã«ããã¨ã æ¤ç´¢çµæãå ¨ã表示ãããªããªãã¾ãã ã©ã¡ãã«ãããããé·ç§»å ï¼ï¼å ã®ç»é¢ï¼ã¯å¤ãããªãã¯ããªã®ã«ãããã ãªãï¼
ããä¸ã¤ãç解ãã¦ããªãåé¡ã æ¤ç´¢ãã¦ãæ¤ç´¢çµæç»é¢ã表示ããå¾ã«ãä¸åº¦ç»é¢é·ç§»ããã¦ããæ»ã£ã¦ããã¨ã æ¤ç´¢çµæç»é¢ã«ã空ã£ã½ã®ãã¼ãã«ã表示ãããåé¡ã ãªãã¦è¨ã£ã¦ããã¡ã£ã¨ãä¼ãããªãã®ã§ããã¡ã¤ã«ãç¨æãã¾ããã ï¼åé¤æ¸ã¿ï¼ S2JSâ¦
S2JSFã£ã¦ãrequestã¨sessionã®åãããç解ãã¦ã㰠大ä½ã©ããªåé¡ãã説æã¤ããããï¼ ã¨æã£ã¦ã¾ããã å®ã¯ãçµæ§éãã¾ããã ã¾ãã¯ãm:rendered + m:actionã®åé¡ã m:renedered=#{!empty xxx} ã®å¤å®ãè¡ãªãã ãã®å¤å®ã§å²ã¾ããå ´æã«aã¿ã°ãç½®â¦
ãã¦ããªãã¬ãã·ã¥ãããã¨ã ãã ãinsertã§å¼ã³åºãããHTMLã®ãInitActionãå®è¡ãããã®ç¶ãã ã¾ããããããäºãæ´çããã¨ã 親ç»é¢ åç»é¢1 (m:inject="s:insert"ã¿ã°ã§æ¿å ¥ã以ä¸åæ§) åç»é¢2 åç»é¢3 ãããªæ§æã®ç»é¢ãä½ã£ãã¨ãã¦ã åç»é¢ã®â¦
å¤æä¼æã«ãç®±æ ¹ã§å®¶ææ è¡ããã¦ãã¾ããã 2æ³3æ¥ãæ»ã¬ã»ã©éã³ã¾ããã ã¡ããã¨ç¶è¦ªãã¦ã¾ããã¯ãã 帰ã£ã¦æ¥ãæ©ã«ãåä¾ãç±ãåºãã¾ããã ã²ããã
script.aculo.uså¨è¾ºã®ã¢ã¬ã³ã¬ã¯ãã¡ãã£ã¨ç½®ãã¨ãã¦ã ãinsertã§å¼ã³åºãããHTMLã®ãInitActionãå®è¡ãããã¨ããå¦çã æ£å¼ã«S2JSFã¸ã³ãããããããã«ãæå¾ã®èª¿æ´ã ä½ãã£ã¦è¨ãã¨ãå¼ã³åºãããInitActionã§ã ä¾å¤ãçºçãã æ»ãå¤ãnull以å¤â¦
â»WebPartsã®æ°ãããµã³ãã«ã¯ãããã¡ãã£ã¨å¾ ã£ã¦ã¦ãï¼ ç´æç ´ã£ã¦ããããï¼ï¼ ãã¦ãMLã«æ稿ããåé¡ããèªåã§ã調æ»ä¸ã ããã¹ããã£ã¼ã«ãã®å¤ã空ã«ãã¦SUBMITããã¨ã m:required="true"ã®ãã£ã¼ã«ãã¯ãsubmittedValueã "" ã«ãªã requiredå±æ§â¦
auã®ã±ã¼ã¿ã¤ã®æ©ç¨®å¤æ´ãè¿·ã£ãããã¦ã¾ãããã çµå±ãW-ZERO3[es](ç½)ãè²·ã£ã¡ããã¾ããã åãã¦è¦ãæµ·å¤ã®ã¹ãã¼ããã©ã³ããããããå½¢ç¶ã ã£ããããã ããããã以æ¥ãããããã¹ãã¼ããã©ã³ã欲ããã¦æ¬²ããã¦ã F900iTã«ä»å±ã®ã¹ã¿ã¤ã©ã¹ãã³ä»â¦
Flex User Groupã®ã¤ãã«ããã£ããã¨ã åå¼·ä¼å¾ã«ã¯ãWebãµã¼ãã¹ã«ç¦ç¹ãçµã£ã¦è¬å¸«ã®æ¹ã ã«è³ªåãï¼ä¸å¯§ãªå¯¾å¿ãããã¨ããããã¾ãï¼ï¼ ããã¼ãFlexã§ã®Webãµã¼ãã¹ããååããããã¨æãã¾ããã ããæè¿ããªããS2Axisã使ãæ©ä¼ãå¢ãã¦ãã¦ã S2â¦
ãã¡ã ãJavaScriptåãããï¼ ã¨ããããªãå¼±é³ããå§ãã¾ãããã Sortableã«éãããã¿ã³ãä»ããããã®ç¶ãã èªåã§è¿½å ããã¤ãã³ããObserveãã¦ãã¤ãã³ãçºçæã«onUpdateããã¾ãå¼ã³åºãæ¹æ³ãåãããªãã£ãã®ã§ã çµå±ããä¿åããã¿ã³ãæ¼ããâ¦
WebPartsã®HTMLã§ã¯ãåãã¬ã¤ã¢ã¦ãï¼m:extendsï¼ã使ããã¨ã«ãªãã¯ãã ãéããããã¿ã³ã¨ãããæ大åããã¿ã³ã¨ãã£ã¦ãå ±éçãªãã®ã ãã ããããã¨ã<span m:inject="s:insert" m:src="#{xxxList}"/> ã使ã£ã¦èªã¿è¾¼ãã æã«ã insertãããå´ï¼Partså´ï¼ã®ãã¼ã¸ã§ãm:extendså±æ§ã解éããå¿ è¦</span>â¦
WebPartsãä½ãæã«ããã¼ãããéãããããã®ãã¿ã³ãä»ãããã®ã§ã ã¨ããããscript.aculo.usã®Sortableã«éããæ©è½ã追å ãããã㨠ãããæã£ããã ãã©ãä»ã²ã¨ã¤ä¸æããããªãã ã¦ããJavaScriptç³»ã©ã¤ãã©ãªã®ã½ã¼ã¹ãç解ã§ããã Sortableã«â¦
2æ³ã«ãªãå¨ããããã ãã©ã ããªãã ãèã«åº§ããã¦S2ã®ãã¼ã¸ãè¦ã¦ããããã Seasarã®ãã´ãè¦ã¦ã ã¶ããã⪠ã£ã¦ãã²ã¨ãã¨ã ããã¾ããããè¦ããªãããªããã©ããã ã¦ããèãã¨ãããããé¨é¡ï¼