トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   サーバ関連【CGI・FCS・XMLSocket etc】
     JAVAとFlashの連携について
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
clmind
Åê¹ÆNo.15743
投稿日時: 2005-3-4 0:25
新米
居住地:
投稿: 4
使用環境:
JAVAとFlashの連携について
はじめまして。

JAVAとFlashの連携について少し悩んでまして、質問させていただきたいのですが、現在LoadVarsを用い、sendAndLoadメソッドでjspファイルに変数を渡しjspからflashに変数を返すというテストをしています。
Flashからjspに変数を渡すことはできているようなのですが,
(JSPの内部でFlashからの変数をファイル出力して確認しました)
Flash側への変数の返し方がわからない状況です。
とりあえずPerlで変数を返すときのように
Content-Type: text/explain \n\n
変数名=値
を出力してみたのですが上手くいきませんでした。
まあRemoting使えよって話なのかもしれませんが、個人で手を出すには少しつらい値段ですので、使わずに連携する手段を模索している状態です・・・

ご存知の方がいればどうかよろしくお願いします。
KURAGE
Åê¹ÆNo.15746
投稿日時: 2005-3-4 3:34
常連
居住地: 東京都
投稿: 199
使用環境:
Flash 4?8/Lite 1?2
2000/XP
OSX 10.3
qurage.net
AS2HTML
Re: JAVAとFlashの連携について
こんにちは

まずは、どこでエラーが出ているかを判別する為に
jspからどのようなデータが送られてきているかチェックしてみてはいかがでしょうか?

var myLoader = new LoadVars();
myLoader.onData = function(src){
	trace(src);
}
myLoader.load("xxxx.jsp");

newborn
Åê¹ÆNo.15747
投稿日時: 2005-3-4 9:10
常連
居住地: StoneRiverPrefecture
投稿: 170
使用環境:
MAC OSX panther/ WIN XP, Flash MX2004 pro,
Re: JAVAとFlashの連携について
引用:

まあRemoting使えよって話なのかもしれませんが、個人で手を出すには少しつらい値段ですので、使わずに連携する手段を模索している状態です・・・


こにゃにゃちわ。
わんこです。

macromedia版のremotingはもちろん有料ですが、
OpenAMFというオープンソースのソフトを使うことによって、
Java⇔Flash間でremoting通信?(AMF)ができるようになりますよ。

sourceforgeのサイトからダウンロードできます。
使い方は、英語での説明です


----------------
☆☆☆☆☆☆NEWBORN☆☆☆☆☆☆

clmind
Åê¹ÆNo.15778
投稿日時: 2005-3-5 2:26
新米
居住地:
投稿: 4
使用環境:
Re: JAVAとFlashの連携について
お返事ありがとうございます。
教えていただいたスクリプトを用いて出力を確認しました。
ちなみにjsp側では
out.println("Content-Type: text/html\n\n");
out.println("test=aaaa");
として実行した結果、traceの出力は

数行の空行
Content-Type: text/html\n\n
数行の空行
test=aaaa

のようになっていました。
出力はちゃんと返ってきているようです。
しかしsendAndLoadを用いてrecDataというLoadVarsインスタンスで返ってきたデータを受け。

recData.onLoad = function(src){
trace(src);
trace(recvData.test);
}

としたところ
true
undefined
と出力されました。
どうも出力が返ってきてはいるみたいですがtestという変数にちゃんと格納されていないようです。

そこで
var myLoader = new LoadVars();
myLoader.onData = function(src){
trace(src);
}
myLoader.load("xxxx.cgi");
のようにして、cgiで同様に
print "Content-type: text/html\n\n";
print "test=aaaa";
としsrcを出力させた結果
test=aaaa
のみが出力されました。
どうもjspで出力した場合はContent-Type: text/htmlが認識されていない?というかヘッダとして認識されていない?ようですね。
もう少しゴリゴリ色々試してみようかと思います。
clmind
Åê¹ÆNo.15779
投稿日時: 2005-3-5 2:29
新米
居住地:
投稿: 4
使用環境:
Re: JAVAとFlashの連携について
お返事ありがとうございます。
オープンソースでそのようなものがあるんですね!
英語ってのが確かにちょっとつらいかも・・・。
もう少しうまくいくかどうかチャレンジしてからそちらも見てみようかと思います。
あ、でもjavaで書かれているオープンソースならソースコードを解釈すれば何かわかるかも・・・理解できればの話ですが・・・。
clmind
Åê¹ÆNo.15780
投稿日時: 2005-3-5 3:14
新米
居住地:
投稿: 4
使用環境:
成功しました!!!
Flash側で変数名がaというinput型のテキストボックスを用意しておき

■Flash側の処理

//送信用のデータの生成
formData = new LoadVars();

//受信用のデータの生成
recvData = new LoadVars();

//データの受信処理を設定
recvData.onLoad = function(src){
trace(src);
trace(recvData.test);
b = recvData.test;
}

//変数代入および送信
formData.test = a;
formData.sendAndLoad("?.jsp", recvData, "post");

jspの代わりにサーブレットにて

■サーブレット側の処理

public class test extends HttpServlet {

public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{

String test = request.getParameter("test");
response.setContentType("text/html; charset=Shift_JIS");
PrintWriter out = response.getWriter();
out.println("test=" + test);

}

}

とすることで無事フラッシュ側に変数を渡すことができました。
これでJAVAと連携ができますね。
もっともRemotingはFlashとやり取りを行うための専用プロトコルを用いているようなので処理速度は比較にならないとは思いますが、Remotingを使わずともJAVAと連携したそこそこのアプリなら作ることができそうです。
折角だから何か作ろう♪
kikka
Åê¹ÆNo.15816
投稿日時: 2005-3-7 17:23
新米
居住地:
投稿: 1
使用環境:
WindowsXP, FlashMX Pro2004, Eclipse3.0.x, JBuilderX
JavaとFlashの通信(Re: 成功しました!!!)
亀レスなんですが、JavaとFlashの連携のサンプルを作ったことがあるので、お時間があればこちらも参考にしてみてください。

JavaとFlashをXMLで通信させるサンプル

ちなみに、仕事でJavaサーバとFlashクライアントという組み合わせのアプリケーションをいくつか作りましたが、Remotingは使ったことありません。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops