忍者ブログ
まにょのITメモ
[55]  [54]  [53]  [52]  [51]  [50]  [49]  [48]  [47]  [46]  [45
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

■applicationContext.xmlの設定
    <!-- ====================================================== -->
    <!--                       Ajax設定                                                                   -->
    <!-- ====================================================== -->
    <!-- サービス定義 -->
    <bean id="messageService" class="jp.co.nadeshiko.sample.MessageService">
        <dwr:remote javascript="MessageService">
            <!-- executeメソッド公開 -->
            <dwr:include method="execute" />
        </dwr:remote>
    </bean>

    <!-- JavaScriptへ渡すクラス定義 -->
    <dwr:configuration>
        <dwr:convert type="bean" class="jp.co.nadeshiko.sample.MessageBean" />
    </dwr:configuration>



■Web.xml
    <servlet>
        <servlet-name>dwr-invoker</servlet-name>
        <servlet-class>org.directwebremoting.spring.DwrSpringServlet</servlet-class>
        <load-on-startup>2</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>dwr-invoker</servlet-name>
        <url-pattern>/dwr/*</url-pattern>
    </servlet-mapping>


■サンプルのJSP
<%@ page contentType="text/html; charset=Shift_JIS"
  language="java" pageEncoding="Shift_JIS"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<%@ taglib uri="http://struts.apache.org/tags-bean
" prefix="bean"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
  "http://www.w3.org/TR/html4/strict.dtd">
<html:html>
<head>
<title>サンプル</title>
<script type="text/javascript" src="dwr/engine.js"> </script>
<script type="text/javascript" src="dwr/util.js"> </script>
<script type="text/javascript" src="dwr/interface/MessageService.js"></script>
<script language="JavaScript" type="text/javascript">
<!--
function show() {
    var message = DWRUtil.getValue("message");
    // コールバックが不要の場合は
    //MessageService.execute(message);

    // コールバックしたい場合
    MessageService.execute(message, callback);
}

function callback(resultVal){
    DWRUtil.setValue("result", resultVal.message);
}

// ロード中のメッセージを表示する
function init() {
    DWRUtil.useLoadingMessage("読み込み中");
}
//-->
</script>
</head>
<body onload="init();">
<p>何か入力してください: <input type="text" id="message" />
<input type="button" value="表示" onclick="show()" /><br/>
メッセージ: <span id="result"  style="background:#CCFF99; padding:4px;"></span>
</p>
</body>
</html:html>


■画面から使用されるJavaのサービス
package jp.co.nadeshiko.sample;

public class MessageService {
    private String massage;

    public void setMassage(String massage) {
        this.massage = massage;
    }

    public MessageBean execute(String value) {
        MessageBean bean = new MessageBean();
        bean.setMessage(value);
        return bean;
    }
}

画面で使用されるJavaのBean
package jp.co.nadeshiko.sample;

public class MessageBean {

    private String message;

    public String getMessage() {
        return message;
    }
    public void setMessage(String value) {
        message = value;
    }
}

PR
この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
この記事へのトラックバック
この記事にトラックバックする:
この記事のURL:
忍者ブログ * [PR]