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 |