원문 : http://www.getahead.ltd.uk/dwr/technical.html 번역 : newoverguyhttp://cafe.naver.com/deve/

DWR은 AJAX기술을 이용하여 웹사이트를 개발하기를 원하는 개발자들을 위한 Java open source library이다.

이는 browser안의 code가 web server 상의 구동되는 java function을 사용이 가능하도록 한다. 마치 browser에서 작동되는 것같은..

DWR은 두개의 메인 파트가 있다.

첫째, Javascript를 이용하여 AJAX의 구조를 이용하여 web-server기반의 서블릿으로 부터 data를 검색(자원 획득의 의미-이하 동일)이 가능하도록 하는 Code

둘째, 웹개발자들로 하여금 검색된 data를 이용하여 동적으로 웹 페이지를 update하는 것을 용이하게 하기 위한 JavaScript library

DWR은 AJAX를 이용하기위한 색다른 접근법을 가져다 주었다. 이는 Java classes기반의 동적 생성 JavaScript Code에 의해 가능하게 된다. 그러므로, 웹개발자들은 JavaScript에서 Java cdoe 사용이 가능하다. 마치 web browser에 local영역에 있는것 처럼..

실제로는, Java code는 web-server에서 구동되고 web-server의 자원들을 접근하게 된다.

웹 개발자들은 보안적 이유때문에 export하기 위한 Java classes은 안전하다는것을 정확하게 설정해야 한다.(?)

요구되는 web-browser plug-in들없이 웹을 통해 구동되는 이점을 이용하여, Java 에서 JavaScript로 remoting 함수들의 메소드는 DWR user들에게 RMI나 SOAP과 같은 RPC 메카니즘 처럼 유사한 느낌을 줄것이다.

DWR은 web-browser / web-server protocol이 중요하다고 보지 않고 오히려 프로그래머의 인터페이스는 네츄럴(가공하지 않은)하다는 것을 보장하는 것을 더 옹오한다. 이를 위해 가장 중요한 도전은 일반적인 Java method호출의 동기식 본질을 이용하여 비동기식 본질과 결합했다는 것이다. 비동기식 모델에서, 결과 data는 초기 호출이된 후에 이용가능한 어떤 시점이라는 것이다. DWR은 웹개발자들이 추가적인 method parameter를 사용하여 그 data를 돌려줄때 호출되어진 함수를 기술하도록 허용함으로써 이 문제를 해결하였다.

다음의 다이어그램은 DWR이 어떻게 onclick과 같은 어떤 Javascript event의 결과로서 선택 리스트의 컨텐츠를 변경할수 있는지 보여준다. 그 이벤트 핸들러는 Java로 작성된 server side 함수와 매칭하기 위해 DWR에 의해 생성된 Javascript함수를 호출한다. 그런다음 DWR은 모든 remoting 세부내용을 처리한다. 이 remoting 세부내용은 Javascript와 Java사이의 모든 parameter들과 return 값들을 변환하여 포함된 내용이다. 그러면 DWR은 공급된 callback 함수(populateList)를 실행한다. 아래 예제에서 웹페이지에서 변환하기 위한 DWR utility 함수를 사용하는 내용을 볼수 있다.

howitworks.png

DWR은 highly interactive web-site를 구축함에 있어 DHTML을 이용하는 것을 돕기위해 어떠한 Javascript library들 제공함하거나 예제들을 여러분들에게 제공함으로 해서 여러분들을 돕는다. DWR을 이용하여 개발하기 위한 상세 내용은 다음 링크를 참조 하기 바란다.

getting started guide

download instructions

Add new attachment

Only authorized users are allowed to upload new attachments.

List of attachments

Kind Attachment Name Size Version Date Modified Author Change note
png
howitworks.png 32.4 kB 1 06-Apr-2006 09:45 이동국
« This page (revision-6) was last changed on 06-Apr-2006 09:45 by newoverguy