Java/Direct Web Remoting(DWR)をつかう
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
// 下階層用テンプレート
#topicpath
----
//ここにコンテンツを記述します。
**概要 [#h7467cc2]
[[DWR(Direct Web Remoting)>http://getahead.org/dwr]]とは...
**ダウンロード [#f5736836]
http://getahead.org/dwr/download よりWARをダウンロードし...
**インストール [#gfeb5e2e]
インストールは
-ダウンロードしたwar内のjarをWEB-INF/libにコピー
-web.xmlにブリッジとなるServletを設定
-dwr.xmlにリモート呼び出ししたいJavaクラスを記述してweb.x...
ってかんじです。
web.xmlには
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet...
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>activeReverseAjaxEnabled</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
などを追加します。
dwr.xmlには
<dwr>
<allow>
<create javascript="HelloWorld" creator="new">
<param name="class" value="nu.mine.kino.services.H...
</create>
<convert converter="bean" match="nu.mine.kino.servic...
</allow>
</dwr>
など、JavaScriptから呼び出したいビジネスロジックが書いて...
<script type="text/javascript" src="dwr/engine.js"> </sc...
<script type="text/javascript" src="dwr/util.js"> </scri...
<script type="text/javascript" src="dwr/interface/HelloW...
<script type="text/javascript">
function show() {
var input = dwr.util.getValue("input");
HelloWorld.sayHello(input,callback);
}
function callback(message){
dwr.util.setValue("result", message);
}
</script>
などのようにさもJavaScriptすなわちクライアントサイドでJav...
上の例だと
dwr/engine.js
dwr/util.js
dwr/interface/HelloWorld.js
は先のブリッジのサーブレットDwrServletが勝手に生成して返...
**具体的にやってみる。 [#z3b5c651]
サーバ側のロジックを HelloWorldクラスとしました。
package nu.mine.kino.services;
public class HelloWorld {
// 引数ナシ
public String sayHello1() {
System.out.println("sayHello1()");
return "Hello";
}
// 引数がString、戻り値がString
public String sayHello(String input) {
System.out.println("sayHello(input)");
return "Hello " + input + " .";
}
// 引数がString[]
public String[] sayHellos() {
System.out.println("sayHellos()");
return new String[] { "Hello World.", "hello wor...
}
// 引数がオブジェクト、戻り値がオブジェクト
public Model getModel(Model model) {
System.out.println("getModel()");
System.out.println(model);
Child[] children = new Child[] { new Child("chil...
new Child("child2") };
Model model2 = new Model("Hoge", children);
return model2;
}
// 戻り値がオブジェクトの配列
public Model[] getModels() {
Model model1 = new Model();
model1.setName("kino");
return new Model[] { model1, model1 };
}
}
引数や返り値としてやりとりするモデルクラスを下記のように...
package nu.mine.kino.services;
public class Model implements IModel {
private String name;
private Child[] children;
// setter/getterは省略
}
package nu.mine.kino.services;
import java.io.Serializable;
public class Child implements IModel, Serializable {
private String name;
// setter/getterは省略
}
----
この記事は
#vote(おもしろかった[31],そうでもない[13])
- アアアアアアアアアアアア -- [[あ]] &new{2020-02-16 (日)...
- いいい -- [[あああ]] &new{2020-06-04 (木) 15:44:04};
- このサイト機能してないっぽくないですか?http://getahead...
- このサイト機能してないっぽくないですか?http://getahead...
- DWRは2009年で開発終わってるようでその後の更新もないよう...
- DWRは2009年で開発終わってるようでその後の更新もないよう...
- DWRは2009年で開発終わってるようでその後の更新もないよう...
- DWRは2009年で開発終わってるようでその後の更新もないよう...
- DWRは2009年で開発終わってるようでその後の更新もないよう...
- https://github.com/directwebremoting/dwr -- &new{2023-...
#comment
#topicpath
SIZE(10){現在のアクセス:&counter;}
終了行:
// 下階層用テンプレート
#topicpath
----
//ここにコンテンツを記述します。
**概要 [#h7467cc2]
[[DWR(Direct Web Remoting)>http://getahead.org/dwr]]とは...
**ダウンロード [#f5736836]
http://getahead.org/dwr/download よりWARをダウンロードし...
**インストール [#gfeb5e2e]
インストールは
-ダウンロードしたwar内のjarをWEB-INF/libにコピー
-web.xmlにブリッジとなるServletを設定
-dwr.xmlにリモート呼び出ししたいJavaクラスを記述してweb.x...
ってかんじです。
web.xmlには
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet...
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>activeReverseAjaxEnabled</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
などを追加します。
dwr.xmlには
<dwr>
<allow>
<create javascript="HelloWorld" creator="new">
<param name="class" value="nu.mine.kino.services.H...
</create>
<convert converter="bean" match="nu.mine.kino.servic...
</allow>
</dwr>
など、JavaScriptから呼び出したいビジネスロジックが書いて...
<script type="text/javascript" src="dwr/engine.js"> </sc...
<script type="text/javascript" src="dwr/util.js"> </scri...
<script type="text/javascript" src="dwr/interface/HelloW...
<script type="text/javascript">
function show() {
var input = dwr.util.getValue("input");
HelloWorld.sayHello(input,callback);
}
function callback(message){
dwr.util.setValue("result", message);
}
</script>
などのようにさもJavaScriptすなわちクライアントサイドでJav...
上の例だと
dwr/engine.js
dwr/util.js
dwr/interface/HelloWorld.js
は先のブリッジのサーブレットDwrServletが勝手に生成して返...
**具体的にやってみる。 [#z3b5c651]
サーバ側のロジックを HelloWorldクラスとしました。
package nu.mine.kino.services;
public class HelloWorld {
// 引数ナシ
public String sayHello1() {
System.out.println("sayHello1()");
return "Hello";
}
// 引数がString、戻り値がString
public String sayHello(String input) {
System.out.println("sayHello(input)");
return "Hello " + input + " .";
}
// 引数がString[]
public String[] sayHellos() {
System.out.println("sayHellos()");
return new String[] { "Hello World.", "hello wor...
}
// 引数がオブジェクト、戻り値がオブジェクト
public Model getModel(Model model) {
System.out.println("getModel()");
System.out.println(model);
Child[] children = new Child[] { new Child("chil...
new Child("child2") };
Model model2 = new Model("Hoge", children);
return model2;
}
// 戻り値がオブジェクトの配列
public Model[] getModels() {
Model model1 = new Model();
model1.setName("kino");
return new Model[] { model1, model1 };
}
}
引数や返り値としてやりとりするモデルクラスを下記のように...
package nu.mine.kino.services;
public class Model implements IModel {
private String name;
private Child[] children;
// setter/getterは省略
}
package nu.mine.kino.services;
import java.io.Serializable;
public class Child implements IModel, Serializable {
private String name;
// setter/getterは省略
}
----
この記事は
#vote(おもしろかった[31],そうでもない[13])
- アアアアアアアアアアアア -- [[あ]] &new{2020-02-16 (日)...
- いいい -- [[あああ]] &new{2020-06-04 (木) 15:44:04};
- このサイト機能してないっぽくないですか?http://getahead...
- このサイト機能してないっぽくないですか?http://getahead...
- DWRは2009年で開発終わってるようでその後の更新もないよう...
- DWRは2009年で開発終わってるようでその後の更新もないよう...
- DWRは2009年で開発終わってるようでその後の更新もないよう...
- DWRは2009年で開発終わってるようでその後の更新もないよう...
- DWRは2009年で開発終わってるようでその後の更新もないよう...
- https://github.com/directwebremoting/dwr -- &new{2023-...
#comment
#topicpath
SIZE(10){現在のアクセス:&counter;}
ページ名: