본문 바로가기

Programing/Ajax

Ajax - DWR

사용자 삽입 이미지
간단 요약 정리!


1) http://getahead.org에 접속
   DWR로고 이미지 클릭!
   [DownLoad DWR]이미지 클릭 후
   원하는 버전의 dwr.jar파일 다운로드 하기

2) 원하는 프로젝트의 톰캣설치폴더/lib에 1)에서
   다운로드한 dwr.jar파일 복사해서 붙여넣기

   :: dwr버전이 2.0일 경우에는 commons-logging이
      필요하다. http://commons.apache.org/logging/로
      접속하여 logging 라이브러리를 다운 받아
      톰캣설치폴더/lib에 [commons-logging-1.1.1.jar] 파일을
      복사해 둔다.(안되면.. jar파일 다 가져다 둔다^^)

3) 작업하는 프로젝트 폴더에 WEB-INF폴더 속에
    web.xml문서를 다음과 같은 내용을 web-app라는 루트속에 추가!!!!!!!!!

    <servlet>
      <servlet-name>my_dwr</servlet-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>my_dwr</servlet-name>
          <url-pattern>/dwr/*</url-pattern>
      </servlet-mapping>

    위의 DwrServlet객체를 연결(mapping)해야 한다.

4) web.xml과 같은 위치에 dwr.xml문서를 다음과 같이 새롭게
    만들어 둬야 한다.

<?xml version="1.0" encoding="UTF-8"?><!-- 무조건 첫행에 기입 -->

<!DOCTYPE dwr PUBLIC
    "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN"
    "http://getahead.org/dwr/dwr20.dtd">

 
<dwr>
  <allow>
    <!-- 서비스 모듈(자바 빈즈) 설정 -->
    <create creator="new" javascript="Test">
    <!-- 디폴트 생성자로 새로운 객체를 생성하고,
    클라이언트가(JavaScript) Test라는 이름으로 접근 가능하도록 한다. -->
      <param name="class" value="dwrEx.Test"/>
      <include method="getMessage"/><!-- 호출가능한 메서드 -->
    </create>
  </allow>
</dwr>


5) HTML문서를 작성한다.
   javaScript에서 서버에 있는 메서드를 호출하는 문장을 기입한다.
    
     Test.getMessage(인자1,인자2,...인자n,콜백함수);
     Test.getMessage(n, view);

   그리고 반드시 콜백함수를 정의해 둬야 한다.
   예를들어...
    function view(서버로부터 전달되는 메세지를 담을 변수){
        전달된 메세지 처리
    }

    function view(data){
        viewData.innerHTML = data;
    }

6) Ajax문법을 우리가 만드는 것이 아니라. DwrServlet이 생성해 주므로
   우리는 그것을 가져다 쓰기만 하면된다.
   그렇게 하기 위해

      http://localhost:포트/웹컨텍스트/dwr/
      http://localhost:8090/0630_DWR/dwr/

    위와 같이 접근하면 사용하려는 자바 빈즈객체가 링크가
    걸린 상태로 표현된다. 이때 그 링크 부분을 클릭한다.
    그러면 내부적으로 사용되는
    JavaScript를 자동으로 생성해 준다.

  <script type='text/javascript' src='/0630_DWR/dwr/interface/Test.js'></script>
  <script type='text/javascript' src='/0630_DWR/dwr/engine.js'></script>
  <script type='text/javascript' src='/0630_DWR/dwr/util.js'></script>


6) 위에 생성된 생성된 JavaScript링크 문법을
    5)번에서 생성된 HTML문서의 head태그 내에 복사해 붙여넣기 해 두면
   된다.   

 

'Programing > Ajax' 카테고리의 다른 글

AJAX - JSON이용  (1) 2008.07.29
AJAX - Open API 기능 사용 책검색 / 지도 찾기  (0) 2008.07.29
Ajax - suggest  (0) 2008.07.29
Ajax - DB 값 빼오기  (0) 2008.07.29
Ajax - innerHTML  (0) 2008.07.29