オープンソースコラム


DWR入門 - Hello World DWR

2008/04/29 23:16Update
TAGS: DWR入門

Syboos.jp編集長

今回は、DWR2を利用して、簡単なアプリケーションHello World DWRを作成します。

Page:  <1|2>
前回は、DWR 2.0 のインストール及び利用 について解説しました。

今回は、DWR2を利用して、簡単なアプリケーションHello World DWRを作成します。

Hello World DWRはHelloDwr.html というHTMLファイルからJavaメソッドを呼び出します。

では、始めましょう。

今回のテスト環境は以下となります:

IDE:Eclipse3.3
WEBサーバ:Tomcat5.5
OS:WindowsXP
DWRバージョン:DWR 2.0.3

1、プロジェクト“HelloDWR”を新規作成します。


作成したプロジェクトの階層は以下のようになります:


HelloDWR
              \src
              \build
              \WebContent
                            \ META-INF
                                          MANIFEST.MF
                            \ WEB-INF
                            \ classes
                            \ lib
                            web.xml


2、DWR設定


1)ダウンロードdwr.jarをHelloDWR/WebContent/WEB-INF/libにコピーします。
2)web.xmlにDWRサーバレットの定義を記述します。
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4"
       xmlns="http://java.sun.com/xml/ns/j2ee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
       <display-name>HelloDWR</display-name>
       <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>
</web-app>


3、Javaクラスを作成します:


作成したJavaクラスHelloDwrの内容は以下になります:
package com.syboos.test.dwr;

public class HelloDwr {

       //パラメータなし
       public String sayHello() {
              return "Hello DWR!";
       }

       //パラメータがあるメソッド
       public String sayHelloWithParam(String name) {
              return "Hello:" + name;
       }
}


4、HelloDWR/WebContent/WEB-INFの下にdwr.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="HelloDwr">
      <param name="class" value="com.syboos.test.dwr.HelloDwr"/>
    </create>
  </allow>
</dwr>


解説:
1)、    <create creator="new" javascript="HelloDwr">
プロパティjavascriptにはHTMLに利用されるJavascript名を記述します。ほとんどの場合、Javaクラス名と同じにすればいいでしょう。
2)、     <param name="class" value="com.syboos.test.dwr.HelloDwr"/>
プロパティvalueにはJavaクラスのパッケージ+クラス名を記述します。

これで、JavaクラスHelloDwrのメソッドをHTMLファイルから呼び出すことができます。

次のページ:Javaクラスを呼び出すHTMLファイルを作成する、及び動作確認。

Page:  <1|2>

Sponsored Link