【Java】次世代Java・ ..
[2ch|▼Menu]
369:デフォルトの名無しさん
04/11/22 13:12:39
>>368
JavaWebStartはスタンドアロンアプリを配ることにも使えるぞ。

サーバに依存して動くアプリを配るにしても、
なるべく disconnected operation ができるように
工夫して作るもんじゃないのか?


370:デフォルトの名無しさん
04/11/22 14:36:41
いやそういう意味じゃなくて
webstartだとサンドボックスで動くんじゃないのか?

通常アプリケーションとの違いはそこだとおもうが

371:デフォルトの名無しさん
04/11/22 15:21:21
WebStartはアクセス範囲をポリシーファイルで自由に設定可能。
無制限のアクセス権(つまりネイティブアプリと同等)を要求するWebStartアプリも
たくさんあるよ。

372:デフォルトの名無しさん
04/11/22 16:09:39
それって警告画面でなかったか?

373:デフォルトの名無しさん
04/11/22 21:07:04
たしか一番最初だけ出るね。「実行しますか?」というのが。
それ以降は普通に起動する。

374:デフォルトの名無しさん
04/11/22 21:50:55
毎回起動時に出るよ

そんなのユーザーが安心してつかうとはかぎらんだろ
それくらいならJava起動するだけのexe作ったほうがいい
ついでにランタイムも同梱してJavaであることすら意識させないでね

375:デフォルトの名無しさん
04/11/22 22:05:57
>>374
おおーい。起動時に毎回出る「場合もある」だけでしょー。
1回の同意で以降は聞かれないっていうのもありなんだから。

exeを作る意味は?exeあってもどうせJavaのランタイムがないと動かんでしょ?
ランタイムを入れてるんだったらjnlpで起動しても初回の同意ダイアログさえクリアすれば問題ない。
exeファイルをマシンの中に持ってくるまでの作業よりも(ダウンロード>解凍|インストーラ実行)
よっぽど敷居低いでしょ?

376:デフォルトの名無しさん
04/11/22 23:03:03
セットアップが嫌という環境もあるわけだ
レジストリをいじられたくないとかね

とくに体験版とかで配布する場合とか圧縮だけのほうが喜ばれるぞい


377:デフォルトの名無しさん
04/11/22 23:07:38
WebStartアプリって署名なしですべての機能が使えたっけ?

JNLPAPIだけのようなきがしたが

378:デフォルトの名無しさん
04/11/22 23:39:40
>>376
JREを入れる時点で多少なりとレジストリへ書き込むだろ。
URLリンク(java.sun.com)
とにかく、「圧縮だけのほうが喜ばれる」というのには賛成できないな。
俺は、得体の知れないサイトからダウソした生のjarとかexeとかでは,
トロイの木馬かもわからんから、起動するのは恐い。

377が書いているように、JNLP APIしか使わないようなソフトなら
署名も不要になるし、セキュリティ的な安心感を与えられる。
ちゃんとした.jnlpのほうが、ユーザに喜ばれると思うぞ。


379:デフォルトの名無しさん
04/11/23 00:37:20
まずJREが入っていること、という前提が難しいことに気がつけ

ちなみに>>376>>377も俺な
JNLPAPIだけでもローカル資源アクセスは警告文でるぞ
プリントとファイルアクセスしか試してないがどちらもでる


380:デフォルトの名無しさん
04/11/23 00:55:09
「次回は聞かない」みたいなチェックボックスないんだっけ

381:デフォルトの名無しさん
04/11/23 01:34:43
>>379
客自身にJREをインストールさせられないような案件なら、
そもそもJavaを使うのを避けたほうがいいんじゃないか?
WinXP SP2以降は、JREをActiveXのセキュリティホールから
自動インストールさせる技も使えなくなったしな。

俺の場合、客先に導入されているPCがIBMで、
JREがプレインストールされていたから、悩まずに済んだけどな。


382:デフォルトの名無しさん
04/11/23 14:11:06
仕事で使う場合とそれ以外で使う場合とで分かれるな

仕事でならJREをセットアップさせるのは手間ではないが、
これも最近はJRE同根でやってる

JREのバージョン違いでの動作の不具合を防ぐためね

ゲーム等ではJREのセットアップを別にしておいてくださいというのは
手間もあって嫌がる人は多い

クロスプラットフォームでのゲーム作成という目的もあるから
JRE付属させるだけでいいのでJavaはそれなりに存在意義あるよ


383:デフォルトの名無しさん
04/11/23 17:21:59
>>382
ちょっと待て。言ってることが矛盾してるぞ。
結局ユーザにJREを入れさせるのが前提なんじゃねーか。
該当するJREをあらかじめインストールしてあるユーザからすれば、
わざわざ余計なもの同梱すんじゃねー糞が!ってとこだな。

警告文をユーザに見せるのがそんなに嫌か?
おまえみたいなセキュリティ意識の低いやつは、
セキュリティ意識の低いユーザと馴れ合ってるのがお似合いだな。

ちなみに、JavaWebStartには、アプリケーションの動作に必要な
バージョンのJREをユーザが持っていないときには、
自動でダウンロード・インストールしてくれる機能がある。
アプリにJREを同梱するだなんて時代は、とっくに終わってんだよ…


384:デフォルトの名無しさん
04/11/23 17:59:20
ようやく話題が次世代Javaっぽくなってきたのでアゲ


385:デフォルトの名無しさん
04/11/23 18:02:37
JREが入ってるのが前提ってのはおかしいな

毎回警告文がでるゲームとか使いたいというやつの気がしれん

webstartは場合によっては使えるものの
JNLPAPI以外はあいかわらずサンドボックス内じゃねーの?

386:デフォルトの名無しさん
04/11/23 18:02:58
JREっていつWindows標準搭載になるの?
デフォルトでインストール済みにしてよ。

387:デフォルトの名無しさん
04/11/23 18:07:27
>>385
コード署名しろ


388:デフォルトの名無しさん
04/11/23 19:04:18
すべて署名しろっていうのは結局すべてActiveXで作るのとかわらんな

389:デフォルトの名無しさん
04/11/23 19:05:07
署名しても認証局とかの問題で貧乏人は警告文でるだろ・・・

390:デフォルトの名無しさん
04/11/23 19:13:24
java.net内のこの辺について話せるスレはここですか
URLリンク(community.java.net)
URLリンク(community.java.net)

391:デフォルトの名無しさん
04/11/23 21:15:39
最初の1回はVerisignの証明書でコード署名してたって警告は出るだろ。


392:デフォルトの名無しさん
04/11/23 21:56:47
PKIはユーザ各自が安全と思われる経路でルート証明書を入手していることが前提。
んでもって、その証明書からの信用の連鎖をユーザが理解してリスクを受け入れる
ことで、サービスに関する責任の線引きをできるようにすることに意味がある。
これの価値がわからないか、面倒だと思う奴は、電子署名とか使わないほうがいいぞ。

JavaWebStartにも、ユーザが手作業でルート証明書をインポートする機能が用意されてある。
ルート証明書を自己署名で作って、安全と思われる経路でユーザに配る方法を、
自前で持っているのなら、Verisignとかに頼らずにこの機能を使うのが普通だと思う。
貧乏かどうかとかは関係無い(企業内で利用する場合とか)。


393:デフォルトの名無しさん
04/11/23 22:04:52
ちなみにJavaWebStartには、証明書の指紋をGUI上で確認する方法が無い。
手作業での証明書の受け渡し・インポートをさせるときに、
内容が本物であることを確かめにくい。PKIとしては不備だ思う。

1.5からのJavaWebStartのアプリケーションマネージャは、
編集→設定→セキュリティ→証明書→詳細 をすると、
cerの中身のバイナリが表示されるようになったので、
この画面をダンプして印刷してユーザに配布しておけば、
代用できるかもしれないけどな。


394:デフォルトの名無しさん
04/11/23 23:06:04
>>393
1.5から多少よくなったのか
ノーチェックだった
さんきゅ

395:デフォルトの名無しさん
04/11/23 23:09:00
>>392
企業内ならWbeStart使わないという手が一番だったけどな

セットアッププログラムでJRE埋め込みとスタートアップ部分作って
ネット経由で肝心の実行プログラムのダウンロード、実行という仕組み作ってる

再発明とかいうな
手間の問題とかJREのバージョン問題とかプログラムの追加と削除で
アンインストールができることとかいろいろあってな

396:デフォルトの名無しさん
04/11/23 23:47:16
>>394
つーか、1.5になってなお、鍵指紋を表示するフィールドが無い、
っていうことをには、わりとガッカリさせられている。
keytoolで鍵を作る過程でも、MD5,SHA1とかは、
フツーに表示されてるのにな….1.6?に期待、なのかな…。

>>395
セットアッププログラムを配るというのなら、
ネイティブバイナリのインストーラで、
JREインストール+JavaWebStartでのアプリ導入・警告了承済の
構成状態を作ってやるほうが、バージョンアップとか、いろいろ
楽できると思うがな。


397:デフォルトの名無しさん
04/11/24 02:09:16
横道にそれてしまいますが、、、
これからの時代、クライアント上で動くプログラムが
「セキュリティチェックの為に警告ダイアログが出力される」という
動作自体が、便利といわれるか、不便といわれるかで
ニーズが分かれるような気がする。

例えば話ですが、
ウイルスバスターで個人情報保護設定で自分の名前やメールアドレスを
登録しておいたら、意外と不便でした。主に、登録フォーム系のページ
が大体引っかかる。んで、やり直しが発生。

398:デフォルトの名無しさん
04/11/24 02:54:21
まあ月並みだが便利さと安全性のトレードオフだろ。
.NETはどちらかというと便利さに重きをおいていて
Javaはどちらかというと安全性に重きをおいているという話。

399:デフォルトの名無しさん
04/11/24 03:08:24
>>397
そりゃ、Javaのセキュリティサンドボックスの話じゃなくて、
PICSとかP3Pとかの情報の入りと出のポリシの設定とか、
CC/PPとかのcontent negotiation系の技術に関わる話なんじゃないかな。


400:デフォルトの名無しさん
04/11/26 00:00:46
>>397
これからの時代は
セキュアプログラミングに対する意識が高まったことにより
安全性が重要視される。

セキュアプログラミングをしないで
セキュリティホールを作ってしまうと逮捕されてしまうことがあるらしいぞ。
恐ろしいことに。C/C++プログラマはソフトウェア開発で慎重にならなければならない
立場に追いやられてる。

401:デフォルトの名無しさん
04/11/26 00:06:55
問題は何度も何度も警告ダイアログでてきて
ほいほいOK押すもんだから
なんの意味もないということだ


402:デフォルトの名無しさん
04/11/26 00:17:07
もしくはまったく内容を確認せずに寄り付かなくなるかだな

403:デフォルトの名無しさん
04/11/26 21:12:21
java web start起動時のメッセージはかなり引くよ、
まるで全件委譲の誓約書にサインさせられるみたいなんだから。

404:デフォルトの名無しさん
04/11/26 22:36:29
1.5ってどうやって起動させるの?
1.4にあったあのアイコンが無いのですが・・・

405:デフォルトの名無しさん
04/11/27 01:08:18
>>403
そりゃJavaWebStartに限らないよ。
いろいろなソフトウェアをインストールするときに出てくるライセンス文書は、
真面目に読むと、かな〜り引くような内容が多いよ。

JavaWebStartのアレは、シロウトが読んでも、リスクがあるということが
ちゃんと理解できるような書き方をしている分だけ、良心的だと俺は思うよ。

まぁ、署名なし・securityなしとのやつと、
署名あり・all-permission,application-client-permissionsのやつとの間で,
何かもうちょっと、資源アクセス権限の許認可を、GUIで対話的にできるような
しくみがあったりしてもいいかなぁ…、とかは思うけどね。


406:405
04/11/27 01:11:38
>>404 まちがえた。
誤 application-client-permissions
正 j2ee-application-client-permissions


407:405
04/11/27 01:17:26
ごめん。こんどは数字をまちがえた。さっきのは404じゃなくて405。
ついでに404に回答すると、
JavaWebStartのアプリケーションマネージャなら、
jreのフォルダの中のjavawsフォルダの中にある、
javaws.exeで起動できるはず。


408:デフォルトの名無しさん
04/11/27 01:31:29
1.5の場合には「Javaアプリケーションキャッシュビューア」と言うらしい。
jre1.5.0\bin\javaws.exe


409:デフォルトの名無しさん
04/11/27 01:39:41
>>405
あれ?でも実際問題として、JavaWebStartで起動したアプリって、
それほどの権限もってるんだっけ?
つまり普通のexe並みの権限を?

410:デフォルトの名無しさん
04/11/27 01:56:48
>>403
警告のデザインをもっと工夫して
わかりやすくすればいいと思うけどな

411:405
04/11/27 02:02:56
すべてのjarに署名して、.jnlpに
<security>
<all-permissions/>
</security>
と書けば、exe並です。
っていうかふつうのJavaアプリケーションと同じ。


412:デフォルトの名無しさん
04/11/27 11:08:54
でもそれだと信頼できないActiveXのアプリを野放しにしているのと同じだからな
アプリケーションの変わりに使うというのならいいのだが
webstartはアプレットのように気軽にブラウザから起動できるので危険極まりない

それならばいったんダウンロードさせて各自の責任においてアプリケーションを起動したほうがまし


413:デフォルトの名無しさん
04/11/27 11:26:07
ダウンロードさせて各自の責任においてアプリケーションを起動

webstartじゃん。

414:デフォルトの名無しさん
04/11/27 11:26:14
>>412
あれ、まさしくその通りなんじゃないんだっけ?<JavaWebStart

415:414
04/11/27 11:27:23
被った・・・。
秒単位で。

416:デフォルトの名無しさん
04/11/27 11:44:12
AllPermissionで使った場合でも、アプリケーションを配布してインストールさせる
必要がないってところがウリなんだろ。新バージョンをあげとけば、WebStartが
勝手に認識してダウンロードしてくれるし。

417:デフォルトの名無しさん
04/11/27 11:50:01
自分で保存先を選んでウイルススキャンして実行とかできるのにたいして
webstartはリンククリックしたらいきなり起動だからな
ユーザーはしらないでOKOKと押していくよ

アプレットやwebstartはサンドボックスの中でありながら影響のない部分で
アプリを動かせるのだけが強みかと

JNLPAPIみるかぎりアプレットでは制限厳しすぎたと思ってるようだけどね

まぁ野良署名つきがいいと思うのならActiveXでもいいしアプレットでもいいけどな


418:デフォルトの名無しさん
04/11/27 11:54:57
WebStartはベターアプレットを目指してるだけだから
JNLPAPIによるサンドボックス内の緩和とキャッシュ制御だけだと思うがな

基本的に署名はベリサインと握手せんといかん

419:デフォルトの名無しさん
04/11/27 11:55:41
ダウンロード&実行と比べれば、どうでもいい話だな。

420:デフォルトの名無しさん
04/11/27 12:07:37
ワンクッションおくというのがいいという場合もある
あとはリソース読み込みがなぜかうまくいかないライブラリもそれなりにある
JavaSoundとか変な動きするのがちらほらと

421:デフォルトの名無しさん
04/11/27 12:37:41
ああインターネット配布を想定してたのか。なるほどね。
おれは企業内で社内アプリとか配布するのを想定してたから、
「ウイルス汚染されたもんを配布サーバに置いたらクビもんだろ」
とか思ってしまったよ。

422:デフォルトの名無しさん
04/11/27 16:04:53
JavaWebStartではendorsed mechanismが使えないから、
JRE同梱のXalan2のバグとかを回避できなくて、泣いた。


423:デフォルトの名無しさん
04/11/28 15:24:47
>>418
別に自前署名でも問題ないぞ。DLL使いたいがためにVerisign使うバカはいない。
ってか、Mustangのネタはどうなった。個人的にはJVMの共有が気になる。
JVM起動のフットプリントがさらに下がるわけだし。
Acrobatの常駐プロセスのっけてるのに気がつかんようなやつなら
「Java速くなった」って単純に喜べるようになるでしょ?

424:デフォルトの名無しさん
04/11/28 15:47:00
自前じゃ警告がなぁ
社内システムとかならそれでいいかもしれんが

425:デフォルトの名無しさん
04/11/28 20:40:55
いつでも安全にローカルディスク上から取り除く為の仕掛けを各プログラムによ
らないセントラルなシステムとしてJava自身(JavaVM?)が持つ。

そして、警告は実行時に逐次ポップアップしてユーザーに許可を問う。
例えば、ローカルディスクから読み出しを行う場合、「警告:〜がローカルディス
ク上のファイル××に対する読み出し権限を要求しています。許可しますか?」
といった具合。
ここでの許可不許可は全てセントラルなシステムに記録され、いつでもユーザー
によって変更する事ができるものとする。

こうなってれば俺としては安心して使えるんだが、どうだろう?

426:デフォルトの名無しさん
04/11/28 20:49:01
署名なしのJNLPAPIがほぼそれだけど?


427:デフォルトの名無しさん
04/11/28 21:26:25
>>426
あれ?そうなの?
どこかのスレにサンプルとして貼られてたURLをクリックしたら
最初に全ての権限を要求されたけど?
これだと、完全拒絶か完全黙認かの二択しかない。

あと、これってどこからアンインストールできるのか分からん。
真面目に調べれば直ぐにみつかる事なのかもしれないけど
大して邪魔にもならんから放ってる。
ただ第三者に自分が提供する場合を考えると、もうちょっとど
うにかならんか?と思う。

428:デフォルトの名無しさん
04/11/28 21:38:13
そりゃサンプルが全権限を要求したからだろうなあ。全権限要求するアプリには、
最初に警告がでる。

言ってるのは、ファイルとかにアクセスするたびに「許可しますか?」と聞いてきて、
許可したら、許可したってことを覚えておくってこと?
そうだとしたら、ちょっとうっとうしくないかな?

それよりはJNLPみたいに、ファイルAには読み書き、ファイルBには読み込みのみ、
開けるソケットは何番から何番、と一括で制御できるほうが。

429:デフォルトの名無しさん
04/11/28 21:43:24
全権要求は一般的なWebstartとはいえん
自分で適当にサンプル作ってやってみればわかる

プリンタ使うときやファイルの保存やロードのダイアログを出す直前に
確認のダイアログが出る

次からもこのダイアログを出すかどうかのチェックボックスもでる
ただし、アプリ終了したら次回もまた確認の画面はでるが

JNLPAPIの実装でやってるんだろうね
VMがずっと見張っているというのは厳しいからね

430:デフォルトの名無しさん
04/11/28 22:03:26
>>428
>言ってるのは、ファイルとかにアクセスするたびに「許可しますか?」と聞いてきて、
>許可したら、許可したってことを覚えておくってこと?
そう、とりあえず実行してみて、信用するか否かは動作を見ながら決める。
そして、許可した権限は何時でも好きな時に一覧として閲覧したり変更したりでき
ると、そんな感じ。

自分とこの看板に自信がある人なら、最初に全権を要求するとか、読み込みに関
するフリーパスを要求しても大丈夫だろうけど、そうでない(例えば、2ch発の名無
しさんアプリだったり?した)場合に、最初から敬遠されてしまっては意味がないか
ら、段階的に少しずつ要求したい(&してほしい)。

勿論、最初にある程度纏まった要求を出す事*も*できていいと思う。
個別に毎回というのは、あくまで+αとしてって事で

431:デフォルトの名無しさん
04/11/28 22:10:12
>>429
げっ、すれ違ったorz

個別に要求を出す事はできるのか・・・・・・
それじゃあ後は覚えててくれて、一覧で確認できて、それを変更する事も
できて、嫌になったら何時でも放り出せる様になってれば十分。

ダイアログが出せるなら、一覧から過去に要求を問うた事があるか否か
を調べて、ないならダイアログを出し、あるならその時に設定されたフラ
グを元に動作を決定すればいいだけだから、やろうと思えばやれると思
う。

432:デフォルトの名無しさん
04/11/29 09:50:59
まとめるとこんな感じであってますか?
■署名なし
 JNLP APIでのみ、ローカルリソースにアクセス可能。
 アクセス開始時に確認ダイアログがでて、以後は許可とすることができるが、
 起動しなおすとまた確認ダイアログがでるのでうざい。
■自己署名
 all-permissionにして、通常のJavaアプリとして操作可能。
 1回目の起動時のみ、確認ダイアログが表示される。
 「この証明書の信頼性を検証できません」というキツイメッセージ。
■Verisignで署名
 all-permissionにして、通常のJavaアプリとして操作可能。
 1回目の起動時のみ、確認ダイアログが表示される。
 自己署名よりもやさしいメッセージ。
■自己署名の証明書をルート証明書としてインストール
 Verisignで署名したのと同じような表示。
 証明書の安全な配布・インストール方法が必要なので面倒。
 1.5より前は、証明書の指紋をGUI上で確認する方法が無いので、
 インストールした証明書が本物かどうか確認できない。

433:デフォルトの名無しさん
04/11/29 11:19:53
>>432
乙!

だいたい、いいんじゃない。
all-permission じゃなくて all-permissions だけどな。

ちなみに俺は all-permissions と j2ee-application-client-permissions の
違いがよくわからん。教えてエロイ人。


434:デフォルトの名無しさん
04/11/29 11:32:56
webstartスレかと思うくらいの流れだが
6.0の話題はまったくないな

5.0も変更が大きすぎて今まで以上に以降が進んでいないように見える


435:デフォルトの名無しさん
04/11/29 14:05:04
6.0によるJVM共有の意義は、サーバ側Javaよりもむしろ、
クライアント側Javaのほうにある、ってことだろ。

そういう意味で、JavaWebStartを話題にするのは、
それなりに主旨に合ってると思うぞ。


436:デフォルトの名無しさん
04/11/29 14:37:15
MustangかDolphineかで、入るとか入らないとか言われている、
JDICについて貼っときます。

URLリンク(jdic.dev.java.net)

The JDesktop Integration Components (JDIC) project aims to make Java
technology-based applications ("Java applications") first-class citizens of
current desktop platforms without sacrificing platform independence.

JDIC provides Java applications with access to facilities provided by the native
desktop such as the mailer, the browser, and registered document viewing
applications. Additionally it provides the mechanisms by which Java applications
can integrate into the native desktop such as registering Java applications as
document viewers on the desktop, creating tray icons on the desktop, and
creating installer packages.

JDIC consists of a collection of Java packages (JDIC API), all with the package
name prefix org.jdesktop.jdic, and a JNLP application packaging tool (JDIC
Packager).

つーわけで、これもJNLPでdeployされるわけだ。


437:デフォルトの名無しさん
04/11/29 14:57:44
>>428,429
URLリンク(java.sun.com)
の、FileOpenServiceとかFileSaveServiceを見てくれ。

JNLPでは、どのファイルを開く・どのファイルに保存するかは
ユーザが選ぶするから安全、という考え方をするようだ。

よって、「他のプロセスが作ったディレクトリ/ファイルを共有して、
ディレクトリ単位での処理をする」というようなプログラムが書けない
ことになる(署名が必要になる。ちょっと不便。JNLP APIが改訂されないかな…)。

署名無しでクライアントローカルに永続データを作って、
アプリケーション間で共有して読み書きしたければ、
PersistenceServiceを使え、ということらしい。


438:デフォルトの名無しさん
04/11/29 19:13:54
javaws が CUIで使えるようになったらいいのになぁ・・・ってこういうの1.6ではどうでしょう。

439:デフォルトの名無しさん
04/11/29 21:27:17
>>437
429だけどなんで参照されたのかわからんが、当たり前のことかかれても

ユーザーで選択するから安全ってのはWebstartが標準添付される前から
やってきた俺にとっては当たり前というか、まずはそこを解決したかったのが
WebStartという感じだが


440:デフォルトの名無しさん
04/11/29 23:11:45
>>439 なんか誤解させてしまってスマソ。

ようは、JNLP APIの、FileOpenServiceとかFileSaveServiceは、
JFileChooser#setFileSelectionModeメソッドでFILES_ONLYにした場合の
JFileChooserに相当する機能しか使えないけど、
DIRECTORIES_ONLYやFILES_AND_DIRECTORIESの機能も使いたい、ってこと。

java.io.Fileというクラスには、
javax.naming.Binding的な機能と、
javax.naming.Context的な機能などが,
いろいろに混ざっている。

で、これに対して、
javax.jnlp.FileContentsというクラスは、
javax.naming.Binding的な機能に相当するクラスとして作られている。
javax.naming.Context的な機能は取り除かれている。

java.io.Fileを生で使わせるのは危ないっていうのはわかる。
でも本当に危ないのは、
・java.io.Fileのコンストラクタが呼び出せる
・java.io.File#getParentが使える
の2点に限られるんじゃないのかなぁ?

javax.jnlp.FileOpenServiceやjavax.jnlp.FileSaveServiceから
ユーザの自己責任で生成されたオブジェクトに対して使うんだから、
javax.naming.Context的な機能も使わせてくれよ、って俺は思うんだよ。

つーわけで、javax.jnlp.FileContentsのサブクラスとして
javax.jnlp.FileContextなんていうのが作られることを1.6ではキボンヌ。


441:439
04/11/29 23:14:31
ああ、了解了解

ところで次のやつは6.0だよな?
内部バージョンも次からは6.0と聞いたが

442:440
04/11/29 23:14:57
ごめん、FileContents はインターフェイスだった。


443:デフォルトの名無しさん
04/12/01 01:03:40
内部バージョンって System.getProperty("java.version") とかで取れる奴の事?

444:デフォルトの名無しさん
04/12/05 16:46:03
public class Binder2nd<_Arg1, _Arg2, _Result, _Operation extends BinaryFunction<_Arg1, _Arg2 , _Result>>
implements UnaryFunction<_Arg1, _Result> {

protected _Operation op;
protected _Arg2 y;
public Binder2nd(_Operation __op, _Arg2 __y) {
op = __op;
y = __y;
}
public _Result execute(_Arg1 __x) {
return op.execute(__x, y);
}

public static <_A1, _A2, _R>
Binder2nd<_A1, _A2, _R, BinaryFunction<_A1, _A2, _R>> make(BinaryFunction<_A1, _A2, _R> __fn, _A2 __y) {
return new Binder2nd<_A1, _A2, _R, BinaryFunction<_A1, _A2, _R>>(__fn, __y);
}
}

これはもうJAVAじゃないな

445:デフォルトの名無しさん
05/02/27 09:12:59
期待あげ
6.0仕様公開らしいよ
URLリンク(jcp.org)


446:デフォルトの名無しさん
05/02/27 14:42:50
jsr203 NIO2入れて欲しかったなぁ。。。

447:デフォルトの名無しさん
05/02/27 15:48:03
6.0のソースコードgets.

このソースコード、ほんとにJVM入ってるの?


448:デフォルトの名無しさん
05/02/27 16:10:20
>>446
なんができるの?

449:デフォルトの名無しさん
05/02/27 18:34:01
NIOはネットワークソケット周りにOSのnon-blockingアクセスを使えるようにして高速化した。
メモリバッファをJVM内ではなくOSのネイティブなメモリ空間を使用したりするなど、なかなか
いい感じだった。

だけどNon-blocking I/Oはソケットにしかつかえないという制限もあった。メモリマップ・ファイル
とか意欲的な取り組みもあったけど、やはりキモはSocketのNon-blocking I/Oだった。

NIO2はファイル周りにも手を付けて、OSの非同期ファイルアクセス機能を取り入れたり、
ファイル属性を扱えるようにしたり、NIOで未実装となったものも実装しちゃうぞ、となかな
か面白い試みで、実はJSRとしてあげられた段階では 1.5 Tigerに入れる、とか書いてた。

実際VoteもMacromedia以外はOK出してるんだけど、6.0にも乗らないのかよ...

450:デフォルトの名無しさん
05/02/27 19:27:13
そうなのか。
いまさらNIOの質問だけど、NIOのメモリバッファって、JVMの設定とは別にメモリが使えることになるのかな。

451:デフォルトの名無しさん
05/02/27 19:31:55
allocateDirect()で確保されたバッファは、JVMのヒープじゃなくて、
プラットフォームのネイティブなメモリ空間として確保されるから、関係なかったはず。

ごめんソースが出せない...

452:デフォルトの名無しさん
05/02/27 19:47:32
サンクス。
なんとなく巨大なメモリが必要なときにつかえそうだってことがわかった。

453:デフォルトの名無しさん
05/02/27 22:12:08
>>450
ほとんどのケースで NIO 使わんほうが
効率いいけどな。

454:デフォルトの名無しさん
05/02/27 23:02:05
NIOというと
New I/Oと勘違いしそうだ

455:デフォルトの名無しさん
05/02/27 23:06:25
NIOっていったらNew I/Oじゃん。

456:デフォルトの名無しさん
05/02/27 23:16:59
Nice I/Oに決まってる。

457:デフォルトの名無しさん
05/02/28 00:01:07
>>454
天然?

458:デフォルトの名無しさん
05/02/28 00:08:51
Neo I/O

459:デフォルトの名無しさん
05/02/28 04:48:47
トリニティ助けてー

460:デフォルトの名無しさん
05/02/28 23:14:14
6.0のソースコード解読はムズい。
コメントが少なすぎてわけわからんよ

461:デフォルトの名無しさん
05/03/01 09:33:44
Non-blocking I/O

New I/O

New I/Oのパッケージ名が
java.nio
なら
Non-blocking I/O

java.nbio
になる?

462:デフォルトの名無しさん
05/03/01 21:00:49
Non-blocking I/OはNew I/Oの一機能にすぎんぞ。
だからjava.nio.channel.SocketChannelでサポートされてる。

463:デフォルトの名無しさん
05/03/04 17:47:39
URLリンク(bugs.sun.com)
上記のは Evaluation に書いてあるんだけど、
ディスクの空きスペースを取得するAPIはMustangに追加されるみたい。

464:デフォルトの名無しさん
05/03/05 12:01:05
DirectByteBufferってJNI側で確保したメモリ領域をJavaから使えるようにするために用意したとしか思えん

465:デフォルトの名無しさん
05/03/09 01:45:35
ファイラー書いてるんで、お願いだから属性の取得、設定を追加して欲しい・・・

466:デフォルトの名無しさん
05/03/09 01:46:37
ごめん、ファイルの属性ね。

467:デフォルトの名無しさん
05/03/09 13:03:31
>>465
jconfig使えってのが定番の答えだねぇ。

JDICとかに要望出してみれば?

468:465
05/03/11 00:59:24
JConfigはフリーじゃないのが痛いけど、品質が確かなら
採用する価値ありそうだね。
JDICにも要望出してみるよ。
ありがとう。

469:デフォルトの名無しさん
05/03/14 04:40:57
そういやJDICってMustangに入るって噂あったけど入らないことに決まったの?

P.S. そろそろ Dolphine のスレたたないのかな?

470:デフォルトの名無しさん
05/03/23 23:13:17
>>469
入らないってのはどっから出てきた話?

471:469
05/03/25 04:56:37
お、生きてた。このスレ。
>>470
いや、2月にMustangの仕様がJSRに上がったけど
URLリンク(jcp.org)
英語を読む体力と根性がなくて・・・

472:デフォルトの名無しさん
05/03/25 10:17:39
>>471
JDIC自体がJSRに入ってないプロジェクトだったような。

473:デフォルトの名無しさん
05/04/03 23:55:46
1.6 てどう変わったの?

474:デフォルトの名無しさん
05/04/04 01:35:20
過去形ですかっΣΣ(゚д゚lll)

475:デフォルトの名無しさん
05/04/04 01:52:58
>>473
今のクラスキャッシュ共有を推し進めて
VMインスタンスの共有が行われるとか聞いた気がする。
System.exit() 問題にどう対応してるか見もの。

476:デフォルトの名無しさん
05/04/04 05:26:06
単純にOSのようになるだけじゃね?


477:デフォルトの名無しさん
05/04/04 05:32:17
>>475
それって、Sunの実装の話ではなくて、VM仕様の話として決まることなのかな?

478:デフォルトの名無しさん
05/04/04 12:11:41
これって下位互換どーなのよ?
最近、虎でたばっかなのに。

479:デフォルトの名無しさん
05/04/04 13:43:40
>>477
実装の話でしょ?
仕様でどうやって定義するんだ?

480:デフォルトの名無しさん
05/04/04 15:32:38
>>479
クラスローダーの仕様が変わるとかさ。
1.6(6.0)でどうかわるかっていう話が、仕様の話か実装も含めた話か、確認したかっただけ。

481:デフォルトの名無しさん
05/04/06 15:05:32
>>480
VM仕様はちゃんと精読しとらんけど、一部かわるかも。

どちらかと言うと今まで厳密に決まっていたものが
「実装依存」とか「未定義」に格下げされる方向で
仕様が書き換わる事があるのでは、と予測。

482:デフォルトの名無しさん
05/04/10 20:22:26
クライアントに本気で侵攻するなら、
いい加減SWingを諦めてSWTを標準に…。

483:デフォルトの名無しさん
05/04/10 20:27:16
Javaはもうインターフェイスだけにして後はすべてJNIで実装しろ

484:デフォルトの名無しさん
05/04/10 20:40:35
>>482
SWTが諦められてしまいましたが。

485:デフォルトの名無しさん
05/04/11 02:05:29
>>483
なんでわざわざ遅くなるやり方にするんだ?

486:デフォルトの名無しさん
05/04/13 01:09:13
>>482
eclipseを追っかけてたらそんなことはいえないだろ・・・
NetBeanの方がいつのまにか軽くなってるし
>>481
System.exit() がdeprecatedになって別のアプリ終了手段が用意されるに1票。
もしくはdeprecatedがなくとも、exit()はパーミションを持ったクラス(システムクラス)だけが
実行できるようになるのかなと予想。

487:デフォルトの名無しさん
05/04/13 01:24:09
>eclipseを追っかけてたらそんなことはいえないだろ・・・
>NetBeanの方がいつのまにか軽くなってるし
まじ?

488:デフォルトの名無しさん
05/04/13 01:46:53
Netbeansはたしかに軽いよ。

489:デフォルトの名無しさん
05/04/13 10:34:37
>>487
ま、ツールもなく資料もなく経験者もいないというデメリットに目をつぶって採用するメリットはまったくなくなった。

490:デフォルトの名無しさん
05/04/13 14:20:46
MustangはGroovyのためのプラットフォームになります。間違いない。

491:デフォルトの名無しさん
05/04/13 15:28:34
Groovyはやめて欲しい。。

492:デフォルトの名無しさん
05/04/13 16:39:53
オレも。
Groovy早めて欲しい。

493:デフォルトの名無しさん
05/04/13 18:32:32
Groovy…… 仕様固まったらやってみよう。
BSF対応してんだっけ?

494:デフォルトの名無しさん
05/04/13 23:01:47
Netbeansのアプリケーションサーバとの連携機能は神懸かり的にすばらしいと
思うけどなあ。

HTTPモニタがいいね。あとprofilerとかね。NetbeansだけでEJB作成(ウィザードで
選択してったら、リモートインターフェースとか配備記述子とか全部作ってくれる)や
サーブレット作成(New Servletを選んで必要項目を入力したら、クラスファイルの
ひな形を作った上でweb.xmlにサーブレット定義を挿入する)とかがデフォルトで
サポートされているところも結構いいと思う。

まあ仕事ではEclipseだが....

495:デフォルトの名無しさん
05/04/13 23:21:38
>>494
4.1はまだ正式版でてないよね?
EclipseもいいものだけどEclipseしか使ったこと無くてNetBeansけなすやつら多すぎ

あとはJBuilderのような親切な画面がほしい
そのへんはEclipseもNetBeansもまだまだ


496:デフォルトの名無しさん
05/04/14 02:59:44
Eclipseは、まだまだというか、いつまでたっても無理だろ。
JBuilderは結構な金取るわけだから、親切な画面くらいはないとね。
NetBeansはSunも本腰入れ始めたし、これから期待だ。

497:デフォルトの名無しさん
05/04/14 07:38:36
>>491-492はスルーかい

498:デフォルトの名無しさん
05/04/14 11:58:13
突っ込んだ方がいい?

499:デフォルトの名無しさん
05/04/14 13:21:39
突っ込んでみよう。
Groovy、「未完成」「コマンド名が長い」以外にマズーな部分て何?

500:デフォルトの名無しさん
05/04/14 13:27:05
497が突っ込んで欲しいのは、そういうまじめなところじゃないと思われ。

501:デフォルトの名無しさん
05/04/22 12:53:51
URLリンク(java.sun.com)

Improve Windows Look and Feel
 Use Microsoft's API for rendering portions of components.
 Make sure each of the components look and behave correctly.
 Ensure Swing's Windows look and feel looks good on Longhorn.

JTable sorting, filtering and highlighting

More/better graphics hardware acceleration on Windows

Improved text quality and capabilities

Japanese calendar support

Pop-up splash screen at beginning of Java startup

API to add a Java application to a system's app-launching panel/toolbar

Deployment Helper Browser Controls on Windows

このあたりが注目ポイントかな。

JWS の話が結構盛り上がってるね。
アプリケーションを exe にするときは、これが便利そう↓

URLリンク(www.paw.hi-ho.ne.jp)

502:デフォルトの名無しさん
05/04/22 17:03:49
> Pop-up splash screen at beginning of Java startup
> API to add a Java application to a system's app-launching panel/toolbar
この辺がJDICの成果物かな?

503:デフォルトの名無しさん
05/04/24 20:32:19
JWSなら、CUIの起動にも使えるようにして欲しい。
サーバ側も保守が楽になるから。

504:デフォルトの名無しさん
05/04/25 00:02:32
「分離」機能って、.NETのアプリケーションドメインのこと?

505:デフォルトの名無しさん
05/04/25 19:26:11
>>468
JDICに ファイル属性にアクセスするAPIの追加が提案されてる。
URLリンク(www.javadesktop.org)

あとは、ファイルシステムのイベントも取れるように考えてるらしい。
WindowsはそーゆーAPIネイティブで持ってるけど、
posixってそーゆーAPI持ってたっけか?

506:デフォルトの名無しさん
05/04/28 16:47:36
あまり知らない者の単純な疑問だけど、Javaって将来性あるの?
バージョンアップするたびにJVMはますます重くなるし、いまどき、
アプレットなんてJVMが起動するだけで半分くらいのPCが固まってしまうから、
気の利いたホームページはみんなFLASH使ってるし。
サーバー上では、スピードからいったら、Perlにまるっきし叶わないし、
別にC++で書いてもいいわけだし、ポータビリティーなんて大騒ぎしていた
けど、JVMの走るプラットフォームには、大抵Linuxが走るし、
何がいいのかわからない。

おまけに、Sunが1人で管理しようという姿勢が気に食わない。オープン
ソースにしたら、もっと改善されていくと思うのに・・・

507:デフォルトの名無しさん
05/04/28 17:43:31
>>506
無知蒙昧とはお前のことだー

508:デフォルトの名無しさん
05/04/28 17:56:39
>>507
構って君の相手をすんじゃねー

509:デフォルトの名無しさん
05/04/28 18:26:03
Appletそれ自体にはまだまだ使い道があると思うんだけど、WinXP SP2を
除けば大概のWindowsマシン上ではMS製JavaVMが動いてる。
こいつが困りもんなんだよな。
Applet側の要求に従って、利用するVMを動的に切り替えられるといいん
だけどな。

て言うか、ローカルディスクの残り容量を取得するAPIの追加マダー?

510:デフォルトの名無しさん
05/04/28 20:42:28
6.0はデスクトップに狙いが定まっているよな感じだね

511:デフォルトの名無しさん
05/04/28 20:59:26
>>506
学生?

512:デフォルトの名無しさん
05/04/28 21:07:40
あまりにも見事な釣りなのでレスするのもためらってしまう>>506

>サーバー上では、スピードからいったら、Perlにまるっきし叶わないし、

このへんが秀逸ですな


513:デフォルトの名無しさん
05/04/28 21:12:33
大槻ケンヂがいるな

514:デフォルトの名無しさん
05/04/28 21:58:14
> 別にC++で書いてもいいわけだし

アセンブリで書いてもいいよ。

515:デフォルトの名無しさん
05/04/28 22:45:44
いや、真のプログラマならマシン命令を二進数で直打ちだろう。

516:デフォルトの名無しさん
05/04/28 23:31:44
>>513
気付いた人がいたーよ

517:真のプログラマ
05/04/29 05:45:37
>>515
俺のPCはキーボードなんて無いぞ。
2進法直打ち用のトグルスイッチが横一列に64個ならんどる。
これで64ビットプログラミングもチョチョイのチョイだ。
Javaなんてのは鼻垂らしの道具だな。

518:デフォルトの名無しさん
05/04/29 12:39:32
64個もスイッチがあれば、アルファベットの入力に支障はないが。

519:デフォルトの名無しさん
05/04/30 04:49:23
>>516
詳しく

520:デフォルトの名無しさん
05/04/30 13:52:01
>>519
お前は無知だ。
無知だ、無知だ、無知だ。
無知蒙昧とはお前のことだ。

521:デフォルトの名無しさん
05/05/03 02:02:08
>>509
そういや、俺のよく行くチャットサイトは、MSJavaじゃないと動かない。

>>520
あのー、大丈夫ですか?

522:デフォルトの名無しさん
05/05/03 02:04:19
バージョンアップ早杉。

523:デフォルトの名無しさん
05/05/03 02:45:53
むしろ遅すぎのような

524:デフォルトの名無しさん
05/05/03 04:33:04
>>521
流れ嫁

525:デフォルトの名無しさん
05/05/03 08:39:41
>>522
FORTRANに比べれば、早いね。


526:デフォルトの名無しさん
05/05/03 18:02:04
言語仕様だけじゃなくVMというものがある以上
OSのバージョンアップみたいなものだからな

時代に合わせて最適化等していくわけだし仕方あるまい


527:469
05/05/03 18:03:18
URLリンク(weblogs.java.net)

自レスだけど、MustangとJDICの絡みのドキュメソト見つけたから貼っとく。

>>506
URLリンク(shootout.alioth.debian.org)
なんか、JavaってPerlよりスコアいいらしいよ。
# ああ、スレ賑やかしの為だけにレスってしまたorz

528:デフォルトの名無しさん
05/05/03 18:34:19
C/C++>>Java>>Tcl>>Perl>>Python>>>>>>>Ruby


Javaの次にTclがハイスコアwwwワロス
俺Tcl大好きwww超ウレシイww

529:デフォルトの名無しさん
05/05/03 18:48:18
>>527
厨に燃料投下するのは止めてホスィ

530:デフォルトの名無しさん
05/05/06 10:13:54
>>506
絶対悪い口言われないからPHPにしときな

531:デフォルトの名無しさん
05/05/06 10:48:53
とりあえず日本語の練習してこい、と。

532:デフォルトの名無しさん
05/05/06 11:28:10
おまけに遅レスだし

533:デフォルトの名無しさん
05/05/06 11:37:22
>>530
今、気の利いたホームページを作ってるのでFLASH使ってるんですが、PHPにするにはどうしたらいいですか?

534:デフォルトの名無しさん
05/05/06 11:54:49
>>528-533(>>527の下半分も)
Mustangの話題じゃないなら別のスレでやれ。

535:527
05/05/08 09:00:09
>>534
はーい。(でも、別にわざわざする気は無いけど)
で、>>534 は何かMustangの話題提供してくれへんのかなー?

URLリンク(weblogs.java.net)
VRAMの利用と、専用チップに処理を振る並行処理もJava2Dに入ってくるらしい。
これって、ほんとにデスクトップアプリケーションで実用ソフト増えそうだね。
でも、個人的にはデスクトップで実用的に使うには
プロセス名が「javaw.exe」以外で見えるようになってくれるのが一番欲しい機能。
windowsならexewrapとか使えばなんとかなるけど、unix系だと全部javaだから引数見ないとわかんないのよねぇ。
windowsでファイアウォールルール書くときも困るし。
ネイティブコマンドラッパの作成標準ツールも欲しい、と。

536:デフォルトの名無しさん
05/05/08 09:21:58
まとめサイトまだ?

537:デフォルトの名無しさん
05/05/08 10:39:34
> プロセス名が「javaw.exe」以外で見えるようになってくれるのが一番欲しい機能。
自分でコード書いて、Mustangに寄贈してくれ。

538:デフォルトの名無しさん
05/05/08 11:26:30
>>527
>>501-502 で既出の内容、と。

539:デフォルトの名無しさん
05/05/08 11:27:44
>>535
ほれ。
URLリンク(weblogs.java.net)
JWSのセキュリティ警告のダイアログを刷新するんだってさ。

あと、話題捏造しなくて良いから。

540:デフォルトの名無しさん
05/05/09 18:14:12
これって Mustang には入らないんだっけ?
URLリンク(jdic.dev.java.net)
org.jdesktop.jdic.fileutil.FileUtil のインターフェイス(仮)だそうで。
getFreeSpace の戻り値が BigInteger になってるねぇ……
long で足りなくなる事って当分無いと思うんだけど。

あと、Solaris と Mac OS X での協力募集中だって。
URLリンク(www.javadesktop.org)

541:デフォルトの名無しさん
05/05/11 04:06:27
>>535
argv[0]にクラス名でも放り込んでexecするよーなwrapperがあればとりあえず何とか。>UNIX系の場合


542:デフォルトの名無しさん
05/05/14 00:14:26
シンボリックリンクで何とかならんのかw >> プロセス名

543:デフォルトの名無しさん
05/05/17 05:42:36
とうとう、SnapshotでJudeが動かなくなっちまった。
しかたねえ、5.0で動かすか。

544:デフォルトの名無しさん
05/06/07 05:34:13
Mustang の b39のリリース差分のドキュメント見てたら
>Provide a writer plug-in for the GIF file format
と。ようやくGIF対応らしい。

545:デフォルトの名無しさん
05/06/19 03:30:55
もうPNGでいいよ…

546:デフォルトの名無しさん
05/06/19 20:44:30
いちおう貼ってみるテスト
URLリンク(java.sun.com)

547:デフォルトの名無しさん
05/06/20 00:29:02
あの、ネットワークには強いっていうか、Javaは向いてると
思うんですが、


HTML3.2しか対応してないってのはどういうことですか???
J2SE1.6では対応するんでしょうか?

548:デフォルトの名無しさん
05/06/20 00:44:39
JavaというかSwingの話か
ブラウザ開発はそれだけでもかなりの労力がかかるからねぇ
ブラウザを起動して南下させるのが無難

でも、Swingはコンポーネントの描画にHTMLつかえるのらくちんだよ
ラベルとかも2行に表示したかったら<br>とかつかえるし

549:デフォルトの名無しさん
05/06/20 05:45:40
>>547
ちなみに、HTML3.2しか対応して無いと不都合な事って具体的に何?

あと、JDIC で IE やら Mozilla やらのネイテイブのブラウザコンポーネントを
使えるように頑張ってるからそっちを使えば?

550:デフォルトの名無しさん
05/06/20 12:33:13
>>505
亀レスだが、POSIX.1b real time signalに、
I/O eventsをsignalで知らせる仕様がある。
fcntl(2)のF_SETSIGの機構と同じ。

むしろファイル属性の方が、
OSによって全く違うフレームワーク、スキーマなので問題が多いと思う。
例えばファイルタイプやアクセスコントロール。

551:デフォルトの名無しさん
05/06/27 21:19:14
あげまして

552:デフォルトの名無しさん
05/06/27 23:00:12
さてそろそろ、今年のJavaOne基調講演が始まるわけだが。
これまで参加したヒトはいます?

553:デフォルトの名無しさん
05/06/27 23:51:52
参加費用が高すぎてムリポ

学生にはつらい額

554:デフォルトの名無しさん
05/06/28 01:07:19
費用と英語の高い壁が...orz
今年もさくらばさんのJavaOne Reportsに期待

555:デフォルトの名無しさん
05/08/11 13:48:52
おい、JDK6.0最新開発バージョンで、Genricsの実行速度が向上しているぞ。

本来、Genricsを用いたコードでは、キャスト可能であるかをチェックするコードを、
Hostspotコンパイラが除去できるはずなのだが、JDK1.5では不十分であったように思う。

この試したバージョンでは、直接1つの型専用に書いた場合と、Genrics汎用クラスに型指定をした場合と
実行スピードが同じになっているぞ。

556:デフォルトの名無しさん
05/08/13 15:11:11
そもそも、キャストってどれくらいのオーバーヘッドになるのだろうかという素朴な疑問。

557:デフォルトの名無しさん
05/08/13 16:25:53
ダウンキャストがオーバヘッドに
なることは間違いないだろ。
Genericsを使えばあらかじめクラスが定められているんだし。
ダウンキャストはまずクラスを検索するだろ。
サブクラスが複数有ればそれだけ検索に時間がかかる。

すまんがよくしらんので適当に言ってみた。

EclipseのByteCode OutLineプラグインを
使えば何かわかるかもしれぬ



次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4977日前に更新/228 KB
担当:undef