- PR -

Appletクラスの呼び出しについて

1
投稿者投稿内容
n.w
大ベテラン
会議室デビュー日: 2003/07/15
投稿数: 126
お住まい・勤務地: 神奈川
投稿日時: 2004-06-29 21:27
いつもお世話になってます。
初歩的な質問になってしまってもうしわけありませんが。
現在Applet-Servet通信のプログラムを組んでHTMLから呼び出そうと
思ってるんですがAppletクラス呼び出し方がわからなく苦労してます。
階層としては

testProject - ASApplet.html
|−−−− WEB-INF
|−−−classes
|−−−test - applet.class

といった階層にしてるんですが、ASAppletからWEB-INF内のappletクラスを
呼んでやるにはどうすればいいのでしょうか?
調べたところCodebaseを使って以下のようにかくものだと思ったんですが。
<applet
code="test.applet"
codebase="http://localhost:8080/testProject/"
width="100%" height="100%">
</applet>
としているのですが呼び出し失敗してしまいます。
よろしくお願いいたします
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2004-06-30 09:27
「WEB-INF内のappletクラス」とありますが、図解では WEB-INF 内に配置されていないように見えます。
#testProject/test 以下に配置されている?
実際のところどこに配置されていますか?

また、WEB-INF/ 以下のリソースはセキュリティ上の都合からクライアントに配信されない仕様になっています。詳しくは仕様を確認しましょう。
n.w
大ベテラン
会議室デビュー日: 2003/07/15
投稿数: 126
お住まい・勤務地: 神奈川
投稿日時: 2004-06-30 10:03
ご指摘ありがとうございます。
すいません、Codeタグがもれてました。
コード:
 
testProject - ASApplet.html 
  |−−−− WEB-INF 
               |−−−classes 
                         |−−−test - applet.class 


としていたのを
コード:
 
testProject
  |−−−− WEB-INF 
               |−−−classes -  - ASApplet.html 
                         |−−−test - applet.class 


とし、<applet code=test.applet.class width="200" height="200" >
としてやることで解決はできました。

引用:

WEB-INF/ 以下のリソースはセキュリティ上の都合からクライアントに
配信されない仕様になっています。


根本的な事を見落としていて恥ずかしい限りです。

通常Appletでの開発時、フォルダ構成としてはどのようにするものなんでしょうか?
たとえば、
コード:
 
testProject
  |− app - htmlファイル(Applet用)
  |            | --- Appletクラスのパッケージ/Appletクラス
  |
  |−−−− WEB-INF 
               |−−−classes - ServletやDBアクセスクラス配置


とし、testProjectにパスをきっておき、Appletクラスへ通信(呼び出し)を行い
そのAppletクラスからWEB-INF以下のクラスを呼び出すjsp画面時のような作り
でいいのでしょうか?

いっきゅう
大ベテラン
会議室デビュー日: 2004/04/04
投稿数: 153
お住まい・勤務地: 兵庫
投稿日時: 2004-06-30 10:03
<<追記ここから>>
n.wさんの返答から上記まで必要ないと思うので
削除いたします。
<<追記ここまで>>

ここでcodebaseを"."とすればAppletを呼び出しているHTMLのとこになるので
HTMLを置いている所にtestフォルダ以下クラスをおけば下記で呼び出すことが
できると思います。
<applet
code="test.applet"
codebase="."
width="100%" height="100%">
</applet>

<<追記ここから>>
修正だけではさびしいんで
n.wさんへの返答も追記します。

配置場所は参照できる範囲に置くならば
codebaseを指定してやればどこでもいいと思います。

ただスマートなやりかたは
必要なクラスをJARファイルにまとめ、
Applet要素のarchiveにそのファイルへの
codebaseからのパスを記載します。

又、別のライブラリを参照したい場合など
Jarファイルが複数になる場合は
パスをカンマ区切りで記載します


<<追記ここまで>>

[ メッセージ編集済み 編集者: いっきゅう 編集日時 2004-06-30 11:00 ]
n.w
大ベテラン
会議室デビュー日: 2003/07/15
投稿数: 126
お住まい・勤務地: 神奈川
投稿日時: 2004-06-30 14:14
引用:

配置場所は参照できる範囲に置くならば
codebaseを指定してやればどこでもいいと思います。

ただスマートなやりかたは
必要なクラスをJARファイルにまとめ、
Applet要素のarchiveにそのファイルへの
codebaseからのパスを記載します。

又、別のライブラリを参照したい場合など
Jarファイルが複数になる場合は
パスをカンマ区切りで記載します


ありがとうございます。 現在検証作業中ですが、リリース
する際には利用させてもらいます。
まだAppletはじめたばっかで知らない事も多いので
助かりました
1

スキルアップ/キャリアアップ(JOB@IT)