• ベストアンサー

アプレットに関して

お世話になっております。 色々WEBをまわって調べてみたのですが どうにも情報を得られなかったので書き込みをさせて頂きました。 もしご存知の方がいらっしゃいましたらお願いします。 僕は今までDB系業務に携わっていたのですが 最近になりJava開発系に異動しました。 そしてJavaを触っているうちに個人でアプレットでも作ってみたいと 思ったのですがその中でいくつかの疑問がでてきました。 それは次のような点です。 ・アプレットをレンタルサーバーに設置して動作させる事ってできるのか? ・データ連携をやってみたい。そこで個人レベルだとMySQLなどとの連携を検討している。 ……が、はたしてこの連携できるのか?>DB→Java以外にもJavaから更新可能か?とか。 ・そういえばJSPでのDB連携はよく聞くがアプレットでの連携はまったく聞かない。 もしかして高度なのか?それともまったくできないものなのか? ・一般的なiアプリなどはよくサーバーと接続して更新情報を入手しているが あの技術に関する書籍などが発見できなかった。ああいうのって難しい??? まだまだJAVA覚えたてであまりよく解っていない部分も多いのですが…… もしご存知の方がいらっしゃいましたらお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.5

> >DBとの仲介をする何らかのサービス > これってどういうものなのでしょう? > 何かちょっと調べてみたいのですが > 何か名称的があるのであれば教えていただければ助かります。 ああ、ごめん。これがさっき言った「AppletからPHPを突っつく」という奴だ。Appletは「最も一般的な通信手段しかない」という前提で開発するしかないけんね。これは#4さんの言う通り。  つまり、Sun Java 1.4.2_07を使っている人も居れば、MSJava(←確か1.1.8相当?)を使っている人も居る。今でもYahooゲームなんかは1.1.8か1.1.1だったかでAppletを作っているはず。  ところで、「HTTPじゃトロくさくって使ってらんね~」という時にどうするかだが、やはりJavaでサーバアプリを作り、Appletからそいつを突っつく事になるだろう。  今までの話から、君がレンタルサーバーを選択する際に、「Telnetかsshを開放していて、かつ自前のサーバープログラムを実行させられる」(Java Server版)か、「DBが用意されていて、PHPやCGIからアクセスできる」(HTTP版)という条件が必要だという事やね。  Java Server版では、サーバープロセスとして使えるポート番号も確認する必要があるし、それらがクライアント側のセキュリティでブロックされていると使えない。現実問題としてやはりAppletで「リッチクライアント」なるものを作るというのが解になるのではないかな。

dwt
質問者

お礼

返信ありがとうございます。 一般的な通信手段等などは開発しようと 思いたったときまったは全く気にしてませんでした(^^; が、その辺は色々気を遣わないと駄目みたいですね… まだわからない課題が多いのですが 今何を得ればいいかとても参考になりました。 ここでの質問・回答をヒントにもうチョット 調べてみたいと思います。

その他の回答 (4)

回答No.4

>と、いうことはサーバー側はclass/jarファイルが設置できれば >問題ないという事でよろしいでしょうか? はい。その通りです。 あとはクライアント側のJVMのバージョンが微妙に気になりますね。 (JAVAのAPIを見て導入されたバージョンとか確認しながら作れば問題ないと思いますが。)

dwt
質問者

お礼

こちらで相談後、無事iアプリを作成できました。 …DBはまだ繋げてないんですが^^; これからその辺も学習していこうと思います。 とても参考になりました。ありがごうございます。

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.3

大体の内容は今までの方がおっしゃっているので、補足的な内容を説明したいと思う。  Appletは確かにブラウザにクラスをダウンロードして実行するのだが、セキュリティのため「Appletが配置されていたマシンとしか通信できない」ようになっている。例えばSocketクラスで。  で、一般的にAppletでDB操作するには、Appletとサーバで実行している独自サーバJavaアプリケーションで通信を行って、Javaアプリケーション側でDB操作を行う。つまり、 クライアントのJava-Applet  |何かの通信 サーバのJava-Application  |Postgresなら5432番 サーバのデータベース という形やね。  また、サーバのJava-Applicationは、別にJavaアプリでなくても、JSPやPHPにしてAppletからHTTPでつっついてやる、という手もある。Java-Appletが、もうひとつのブラウザになる感じかな。  Java-Appletから直接DBをつっつかないのは、 ・サーバがDBのポートをインターネットに公開する訳が無い ・Applet、つまりクライアント側ではJDBCの設定ができていない という2つの理由がある。  で、さっきのセキュリティの理由から、Appletを配置するサーバでDBとの仲介をする何らかのサービスが必要なので、レンタルサーバを調べる場合はそのあたりを確かめよう。

dwt
質問者

お礼

返信ありがとうございます。 >「Appletが配置されていたマシンとしか通信できない」 テキストを読み返したら書いてありました。 すっかりわすれてましたが(^^; >JSPやPHPにしてAppletからHTTPでつっついてやる、という手もある。 これははじめて知りました。 WEB系知識はPHPの方が多いので この情報はとても参考になりました。 >もうひとつのブラウザになる感じかな。 すごいわかりやすい説明で助かります(^^; >という2つの理由がある。 言われてみれば、なるほどそりゃそうかって思いましたが 気づきませんでした(^^; >DBとの仲介をする何らかのサービス これってどういうものなのでしょう? 何かちょっと調べてみたいのですが 何か名称的があるのであれば教えていただければ助かります。 ありがとうございます

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.2

appletというと、通常サーバからダウンロードされて、クライアント側の制限された環境(sandbox)で実行されるJavaプログラムの事ですから、 > アプレットをレンタルサーバーに設置して動作させる事 ってのが、「サーバ上でappletコードを実行する」と考えているのなら、そこが誤解の原因かも。

dwt
質問者

お礼

返信ありがとうございます。 pcbeginner様のレスにもあるように サーバー側が何かアプレットをクライアントで動作させるのに 何か対応していないと だめなのかと思ってまして…… ありがとうございました。

回答No.1

>・アプレットをレンタルサーバーに設置して動作させる事ってできるのか? 少し誤解されているようですが、 アプレットを置くのはサーバーです。 が、実際に動作するのはクライアントのブラウザですので、動作するかどうかはクライアント側の設定によります。 他人のPCで完全にという保障はありませんが、難しいことをしない簡単なものなら、ほぼ動きます。 あとはレンタルサーバーによりますでしょうか…。 もしかしたら「.classファイルや.jarファイルを置いてはいけない。」という利用規約があったりしたら置けませんね…。 >・データ連携をやってみたい。そこで個人レベルだとMySQLなどとの連携を検討している。 ……が、はたしてこの連携できるのか?>DB→Java以外にもJavaから更新可能か?とか。 アプレットから直接DBをとなると… できないこともないような気がしますが、やったことないので、ちゃんとしたやり方はわかりません。 ごめんなさい。 アプレットでなければ、JDBCを使えば操作できます。 SQLを実行することができます。 >・そういえばJSPでのDB連携はよく聞くがアプレットでの連携はまったく聞かない。 もしかして高度なのか?それともまったくできないものなのか? 1つ前の(↑の)で答えてしまいました。(^^;A >・一般的なiアプリなどはよくサーバーと接続して更新情報を入手しているが あの技術に関する書籍などが発見できなかった。ああいうのって難しい??? iアプリについては詳しくないのですが、 ドコモのサイトでiアプリ開発についてのドキュメント が入手できますので、そちらを参考になさって下さい。 が、iアプリがjavaのアプリということを考えると、サーバーと通信することは可能です。

dwt
質問者

お礼

返信ありがとうございます。 どうやら勘違いをしていたようです。 昔、知人にアプレット動作について聞いたとき、 サーバーもJavaが動作できる状態でないと× ……と聞いた「ような」気がしたもので(^^; と、いうことはサーバー側はclass/jarファイルが設置できれば 問題ないという事でよろしいでしょうか? iアプリ資料についても参考になりました。 ありがとうございます。

関連するQ&A