Writing /volume1/Web/Public/dokuwiki/data/log/deprecated/2024-11-15.log failed
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
study:jsf:migration [2008/04/25 13:38] – banana | study:jsf:migration [2008/04/26 12:50] (現在) – banana | ||
---|---|---|---|
行 48: | 行 48: | ||
이는 접두어 맵핑의 예이지만, | 이는 접두어 맵핑의 예이지만, | ||
- | **6.Struts-Faces의 RequestProcessor를 Struts 설정 파일(WEB-INF/ | + | **6.Struts-Faces의 |
- | ((만약 여러분만의 RequestProcessor를 개발했다면, | + | ((만약 여러분만의 |
<code xml> | <code xml> | ||
< | < | ||
行 62: | 行 62: | ||
</ | </ | ||
</ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Example of Struts-JSF Integration ===== | ||
+ | Struts application을 JSF로 이관하는 과정을 이해하기 위해 간단한 logon화면을 보여주는 jsp를 살펴보자. | ||
+ | 현재의 struts버전은 대략 다음과 같은 모습이다. | ||
+ | |||
+ | **Listing 1: A simple Struts-based logon JSP** | ||
+ | |||
+ | <code html> | ||
+ | <%@ taglib uri="/ | ||
+ | <%@ taglib uri="/ | ||
+ | |||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | <table border=" | ||
+ | <tr> | ||
+ | <td align=" | ||
+ | < | ||
+ | </td> | ||
+ | <td align=" | ||
+ | < | ||
+ | </td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td align=" | ||
+ | < | ||
+ | </td> | ||
+ | <td align=" | ||
+ | < | ||
+ | </td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td align=" | ||
+ | < | ||
+ | </td> | ||
+ | <td align=" | ||
+ | < | ||
+ | </td> | ||
+ | </tr> | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | **Step 1: Change the tag library declarations** 제일 처음에 해야 할 작업은 tag library 선언부를 Struts-JSF tag library로 바꾸는 것이다.\\ | ||
+ | | ||
+ | |||
+ | <code html> | ||
+ | <%@ taglib uri=" | ||
+ | <%@ taglib uri=" | ||
+ | <%@ taglib uri=" | ||
+ | |||
+ | < | ||
+ | <s:html locale=" | ||
+ | </ | ||
+ | |||
+ | **Step 2: Modify declarations for localized messages** 두번째 단계는 < | ||
+ | basename을 지정하지 않으면 기본으로 저장되어있는 application의 기본 %%MessageResources%% 번들이 로드된다. | ||
+ | |||
+ | <code html> | ||
+ | < | ||
+ | </ | ||
+ | |||
+ | 일단 로드되면 모든 컴포넌트로부터 messages를 키로 JSF Expression language형식으로 접근할 수 있다.\\ | ||
+ | 다음은 title을 %%ResourceBundle%%을 이용하여 지역화한 예이다. | ||
+ | |||
+ | <code html> | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | **Step 3: Change tags for error and form components** 세번째는 validation error를 보여주는 < | ||
+ | |||
+ | <code html> | ||
+ | < | ||
+ | <s:form action="/ | ||
+ | </ | ||
+ | |||
+ | **Step 4: Using JSF EL for input fields** 네번째 단계는 Struts form tag를 해당 JSF form tag로 교체하는 작업이다. | ||
+ | logonForm이라는 이름으로 %%ActionForm%%이 struts-config.xml에 저장돼있다고 가정한다. | ||
+ | |||
+ | <code html> | ||
+ | < | ||
+ | ... | ||
+ | < | ||
+ | </ | ||
+ | |||
+ | **Step 5: Change tags for submit and reset buttons** 마지막으로 button 의 label을 지역화한다. 이때 %%HtmlCommandButton%% 컴포넌트에 action속성이 지정되있지 않는 것에 눈여겨 보기 바란다. 이는 버튼이 클릭되면 < | ||
+ | |||
+ | 지금까지의 교체작업으로 바뀐 완성된 JSP는 다음과 같다.\\ | ||
+ | |||
+ | **Listing 2: Example logon JSP after migration using the Struts-Faces Integration Library** | ||
+ | |||
+ | <code html> | ||
+ | <%@ taglib uri=" | ||
+ | <%@ taglib uri=" | ||
+ | <%@ taglib uri=" | ||
+ | < | ||
+ | < | ||
+ | <s:html locale=" | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | < | ||
+ | < | ||
+ | <s:form action="/ | ||
+ | <table border=" | ||
+ | <tr> | ||
+ | <td align=" | ||
+ | < | ||
+ | </td> | ||
+ | <td align=" | ||
+ | < | ||
+ | </td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td align=" | ||
+ | < | ||
+ | </td> | ||
+ | <td align=" | ||
+ | < | ||
+ | </td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td align=" | ||
+ | < | ||
+ | </td> | ||
+ | <td align=" | ||
+ | < | ||
+ | </td> | ||
+ | </tr> | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ===== Reference ===== | ||
+ | - JSF In Action, Kito D. Mann | ||
+ | - [[http:// | ||