Getting Started with DWR
DWR을 실행하기 위한 방법에는 2가지가 있다. 쉬운 방법은 download 파일을 다운로드 받고 한번 둘러 보는 것이다. 그러나 이것은 DWR을 당신의 현재 웹 사이트에 어떻게 통합 하는지에 대해서는 도움을 주지 않는다. 그러므로 다음 3가지 단계를 추천한다.
1. Install the DWR JAR file
Download에서 dwr.jar파일을 다운로드 받는다. 웹 애플리케이션의 WEB-INF/lib에 넣는다. 이미 jar파일을 받았을 것이다. DWR2.0 버젼은 commons-logging이 필요하다.
2. Edit the config files
다음 라인을 WEB-INF/web.xml에 추가한다. <servlet>섹션은 다른 <servlet>섹션 위치에 넣으면 되며, 서블릿 매핑역시 같은 방식으로 추가한다.
<servlet> <servlet-name>dwr-invoker</servlet-name> <display-name>DWR Servlet</display-name> <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>true</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>dwr-invoker</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping>
만약 DWR 1.x버젼을 사용한다면, servlet-class라인을 다음과 같은 코드로 바꿔라. uk.ltd.getachead.dwr.DWRServlet. 1.x버젼은 여전히 2.x에서 돌아간다. 그러나 새로운 것이 우선적으로 동작한다.
dwr.xml파일은 WEB-INF에 있는 web.xml과 같은 곳에 생성한다. 단순한 방법으로 다음과 같이 사용한다.
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd"> <dwr> <allow> <create creator="new" javascript="JDate"> <param name="class" value="java.util.Date"/> </create> <create creator="new" javascript="Demo"> <param name="class" value="your.java.Bean"/> </create> </allow> </dwr>
보다시피, 1.x를 이용할때 2.0이라 된 부분을 1.0으로 바꾸고, 20이라 된 부분을 10으로 바꿔라.
DWR 설정 파일의 정의는 어떠한 클래스 DWR이 자바 스크립트에 의해서 생성되고 사용되는지에 대해 정의한다. 예에서는 2개의 원격지 클래스를 지정하고 있으며 자바 스크립트에 있는 클래스를 이용하고 있다.
새로운 생성자는 아규먼트가 없는 생성자를 이용하기 때문에 JavaBeans는 반드시 존재해야 한다. 그것은 또한 DWR을 위한 몇가지 제약사항이다.
- 자바스크립트 예약어는 피한다. : 예약된 단어로된 메소드 이름은 자동적으로 제외된다. 대부분의 자바 스크립트 예약어 또한 자바의 예약어이다. 그러므로 당신은 try()라는 메소드를 사용하지 않을 것이다. 공통적인 기능으로 "delete()"를 사용한다고 할지라도 자바 스크립트에서는 중요한 의미를 가지지만 자바에서는 그렇지 않음을 이해하기 바란다.
- 오버로드된 메소드는 운이 좋으면 호출자에 의해서 호출이 되지만, 오버로드된 메소드는 피해야한다.
3. Go to the following URL
http://localhost:8080/[YOUR-WEBAPP]/dwr/
스텝 2에 지정한 클래스에 대해 페이지를 보여줄 것이다. 다음에 오는 링크는 호출에 대한 가능한 모든 메소드의 인덱스를 보여줄 것이다. 이 페이지들은 동적으로 생성되어진 예제들로 DWR로 무엇을 할 수 있는지 보여준다.
How to make use of this from your web application
sidebar에 존재하는 몇가지 예제는 어떻게 동적으로 웹페이지에 존재하는 텍스트를 변화, 리스트 업데이트, 폼 관리 그리고 실시간 테이블 에디팅을 시키는지 보여준다. 각각은 어떻게 동작해주는지 보여준다.
다음과 같은 방법으로 당신에게 보여주는 페이지로 부터 소스를 확인해 볼 수 있게 해 준다.
- http://localhost:8080/[YOUR-WEBAPP]/dwr/ 가서 당신의 클래스를 눌러 보라
- 소스를 보고 흥미있는 부분에 대해서는 실행되는 메소드 라인을 찾아보라.
- HTML이나 JSP에 텍스트를 붙여 넣어라.
- 자바 스크립트 파일의 링크를 넣고 마술과 같은 일을 만들어 보라.
<script src='/[YOUR-WEBAPP]/dwr/interface/[YOUR-SCRIPT].js'></script> <script src='/[YOUR-WEBAPP]/dwr/engine.js'></script>
/[YOUR-WEBAPP] 섹션은 빼 먹어도 된다. 원하면 상대적 경로로 지정하면 된다.
어떻게 자바 스크립트를 기술하고, DWR과 상호작용하는가에 대해서 더 많은 정보를 보고 싶다면 scripting introduction 을 따라가 보라.
What if it doesn't work?
우리는 공통적인 문제에 대한 로그와 문제 해결에 대해 여기에서 가지고 잇다. log of common problems and their fixes. 이곳을 먼저 확인해 보는것이 좋다.
여전히 문제가 발생한다면 메일링 리스트 join the mailing list에 가입하고 문의하라. 그럼 답해줄 것이다.
'WEB_Programming > DWR' 카테고리의 다른 글
Resource Forwarding (0) | 2008.06.10 |
---|---|
Dynamically Updating Text (0) | 2008.06.10 |
DWR: Easy AJAX for JAVA (0) | 2008.06.10 |