[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 01/02 08:12 / Filesize : 246 KB / Number-of Response : 963
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【初心者】Java質問・相談スレッド113【大歓迎】



1 名前:デフォルトの名無しさん [2008/03/01(土) 18:16:51 ]
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。pc10.2ch.net/hp/

過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
www.wikiroom.com/java/
これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、
wikiからのリンクをおたどりください。

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」

前スレッド
【初心者】Java質問・相談スレッド112【大歓迎】
pc11.2ch.net/test/read.cgi/tech/1202467704/

/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */
また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝のう存じます。

次スレは>>980あたりで。

386 名前:デフォルトの名無しさん [2008/03/11(火) 17:59:24 ]
jmockのコードでみたんですが
context.checking(new Expectations() {{
 ごにょごにょ
}});
↑の2重波括弧ってどういう意味ですか?

387 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 18:03:38 ]
>>386
インスタンスイニシャライザ

388 名前:386 mailto:sage [2008/03/11(火) 18:20:03 ]
>>387
ありがとうございます。ぐぐってみます。

389 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 19:01:16 ]
コンストラクタ書けないからね
でも書き方は悪いわ
context.checking(new Expectations() {
  {
 // 初期化処理
  }
});
とでも書けば解りやすいのに

390 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 19:18:25 ]
結構良く見かける書き方だけどなー

391 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 20:59:23 ]
staticイニシャライザはよく見るけどインスタンスイニシャライザって内部クラスでしか見ないんだけど。

392 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 21:30:57 ]
Vector.insertElementAt
は、Vectorの要素数が多いほど遅くなるのでしょうか?

実験してみたところ
要素数が増えるほど一回のinsertにかかる時間が増えているようなのですが...

Vectorの初期化のときに、 new Vector(1000000,1000000) などやっても少しぐらいしか改善しません。

insertElementAtで挿入する番号は先頭から終端までほぼ平均的に選ばれるようなプログラムです。

この
insert にかかる時間を増加させない方法はないでしょうか?



393 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 21:42:52 ]
Vector(とArrayList)は中に配列持ってるだけだから、
途中に挿入すると後ろの要素を全部1つずつずらす必要がある。
これはコンストラクタで大きなキャパを指定しても同じこと。

LinkedListなら要素を数珠繋ぎで持っているため、途中に挿入する場合も
数珠繋ぎの付け替えだけで出来る。しかし、挿入のたびに挿入位置を毎回
先頭からたどる必要がある。一応試してみたらどうだろうか。

Vectorは古いっちゃ古いし。

番号が疎なら整数をキーにしたMapを使うほうがいいかもしれない。


394 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 21:44:32 ]
>>392
> 要素数が増えるほど一回のinsertにかかる時間が増えているようなのですが...
insert する要素以降を全部一個ずらしてくから
要素数が増えるほど時間がかかるのは当然。

LinkedList#listIterator(int) 使って要素追加してくとか、
ArrayList#addAll(int, Collection) で一気に追加するとか、
いっその事 Map<Integer, E> してみるとか。



395 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 21:55:52 ]
そもそも1,000,000レコードをオンメモリで扱うのもどうかと思うが・・・

396 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 23:41:15 ]
>>395
1レコード1KBでも1GBじゃん。32bitのメモリ空間埋めるのに、
1万円でおつりが出る時代なんだから、気にしないと言うのも
それはそれでアリかとw

397 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 23:57:28 ]
容量の問題じゃなく速度の話だとw

398 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 00:50:48 ]
それもそうだが、大量データの処理は専用のソフトウェアに任せろという意味だろ
Oracleのオンメモリストレージ使って100万件オンメモリとかならばOKな時代だがJavaのヒープでそれをやるってのはアホ

399 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 01:02:31 ]
ヒープ領域使い果たしてJVMがクラッシュしたら速度とか言ってる場合じゃないしなw
5万ぐらいなら余裕だが100万レコードともなるとまず逝きますw

400 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 08:36:07 ]
>>384
C言語は、javaに比べれば投げっぱなし感が強いんじゃない?

401 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 12:23:09 ]
>>400
Rubyとかを勉強すると〜なら分かるんだけどな。
なんでC言語を持ち出すのかが全く分からない。

402 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 12:28:36 ]
それ以前に投げっぱなしという表現が意味不明

403 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 12:40:23 ]
Rubyは麻薬だな。
でも遅すぎて死ぬ。

404 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 15:36:21 ]
ここってJava3Dの話もしていい?



405 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 17:18:46 ]
スレタイが初質だから初質っぽいことならいいんだろうけどJava3D使ってる人居るの?
俺はJOGL派なんだけど。

406 名前:404 mailto:sage [2008/03/12(水) 18:16:38 ]
今ちょうど両方つまみぐいしてる所で、Java3Dメインにしようかと検討中。
JOGLの頂点配列並な性能はあるし上位なAPIあるから楽かなと。

質問は質問文まとめてる内に自己解決した、ごめん。

407 名前:デフォルトの名無しさん [2008/03/13(木) 01:35:19 ]
  |::   \おい、ゴルァ 出て来い!!        ドッカン  ゴガギーン
 :||::      ̄ ̄ ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ _m ドッカン      ☆
 :||::   ___     ======) ))_____  /        / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 :||  |      |      | ̄.ミ∧_∧ | | ────┐||::    ∧_∧ < おらっ!>>1出てこい!!
 :||  |ぁゎゎ. |      |_..(   ) | | .___ │||::   (´Д` )  \___________
 :||  |Д`);  |      |_「 ⌒ ̄  ,|.. |_...   ..||||::  / 「    \
 :||  |⊂ノ;   |      |_|    ,/  ̄ .  ̄ ̄ ̄ │||::  | |    /\ \
 :||:   ̄ ̄ ̄         ̄|    .| :||│     ;,   │||; へ//|  |  | . |
 :||::   :;  ; ,,         :|    :.| ||│       (\/,.へ \|  |  (r )
 :||::   :;  冫、. .      |   .i  .|:||◎ニニニニ\/  \    |   ̄
 :||.:,,'';      ` ..  . ::  . |  ∧. |:||│::::/    │||::.:.   .Y ./
 :||:;;;:         :      |  | | |.||│ 冫、 ;;;,,│||:;;;.   | .|
 :||:;;;:             / /  / /::||│ `  .,;;;,,.│||:;;;.   | .|
 :||;::: #   ..:        ./ / ./ ./ ||│|三三三|. │||;;:..::   | .|
 :||;:::     #. ..:  :::::: (_) .(_).ミ||│        │||;;;k、,,,|,(_)
   ̄ ̄ ̄ ̄ ̄: ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄     
:::;三三;;;;;三三:::;;;;;;; :::::;;;;;::;;;;;;;;;;::::;; :::::;;;;;:::::;;;;;;;;;;::::;; :::::;;;;;:::;;;;;;;;;;::::;;;;;::三三三


408 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 10:12:53 ]
Derbyを組み込みモードで使ってるんだけど、
動作中にJavaの外からDBのテーブルの状態を調べる方法ってないの?

409 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 13:11:37 ]
VC++でDirectXつかって高度なお絵かきができますが、
Javaでも出来ますか?

たとえばコサックスみたいなやたら人がでてくる戦国シミュレーションゲーム作れます?

410 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 13:30:38 ]
>409
やろうと思えば出来るんじゃね?

DirectXのパフォーマンスと比べれば程遠いモノが出来るが。

411 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 13:41:38 ]
JMonkeyEngineってのがある

412 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 14:42:43 ]
クラスの停止について質問です。

今ゲームを作っていて、オープニング画面とゲーム画面の2つをつくりました。
まずオープニングをJFrameに表示、その後キーボード入力でオープニング画面を消してから
ゲーム画面を表示するという構想で進めてます。

そこでオープニング画面のクラスを停止させたいのですが、やり方がわかりませんでした。
そもそも一度実行したクラスを停止させること自体無理なのでしょうか?


413 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 14:44:28 ]
クラスを停止?何言ってるんだ

414 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 14:47:12 ]
クラスの停止とか、色々と勘違いしていると思うが・・・

後で再描画するならばsetVisible(false)で非表示にする
二度と表示しないならばdispose() で破棄する




415 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 14:51:44 ]
JPanelを2つ作って、片方を表示させた後、同じ場所にもう一方のJPanelをすり替えて表示させたいです。
今表示しているJPanelを消す=JPanelを継承しているクラスを停止させるという表現しかできませんでした。


416 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 14:53:14 ]
JFrame の GUI に今あるアプレットが使えると思ってはめ込んでみたんだけど
どうもドロップダウンしたメニューがアプレットの後ろに描画されてしまう様子。
アプレットは JRootPane を使っているはずだがこれが原因?

417 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 14:53:42 ]
>>414
ありがとうございます。
さっそくやってみます。

418 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 14:57:46 ]
それをJPanelの交換により行うってのはどうなんだろう。
JPanelを継承した、例えばExJPanelに画面の状態を表すオブジェクトを保持させてればいいんじゃね?

public final class ExJPanel extends JPanel {
  private Mode mode = new StartMode();
  public void paint(Graphics g) {
    mode.paint(g);
    mode = mode.nextMode();
  }
}

public interface Mode {
  void paint(Graphics g);
  Mode nextMode();
}

みたいな

419 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 15:16:03 ]
>>412
CardLayout使えば?

420 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 15:24:18 ]
>>418
JPanelの継承やってみます。ありがとうございます。

>>419
cardLayoutも調べているうちに見つけたのですが、脳みそが足らないばかりに
うまくいきませんでした。教えて下さったのにすいません。

421 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 15:29:18 ]
まあ、Swingは最初は覚えること多いから仕方ない.
ゲームのオープニング画面みたいな起動画面であれば、すぐに表示するべきだから、別JPanelでいいと思う。
画面を出している間に、ゲーム用のコンポーネントを裏側で作るってのは正しいしね。
俺は乗せ換えでいいと思うよ。

1.JFrameにメインのコンポーネントを乗せる。
2.メインコンポーネントに、タイトル画面コンポーネントを設定して描画
3. スタートボタンなどが押されたらメインフレームからタイトルコンポーネントを抜いて差し替える


422 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 15:48:44 ]
SplashScreen とは違うことをやりたいの?

423 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 15:49:48 ]
ゲームのオープニング画面はスプラッシュスクリーンとは別物だろ

424 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 15:57:55 ]
JPanel p = (JPanel)getContentPane();
JPanel p1, p2;
p.add(p1);
……
p.setVisible(false);
p.remove(p1);
p.add(p2);
p.setVisible(true);
俺なんか、全部交換。



425 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 16:11:55 ]
>>412ですが無事完成しました。
みなさんアドバイス本当にありがとうございました。

426 名前:416 mailto:sage [2008/03/13(木) 16:16:16 ]
JApplet の内容を JPanel に分離してそっちを JFrame と共有するようにしたら
メニューが裏に廻らなくなった。マジかよ。

427 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 16:37:00 ]
>>426
JApplet自身は重量コンポーネントだからじゃない?

428 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 17:06:37 ]
>422
Splashにボタンとかつけられたっけ?
自前でWindowを使って作るならばできるだろうけど

429 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 22:45:03 ]
あるクラスに含まれるクラスを再帰的に抽出する方法ってあるでしょうか?
擬似コードを書くと、

Target hoge=new Target();
Class[] classes;
classes=hoge.getClass().***.getAllClasses();

みたいな感じのことができるといいなあと思っているのですが。

430 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 23:09:23 ]
含まれるの意味が解らん
依存クラス数なら適当なMetrics測定ツール使えばいい

431 名前:429 mailto:sage [2008/03/13(木) 23:42:26 ]
>>430
別の言い方をすると、あるクラスがimportしているクラスを
再帰的に取得したいといことです。
(あるクラスがimportしているクラス、そのクラスの
 import対象のクラスがそれぞれimportしているクラス…というように、
 依存関係のクラスオブジェクトをすべて取得する)

いっそclassファイルをバイト列のイメージにして文字列から解析した方が早いでしょうか?

432 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 23:43:42 ]
importはincludeじゃないぞ……


433 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 23:54:37 ]
>>431
importと依存は関係ないぞ。
java.lang.Classにはそういう情報を得る手段はないから、バイトコード
を解析するしかないんじゃないかねー。


434 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 23:54:50 ]
MyClassLoaderで何とかならないかね



435 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 00:52:46 ]
ダイナミックプロキシを使ってインスタンス化したオブジェクトのクラス名になる $1 とか $2 とか、
この番号に何か名前って付いてますか?

436 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 01:08:15 ]
>431
で、解析して何がしたいんだ?

437 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 08:33:31 ]
アノテーションの引数にオブジェクトを指定できないのは何でですか?
@Foo(new Bar()) とかしたいんですけど。

438 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 09:05:14 ]
そういう仕様だから

439 名前:デフォルトの名無しさん [2008/03/14(金) 14:10:18 ]
fileクラスのrenameToで成功してもgetNameで名前が変わってないんですがどうしてでしょうか

440 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 14:15:02 ]
>>439
細かいけど、Fileな

javadocよく読めば分かると思うけど、Fileはimmutableだから

441 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 14:15:16 ]
>>439
java.io.File はファイルそのものを表現してるんじゃなくてファイル名を表現してるから、
renameTo でファイルそのものの名前が変わっても影響を受けない。

442 名前:デフォルトの名無しさん [2008/03/14(金) 14:26:29 ]
>>440
>>441

ありがとうございます。もっと調べてみます。


443 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 21:29:04 ]
>>410
>>411

そうか。マルチプラットフォームではああいうゲームは無理か。
ところで、JavaのアプリとCのアプリで共有メモリーってさすがに無理だよね。

データをプロセス間で共有する場合、どういうことするんですか?

444 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 21:35:10 ]
つDB



445 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 21:59:31 ]
つパイプ

446 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 22:01:16 ]
つソケット

447 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 22:06:56 ]
>>443
ファイルを介してファイルマッピングという形でなら、たぶんできるんじゃない?
使い物になるかどうかは微妙かもしれないけど

448 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 22:18:48 ]
>>443
lab.moyo.biz/wiki/index.php?Java%2F%E8%A8%AD%E8%A8%88%2F%E4%BB%96%E8%A8%80%E8%AA%9E%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%95%E3%82%A7%E3%83%BC%E3%82%B9

449 名前:デフォルトの名無しさん [2008/03/15(土) 09:11:19 ]
プロトコルハンドラって何に使うものなんですか?
よろしくお願いします。

450 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 09:39:52 ]
ttp://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rls=GGLD,GGLD:2005-13,GGLD:ja&q=%e3%83%97%e3%83%ad%e3%83%88%e3%82%b3%e3%83%ab%e3%83%8f%e3%83%b3%e3%83%89%e3%83%a9

451 名前:デフォルトの名無しさん [2008/03/15(土) 09:51:11 ]
JFileChooserで、
・ディレクトリ選択
・でも、普通のファイルも見れる
ようにしたいんですけどどうすればいいですかね?

ディレクトリ選択するようにすると、普通のファイルは見えなくなるし、
普通のファイル見えるようにするとディレクトリ選択できなくなるんですけど

452 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 09:59:35 ]
ディレクトリ選択でファイルを見せる意味が分からん

453 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 10:03:46 ]
ファイルが見えるとなんのディレクトリかよくわかるじゃん

454 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 10:07:05 ]
試して無いけど、approveSelectionメソッドをオーバーライドすればいけるんじゃね?
setFileSelectionModeでFILES_AND_DIRECTORIESを指定してさ。



455 名前:デフォルトの名無しさん [2008/03/15(土) 10:13:37 ]
此処で良いのか疑問ですが質問です。

OS:WindowsXP IE6/Firefox/2.0.0.12
Sun Java Standerd Edition 6
バージョン6 アップデート5 (ビルド1.6.0_06-b13)

先日アップデートした処、Javaの起動で「Javaコンソール」を表示しないと実行されません。
コンソールを非表示でJavaの実行は無理なのでしょうか?
どうか教えて下さい。

456 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 10:15:05 ]
うん、できた。

public class JDirectoryChooser extends JFileChooser {
 @Override public void approveSelection() {
  if (getSelectedFile().isFile()) return;
  super.approveSelection();
 }
 public static void main(String[] args) {
  JFileChooser c = new JDirectoryChooser();
  c.showOpenDialog(null);
 }
}

457 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 10:57:35 ]
u5ってu4のセキュリティフィックスだよね。
そろそろ入れようと思ってたけどなんか色々問題あるみたいだね。

458 名前:451 [2008/03/15(土) 11:39:37 ]
>>456
c.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
を一行追加してみても、だめでした。

さらに
public boolean accept(File f){return true;}
を追加してみてもだめでした。

459 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 11:44:41 ]
ちゃんと>>456の書き込み読んでる?

460 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 13:37:06 ]
内部クラスの中に内部クラスを作ったりって普通にしますか?
経験も積んでないのですが少し気持ちが悪い気がして質問しました。

461 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 13:59:26 ]
全くしない訳ではないが普通しない


462 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 14:00:19 ]
forの中にforを書いたりって普通にしますか?
のようなものかと
2段くらいはすることもあるけど、頻繁には使わない
3段以上は滅多にやらない
人にもよるかも

463 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 14:05:29 ]
必要があれば使うみたいな
x,y,z,tなんて4次元だしw

464 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 14:17:38 ]
そうでしたか。やはり熟練者の方の意見は勉強になります。
ありがとうございました。



465 名前:デフォルトの名無しさん [2008/03/15(土) 15:32:42 ]
import java.io.*;
class hoge{
public static void main(String args[]){
if(args.length <= 0){
System.out.println("specify the file name correctly");
System.exit(1);
}
try{
int i;
for(i = 0; i < args.length; i++){
BufferedReader br = new BufferedReader(new FileReader(args[i]));
String str;
while((str = br.readLine()) != null){
System.out.println(str);
}
}
br.close();
}
catch(IOException e){
System.out.println("input/output error");
}
}
}

コマンドライン引数からファイルを受け取って表示するプログラムですが、
br.close()の行で "シンボルを解決できない" というエラーが出ます。なぜエラーが出るのかわかりません。
br.close()を削除すれば実行できるのですが・・・。

466 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 15:38:49 ]
>>465
br.close(); の前の閉じ括弧 '}' が一個多い。
それで br がスコープから外れて「シンボルを解決できない」といわれてる。

467 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 15:39:21 ]
スコープを勉強しろ

468 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 15:51:21 ]
{}の組み合わせは力ずくでは良くないがな

469 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 15:54:06 ]
メモ帳でもつかって無い限りこんな間違いしないと思うんだけどな

470 名前:465 [2008/03/15(土) 16:20:48 ]
>465の質問者ですが
br.close()の 前の閉じ括弧を’ } ' を取り除いても エラーが出ます。
その閉じ括弧はfor文の閉じ括弧になっています。

閉じ括弧を除いた場合のエラーは
hoge.java:13: 'try' への 'catch' または 'finally' がありません。
hoge.java:27: 'catch' への 'try' がありません。
hoge.java:32: '}' がありません。
です。

471 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 16:22:21 ]
日本語も読めねーのかよw

472 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 16:47:25 ]
>>470
br.close(); の前の閉じ括弧を一つ取り除いた後、
br.close(); の後に一つ閉じ括弧つけろ。

473 名前:デフォルトの名無しさん [2008/03/15(土) 17:43:23 ]
環境 Windows xp, jdk 1.5
ポリシファイルで全部のファイルの読み込みを可能にしました。

swingアプレットを作ったのですが、
プロンプトからだと画像やボタンが表示できました。
しかしブラウザから起動するとボタン等は表示できますが
画像が表示できません。(読み込めていない様子)
どうしたらできるのでしょうか?
一応、ソースの怪しい所を貼り付けておきます。
import......
/*
<applet code="TimerTest2.class" width=500 height=250>
</applet>
*/
___javaソースの一部___
public class Test2 extends JApplet implements ActionListener{
  フィールドなので省略
public void init(){
icon0 = new ImageIcon("07.gif");

___起動させるhtmlファイル___
<html>
<head></head>
<body>
<p>
<APPLET code="Test2.class"width=500 height=250></APPLET>
</body>
</html>
_______________
htmlファイルは短いので全て載せました。


474 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 17:48:22 ]
>>473
HTMLに画像を読み込むコードが無いから。



475 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 17:54:21 ]
>>473
Javaコンソールからエラーの内容確認

476 名前:デフォルトの名無しさん [2008/03/15(土) 17:59:06 ]
自宅サーバ板のTomcatでwww鯖ってスレに質問したんですが、
なんか過疎ってるのでこちらに再掲します。

Debian etchでTomcat5.5使おうとしてるんですけど、

SEVERE: 設定記述子 test.xml を配備中のエラーです
org.apache.commons.logging.LogConfigurationException:
java.security.AccessControlException: access denied
(java.io.FilePermission /usr/share/tomcat5.5-webapps/test/WEB-INF/classes/logging.properties read)
(Caused by java.security.AccessControlException: access denied (java.io.FilePermission /usr/share/tomcat5.5-webapps/test/WEB-INF/classes/logging.properties read))

こんなエラーが出ます。
サンプルアプリは動いていて、自分で作ったやつがエラーになります。
パーミッションはサンプルと同じでrootのみに与えています。

そもそも、logging.propertiesというファイルはサンプルアプリになかったのですが、
classesに777でlogging.propertiesを作っても同じエラーが出ます。

どなたか解決策を教えてもらえないでしょうか?

477 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 18:12:29 ]
>>473
たぶんこうだ
new ImageIcon(getClass().getResource("07.gif"))

478 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 18:34:02 ]
>>476
その上位ディレクトリに x パーミッション付いてるのかよ。

# su tomcatuser -c "cd /usr/share/tomcat5.5-webapps/test/WEB-INF/classes"

479 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 18:44:13 ]
>>473
そもそも画像はどこ?

480 名前:デフォルトの名無しさん [2008/03/15(土) 18:53:59 ]
>>476
/var/cache/tomcat5.5/Catalina/localhost# lla /usr/share/tomcat5.5-webapps/test/WEB-INF/
合計 24
drwxr-xr-x 5 root root 4096 2008-03-15 17:43 .
drwxr-xr-x 3 root root 4096 2008-03-15 17:19 ..
drwxr-xr-x 2 root root 4096 2008-03-15 17:38 classes
drwxr-xr-x 2 root root 4096 2008-03-15 17:20 lib
drwxr-xr-x 3 root root 4096 2008-03-15 17:28 src
-rw-r--r-- 1 root root 637 2008-03-15 17:43 web.xml

となっています。

481 名前:465 [2008/03/15(土) 19:21:25 ]
465です。
解決しました。
ありがとう。

482 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 20:22:16 ]
>>476
policyファイルで弾かれてるんじゃない?Debian etchなら、
/etc/tomcat5.5/policy.d/の下に*.policyってファイルがあるから、
それ読んでほげほげしてみるといいかも。

483 名前:デフォルトの名無しさん [2008/03/15(土) 20:43:54 ]
476です。
>>477 さんのやり方で解決できました。
みなさん
親切にありがとうございました。


484 名前:デフォルトの名無しさん [2008/03/15(土) 21:14:50 ]
>>482
ありがとうございます。
04webappsの
grant codeBase "file:${catalina.home}/bin/tomcat-juli.jar"
の中に
permission java.io.FilePermission "<webアプリのpath>", "read";
を追加したところ、上記のエラーは消えました。



485 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 21:16:29 ]
04webappsじゃなくて04webapps.policyでした

486 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 00:58:16 ]
swingに関して質問させてください
JFrameのサイズを指定する際にまわりの枠を気にしないで済む様にInsetsを利用しています。
しかし、JMenuBarを追加すると、その分の幅はInsetsで考慮されていないようです。
JMenuBarの上下方向の幅を取得するにはどうすればよいのでしょうか?

あと、BufferStrategyを使いたいのですが、JPanelでは使えないんでしょうか?
よく、JavaのGUIの勉強をすると、JFrameの上にJPanelを張って、その上にさらに何かを張ってと階層状にするべきと見かけますが、BufferStrategyを使う場合はJFrame上にべた書きすべきでしょうか?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<246KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef