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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 01:35:28 ]
過去ログ、関連スレッド、よくある質問とその回答、
質問をする前に、貴方が見なければならないサイトについての情報は、
下の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質問・相談スレッド98【大歓迎】
pc11.2ch.net/test/read.cgi/tech/1171787388/

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

JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。pc10.2ch.net/hp/

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

644 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 13:28:38 ]
jarファイルからカレントディレクトリにある任意のJDBCドライバを読み込ませるようにしたいのですが、
MANIFESTのクラスパスには何と記述すればよいのでしょうか?
.や*.jarでは認識しませんでした。
直接名前指定 or jre/lib/extにドライバを格納するしかないのでしょうか?

645 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 13:39:51 ]
記述部さらしてみ

646 名前:644 mailto:sage [2007/03/21(水) 13:49:58 ]
Manifest-Version: 1.0
省略
Class-Path: *.jar xxxx.jar xxxx.jar

Manifest-Version: 1.0
省略
Class-Path: . xxxx.jar xxxx.jar

という感じです。記述の仕方に問題ありますか?

647 名前:ひょこたんだお(^ω^ ◆E9k1wjKgHI mailto:age [2007/03/21(水) 16:21:36 ]
ごめんなすm(^ω^#)m

static Class forName(String className)

の使い方がわかんなひ(;ω;)おっおっお
簡単なソースをいくつかキボンヌッ
(#^ω^)ノたのんだうお

648 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 16:43:35 ]
>>644
必要なものを明示的に指定するという観点から、
ワイルドカードは使えないんじゃないのかねぇ。

java.sun.com/javase/ja/6/docs/ja/technotes/guides/jar/jar.html#Main%20Attributes
使えるとは書いてない。使えないとも書いてない。


649 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 03:33:29 ]
>>647
ここの
ttp://blog.goo.ne.jp/akubi_2005/m/200601

Mainクラスがいっぱいの時
にソースがあった。

650 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 10:34:01 ]
独学で苦戦している超初心者です。
自分でもいろいろ調べてみたのですが、困り果てて皆さんのお力に頼ることになりました。
今、コマンドラインに数字を一行で 10,24,35,40 のような形で入力させてそれぞれの数字を表示させるものを作っているのですが、コンパイルをして実行までは出来るのですが、数字を入力したあとにエラーが出ます。
エラーメッセージをググってみたのですが、検索には引っかかるものの「これだ!」というものが見つからなかったのでココに質問させていただきました。
以下にコードの一部とエラーメッセージを記載します。
public static void main(String[] args) throws IOException {
int input[];

System.out.println("数列はカンマ区切りの文字列で入力してください。");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
String numbers[] = str.split(",");

int i=0;
input = new int[i];
while(i < numbers.length){
input[i] = Integer.parseInt(numbers[i]);
System.out.println(i + "つめは" + input[i]+ "です。");
i++;
}

}

以下エラーです。
java.lang.ArrayIndexOutOfBoundsException: 0
at Test.main(Test.java:28)
Exception in thread "main"
*ココでいう28というのがコードの28行目であれば
input[i] = Integer.parseInt(numbers[i]);が28行目にあたります。

どなたか、お助けください。

651 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 10:39:17 ]
> int i=0; 
> input = new int[i]; 
だれが見てもここだ

652 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 10:40:31 ]
>650
右辺の numbers[i] ではなく、恐らく input[i] から出ている例外かと。

int i=0;
input = new int[i];

この時点で input[] の要素数はゼロになっているが
それ以降 input[] の要素数を増やしていない以上 input[] の要素数はゼロのままだ。

input = new int[i];



input = new int[numbers.length];

にしてみたら?



653 名前:650 mailto:sage [2007/03/22(木) 11:07:57 ]
>>652
どうもありがとうございます!解決しました!
答えだけでなく、どこがどのように間違っているかまで答えていただいて
大変勉強になりました。


654 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 13:47:44 ]
これってどうよ?
ja.wikibooks.org/wiki/Java


655 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 14:13:36 ]
>>654
個人的には、「Javaをはじめよう」以下は要らないような気もする。

char が -32768〜32767になってたり、
「リファレンス型というのは、クラスのことです」とか、間違いもちらほらあるし。

文法とかは、JLS へのリンク貼って終わりで良いとか、
入門者用のコンパイル手順を示すんなら、テキストでやるより
flash movie とかでやった方が親切なんじゃないか、と思ったり思わなかったり。
wikibook に flash 置けるのか知らんけど。

656 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 15:35:54 ]
>>514
おやおや? Java家電時代の到来か?

将来は、Javaで家電制御を企んでいるのかねー? Jiniかねー?



657 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 17:43:49 ]
まずはおいしいご飯からお願いします

658 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 17:45:39 ]
すみませんが、質問です。

HttpServlet のソースコードは、どのソフトに含まれているのでしょうか?
たぶんTomcatにあるのだろうと思っていたのですが、うまく見つけられません。
利用中のTomcat は4.1です。


659 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 17:59:27 ]
質問です。
HTTP Get のクエリ文字列から、パラメータ名とその値の組み合わせの集合を取
得するには、どうしたらいいでしょう?


660 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 18:18:15 ]
>>658
classならcommon/lib/servlet-api.jarの中。ソースは入ってないよ。

661 名前:658 mailto:sage [2007/03/22(木) 18:37:21 ]
>>660
> classならcommon/lib/servlet-api.jarの中。ソースは入ってないよ。

ありがとうございます。ソースはどこで手に入るのでしょうか?
オープンソースですから、どこかで配布はしているはずなのですが。

実は>>659も私なのですが、以下の処理の参考にしたかったのです。
目的:URL文字列からクエリパラメータを手動で取り出す

URL文字列を与えられて、
String url = "www.youtube.com/watch?v=pd74BKx0x-w";
ここからクエリ文字列を取り出し、
String qstring = new URL(url).getQuery();
//qstring = "v=pd74BKx0x-w"

ここまではできるのですが、それをパラメータと値に分解する方法が分かりません。
正規表現などで愚直に分けるしかないのでしょうか?
何か既存のAPIがあるのではないかと思うのですが。


662 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 18:50:24 ]
>何か既存のAPIがあるのではないかと思うのですが。

request.getParameter( "v" )で一発だ。

ソースではなくAPIドキュメントを利用するのがJavaでは普通。
sdc.sun.co.jp/java/docs/j2ee/sdk_1.3/ja/techdocs/api/javax/servlet/ServletRequest.html
sdc.sun.co.jp/java/docs/j2ee/sdk_1.3/ja/techdocs/api/javax/servlet/http/HttpServletRequest.html



663 名前:658 mailto:sage [2007/03/22(木) 19:06:03 ]
>>662
ありがとうございます。
HttpServletRequestは与えられていなくて、ただURL文字列だけがあるのです。
だから「手動で」取り出す必要があります。
説明不足ですみません。

664 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 19:16:22 ]
>>663

ほいっwww.google.com/codesearch
?hl=ja&q=show:WeBMAMCdhTg:T67KRquB4ao:axPaDrtTH9s&sa=N
&ct=rd&cs_p=download.nextag.com/apache/
tomcat/tomcat-5/v5.5.17/src/apache-tomcat-5.5.17-src.tar.gz
&cs_f=apache-tomcat-5.5.17-src/container/catalina/src/share/
org/apache/catalina/core/ApplicationHttpRequest.java

このvoid parseParameters()あたりから辿ってけばいんじゃね?

665 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 19:17:47 ]
ソース tarballには入ってないの?

svnならsvn.apache.org/repos/asf/tomcat/tc6.0.x/trunk/
中は見てない。


666 名前:658 mailto:sage [2007/03/22(木) 20:20:55 ]
>>664
ありがとうございます。どうやら↓のparseParameters()のようです。
これはどのjarファイルにあるのかなあ。
どうも探し方が分かりません。

src.opensolaris.org/source/xref/sfw/usr/src/cmd/tomcat/
apache-tomcat-5.5.17-src/container/catalina/src/share/org/apache/
catalina/util/RequestUtil.java

>>665
> ソース tarballには入ってないの?
実装クラスは入っていますが、HttpServletRequest自体のソースは無いようです。


667 名前:デフォルトの名無しさん [2007/03/22(木) 20:26:32 ]
質問です。
server.xmlの<context>のreloadable属性が
falseかtrueかの情報を
クラスから取得する方法はありますか?

668 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 20:26:38 ]
javax.servlet.http.HttpServletRequestはinterfaceだから、
ソース見ても実装情報はないよ。


669 名前:658 mailto:sage [2007/03/22(木) 20:36:56 ]
>>668
> ソース見ても実装情報はないよ。
それはそうなのですが、ソースが無いと、Eclipseで追いづらいと思います。

なお、RequestUtil.class は catalina.jar に含まれていました。
publicクラスですが、一般ユーザが利用することが適切なのか、よく分かりません。

ところで、どのクラスがどのjarに含まれるのかを簡便に知るにはどうしたらい
いでしょう?

・1つ1つJarコマンドで表示
・拡張子をzipに変えて検索
・片端からEclipseのプロジェクトに組み込んでみる

これらよりもっといい方法はあるでしょうか?

670 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 20:45:49 ]
>>669
Eclipseで追うだけなら、jadclipseを入れておくとソースがないものは
jadで逆コンパイルしたものを表示してくれたりする。

jar探しは、コマンドラインに苦痛を感じないヒトなので、
jar tfで探すかなー。Eclipseに組み込むのはいい方法だと思います。



671 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 21:42:42 ]
String url = "foo.bar.com/hoge.cgi?a=b&x=y&foo=bar";
String[] params = url.substring(url.lastIndexOf('?')+1).split("[&=]");
これで{"a","b","x","y","foo","bar"}っていう配列ができる。
後は、配列の偶数と奇数で分けて適当に処理すればいけるだろ。

672 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 21:53:10 ]
>>671
フラグメントがあったら最後の要素が "bar#hoge" みたいにならんか?



673 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 22:06:09 ]
>>672
なるほど。じゃあこれでどだ。無理矢理1行。
String[] params = url.substring(url.lastIndexOf('?')+1, url.indexOf('#') > 0 ? url.indexOf('#') : url.length()).split("[&=]");

674 名前:658 mailto:sage [2007/03/22(木) 22:50:29 ]
>>670
ありがとうございます。参考になります。
できたら配布元のサイトでドキュメント化してくれていたら楽なのですが。

>>671-673
標準のAPIには存在しないらしいので、自分もそれなりに書いてみました。

String url = "www.youtube.com/watch?v=pd74BKx0x-w";
String q = new URL(url).getQuery();
Map<String, String> map = new HashMap<String, String>();
for (String pv : q.split("&")) {
    String[] p = pv.split("=");
    map.put(p[0], p[1]);
}


675 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 22:53:43 ]
a=&x=yみたいに値がないパラメタがあったらうまくいかない気がする。

676 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 22:55:13 ]
675は>>673ね。

>>674
たいていはそれでいいけど同じキーの値が複数あったらうまくいかないので注意。

677 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 22:58:46 ]
パラメータ間の区切りに最近は;も使うので、汎用性から言ったらこれも認識する
とよい。
>>675のケースを回避するために、まず &(および; )だけで区切り、そののち=で
分解するといいだろう。
>>676を考慮するならmapの値側をコレクションクラスにする必要がある。


678 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 23:26:33 ]
書式指定子について教えてください。
ある本で↓みたいなのがでてきたんですが、%が多くて何やってんのかよくわかりません。

System.out.printf(String.format("%%2d | %%%dd\n", n), r, x);

%dで10進数に変換。2は2桁の長さを表す。ということはわかったのですが、
引数に対して書式指定子がやたら多いような気が・・・
メソッドが入り子になってるからややこしいんでしょうか?
そもそもformat()の第2引数 n は何に変換されるんでしょう?


679 名前:658 mailto:sage [2007/03/22(木) 23:27:54 ]
>>675氏のケースに対応
String[] p = pv.split("=");

String[] p = pv.split("=", 2);

自分の用途には>>676氏のケースはなさそうなので、これで何とかなりそうです。
ありがとうございました。


680 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 23:35:52 ]
%%が%そのものになるというのは理解してる?

順番に書くと、
String format = String.format("%%2d | %%%dd¥n", n);
System.out.printf(format, r, x);

たとえばnが5だと最終的には System.printf("%2d | %5d¥n", r, x) を行う。

# 一つ指摘しておくと、フォーマット指定として改行を記述するには¥n
# ではなく%nを使うべき。


681 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 01:30:23 ]
すみません、XPathAPIを使って、以下のXMLから<media:thumbnail> のurl属性
を取得するには、どのようにXPathを記述したらいいでしょうか?

video.google.com/videofeed?fgvns=1&fai=1&docid=507732229697832036&hl=en
(以下、抜粋)
<rss>
<channel>
<item>
<media:group>
<media:thumbnail
  url="video.google.com/ThumbnailServer2?app=vss&contentid=
c5ed681df175c4b0&offsetms=5000&itag=w320&lang=en&sigh=8GjvM1prox25GC-jte15jydXiAA"
  width="320"
  height="214" />
</media:group>
</item>
</channel>
</rss>

以下のページなどを参考にしているのですが、具体的な記述が無くて困っています。
msugai.fc2web.com/java/XML/XPath.html


682 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 02:18:50 ]
java関係ないね。と言っても該当スレがここしか見当たらない。

ttp://pc11.2ch.net/test/read.cgi/tech/1133280488/l50





683 名前:681 mailto:sage [2007/03/23(金) 02:31:04 ]
>>682
すみません、XPathAPIに固有の問題もあるかと思い、こちらで質問しました。
例えば、.NETならこんなページがありますが、
www.atmarkit.co.jp/fdotnet/easyxml/easyxml05/easyxml05_03.html
この内容(addNameSpace)はJavaでは使えないようです。

684 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 02:39:18 ]
XmlNamespaceManager site:w3c.org
に該当するページが見つかりませんでした。

おや?


685 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 04:58:49 ]
>>681
>どのようにXPathを記述したらいいでしょうか?

こういう事聞くレベルなら仕様を理解してない。実装されたAPI以前の問題。て言うかW3Cの仕様に対してMSの実装出してくるなんて釣りにしか見えないんだが・・・。

>XMLから<media:thumbnail> のurl属性
を取得する
ロケーションパスの書き方は分かるのか?

>>684
.NETのクラス名がw3cのページでヒットするわけ無いだろ。煽るならもっと頭使え。
googleくらい使えるようになろうな

xpath site:www.w3.org/
    ~~~~~~~~~~~~~~~~~~~~~~~~

686 名前:681 mailto:sage [2007/03/23(金) 05:12:15 ]
すみません。
>>685
>
> こういう事聞くレベルなら仕様を理解してない。実装されたAPI以前の問題。
> て言うかW3Cの仕様に対してMSの実装出してくるなんて釣りにしか見えないん
> だが・・・。

おっしゃるとおり、よく理解しておりません。

> >XMLから<media:thumbnail> のurl属性
> を取得する
> ロケーションパスの書き方は分かるのか?

おそらく、
/rss/channel/item/media:group/media:thumbnail/@url
ではないかと思うのですが…。

687 名前:681 mailto:sage [2007/03/23(金) 05:18:48 ]
追記です。
よく分かっていないのは、名前空間の扱いです。
.NETの実装を見て、JavaのXPathApiにも、addNameSpace にあたる関数があるの
だろうと考えたのですが、それを見つけられなくて困っていました。


688 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 09:54:40 ]
>>685は、XmlNamespaceManagerなんぞw3c標準にないのに知るかよ!
という回答するつもりだった人からのピーデーの某氏へのイヤミです。


689 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 09:55:34 ]
×という回答するつもりだった人からの
○という、回答するつもりだった人からの

「、」いっこ抜けて意味が変わってるしorz



690 名前:デフォルトの名無しさん [2007/03/23(金) 12:06:23 ]
ログを解析するアプリケーションを作りたいのですが、SwingやAWTで
UI部分を作り、エンジン部分をC言語で作る事は出来るのでしょうか?

出来る場合、JAVA側(UI)とC側(エンジン)とのやりとりはどのような
感じになるのでしょうか?

C言語は少し経験ありますが、JAVAはまったくの初心者です。
よろしくお願いします。

691 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 12:11:49 ]
出来る。

やりとりはソケットを使う/JNIを使うなど。


692 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 12:15:33 ]
>>691
即レスありがとうございます
その単語でぐぐったら期待通りのAPIがHITしました!



693 名前:681 mailto:sage [2007/03/23(金) 12:54:47 ]
自己フォローです。

Java XPath API
www-06.ibm.com/jp/developerworks/java/060906/j_x-javaxpathapi.shtml
> しかし、pre という接頭辞を、www.example.com/books という URI
> にマップする必要があります。NamespaceContext インターフェースが
> JDK(Java software development kit) や JAXP にデフォルトで実装されてい
> ないのは多少ばかげた話ですが、実際にないのです。

この後、記事は「名前空間マッピングクラスを自作する」ことになります。ど
うなってるの?何か意見の対立と混乱があるように見えます。

ちょっと使おうと思っただけなのに。弱りました。

694 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 13:05:58 ]
PS3でFolding@homeが利用可能になりました!
タンパク質解析プロジェクトFolding@homeで病気で苦しむ人達を救えるかも。

PS3でFolding@homeしようぜ(Team 2ch)
ex22.2ch.net/test/read.cgi/ghard/1174030817/

チーム番号:162
チーム名:Team 2ch
fah-web.stanford.edu/cgi-bin/main.py?qtype=teampage&teamnum=162

☆PS3での参加方法
PS3からFolding@homeを起動し、チーム番号162に入力すればOK。
ユーザ名は何でも良いが、folding.stanford.edu/japanese/download.html
にて、名前が既に使われているかどうか確認する事を推奨。
参加の確認としては、「オプション(△)」→「関連サイト」→「チーム処理統計量」と開き、
「Team 2ch」(上記URLのページ)が表示されればちゃんと参加できている。
☆Folding@homeについて
folding.stanford.edu/japanese/

695 名前:デフォルトの名無しさん [2007/03/23(金) 14:02:20 ]
File#mkdirsが失敗した場合に
その原因を取得する方法ってありますか?

696 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 14:23:47 ]
>>695
無いよ。
SecurityManager が許可しない場合だけは例外もらうから分かるけど。

mkdir() する前に、作ろうとするディレクトリが既に存在しても失敗するし、
同名ファイルがあってディレクトリ作れなくても失敗するし、
ディレクトリの名前が不正な場合 名前が長すぎたり名前に使えない文字が含まれたり でも失敗するし、
ファイルシステム上の権限がなくてディレクトリを作れなくても失敗する。

697 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 14:28:48 ]
>>696
そうなんすか…orz
一応isDirectory()で存在しない時だけ作るようにはしてるんですが
何で失敗したのかわからないとどうしようもない…

698 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 20:47:55 ]
>>693
そもそもAPIは何使ってんだ?JAXP1.3以上?

名前空間のバインディングなんてアプリケーションによっては必要ないし
バインドするプレフィックスの数によってデータ構造なり検索アルゴリズムの
最適な実装が変わるから汎用な物は作れないから実装を用意するのは無駄。

バインダくらい自分で書け。愚痴しか書いてないじゃないか?

699 名前:デフォルトの名無しさん [2007/03/23(金) 23:10:02 ]
よろしくお願いします。完全に手詰まってしまいました。

環境-
マシンA(開発機):Windows XP Pro、IIS6、WebLogic8.1、JavaSDK1.4.13
マシンB(評価機):Windows Server 2003、IIS6

マシンAで開発、デバッグしてOKなものをマシンBに置き換えています。
それぞれにサーブレットクラス1と固定値が書いてあるfinal staticメンバがいるクラス2があります。
マシンAとマシンBではクラス2のfinal staticメンバは違う値が書いてあります。

マシンAでリコンパイルしたクラス1をマシンBに置き換えます。
その後WebLogicを再起動後、マシンBを動かしてみると
マシンBでクラス1が参照しているクラス2のfinal staticメンバ変数が
マシンAの値となり、エラーが出てしまいます。
クラス2は置き換えていないのに、エラーになってしまいます。

どこかに値がキャッシュされてるとしか思えない動きなのですが、
APサーバを再起動しているのにそういうことがありうるのか、まったくわかりません。



700 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 23:16:48 ]
キャッシュでハマることはまああるけどそのパターンならキャッシュ以前の話。
マシンA.クラス2をマシンBに"一度も"持っていったことがないはずなのに
マシンA.クラス2の値を参照しているなんておかしい。
なんらかの形でいっしょに持っていってしまったとしか思えない。

701 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 23:16:54 ]
最適化されてクラス1にその定数の値が埋め込まれちゃってんじゃないの?

702 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 23:22:43 ]
java.sun.com/docs/books/jls/third_edition/html/binaryComp.html#13.4.9

これじゃね?




703 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 01:13:54 ]
質問です。サーブレットとJAVAって違うの?

704 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 01:24:06 ]
>>703
質問です。ゴキブリと害虫って違うの?

705 名前:681 mailto:sage [2007/03/24(土) 01:59:52 ]
XPathについての自己フォローです。おそらく解決しました。

何が分からないのか自体をよく分からず調べていたのですが、まとめるとこう
なります。

・XPathの名前空間と接頭辞のバインディングの設定の、Javaでの標準的な方法
 は何か?
→完全には決まっていない。それを規定するNamespaceContextは、インター 
 フェースだけしかなくて、実装がない。

・なぜ決まっていないのか?
→単にまだ出来ていないだけ。JAXPは現在1.3だが、1.5までには何とか。

・じゃあ、どうしたらいいのか?
→自分で非標準の実装を作るか、privateな内部クラスで使い捨てにするか、ま
 たは有志の作ったライブラリを利用するか。

・こういう大事なことがXPath単体でできるようになっていないのはなぜか?
→XPathはもともとXSLTのためのもので、XSLT自体がXMLだから、XSLT内に名前
 空間宣言をそのまま書けば済んでしまう。

実はXPathを知ったの自体がつい一昨日で、うまく調べられず、ずいぶん無駄な
回り道をしてしまいました。結局、

norman.walsh.name/2006/03/28/jaxpNamespaceContext
www-06.ibm.com/jp/developerworks/java/060906/j_x-javaxpathapi.shtml
初見では分からなかったのですが、これらにほぼすべてが書かれていました。

解決に当たって、このスレのやり取りも非常に参考になりました。ありがとう
ございます。特に>>685, >>698さんには深く感謝します。


706 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 02:27:26 ]
質問者の見本みたいな人だ

707 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 02:33:26 ]
>>681以外の質問者のほとんどがクズに見えてきた

708 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 03:49:46 ]
お前ら冷静になって良く見てみろ。箇条書きにしてるだけで結局は

仕様が定める範囲と実装がサポートする範囲と自分で実装しなきゃいけない部分を理解してないし

そもそもどのコンテキストでXPathを使いたいのか一度も言ってないんだぞ?
XSL内でロケーションを表すのに使うのかプログラム中に直接叩きたいのかすら分からず仕舞だぞ?何を教えろと?

事後報告は当然の事だ。


#XPointerの事もたまにで良いので思い出してあげて下さい。

709 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 10:37:35 ]
できて当然のことでも褒めないと人は伸びない

710 名前:デフォルトの名無しさん [2007/03/24(土) 12:03:27 ]
>709ごめんなさい…

711 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 12:13:29 ]
               |/
          _., .,、._,r hh.、 y...u,_ 、 、.,.,
        .yl!).彳}゙.^゙冖^^^゙゙'⌒゙゙「{ .〕:!|ァ_ l.r.
       .rl!.「.゙.′            .゙.^゙「.|^|'!.,.ri,、
    _,.u:l 「″        _,..vv-─--v、、.,__゙ ´「 リ゙ .r
  .-i(┴^        ,.v‐ ′    i!、  厂^'ー、_ .'゙/
 .,l|         .,.‐'゙r  '=,  .|ト!  ..     /_ ┘ _,
.[.′      .,r(,,vv!冖h厂 _,、、、,_ ¨゙()   .゙゙il|リ冖ミ(ミ,.l|/レ'
.||     _,yr!^″    [.zli》ニ《)ミ|l;, |ノ冖ーu「.,zzzzy,{丁′
.!ミ   .yr(l「′      〔″    `.,i^   .〔.!!干「「)v)《フ
i|  __,/′.}     .    \,,,,,_,,,,,,vr″    .゙)z    ,メ゙'ly
|゙/|レr》!  }     .}..       /,v--r ,、u_:rフ'¬ー^″ ゙ミ
》゙|′ .ミ .|     .∨   ,、    {lzトrr┘ \从,,)     }:! .《
}}.,rー ミ,,ェ    ,     .'|フ      .,,zu厶  ̄     ゙'^ l!
゙|从  》″    | r          -:(工ェ」zミv_   n.    〔   
.》ト  .′    ∨       7vv=(干=─干ミl||l,_,z ″    》
.《l,_ .'|!                 .__     , . ゙̄..      〕
 《^¨′                 .゙冖'^^'''冖   v\    }
 [      、        .           〕   〔 .′ .」_ .ll′
 .|      | 」       ._}         .hノ   .:| ,.. .,.トト 〕
 .}     .^′      ゙《,_           .、,ノ ...厂、 .il
  }          _  .、 .゙゙'〜 .y,_      _,r;|¨ <、、‐ . ノ
  .{,         〔 」  ´ ‐ 「ilリiアアァァァ;lllllli(リ゙} ┌ 冫.. .ア
   \        ∨゙ . _ .- . ' .`゙厂¨厂゙厂'. .゙ 、' .゙. ヽ‐,r|
   .ノy           .´ 、 .: ' ..:  .、 ' ` ' _ . .冫 -.',y;|^


712 名前:コン [2007/03/24(土) 13:30:20 ]
jsp試したいのにトムキャットの設定がむずくてだめです。
エクリプスは動くし、しかしエクリプスでトムキャットはだめ、
どこかいいサイトあったら教えてください。





713 名前:デフォルトの名無しさん [2007/03/24(土) 14:25:14 ]
>712
オレかよ(:D)| ̄|_ =3=3

714 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 14:30:17 ]
NetBeans使えばバンドルされてるからそれ使えばいいと思う。
設定が難しいってのには?だが、まあやりたい事の主品はそこじゃないだろうしね

715 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 17:01:50 ]
マウスカーソル消す方法ご存知ないですか?
Cursorクラス見てもそれらしい設定がないです・・・:

716 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 17:53:52 ]
>>715
カーソルを消したいComponentでjava.awt.Component#setCursor(Cursor cursor)を使え。
cursor = Toolkit.getDefaultToolkit().createCustomCursor(new BufferedImage(1, 1, BufferedImage.TYPE_INT_ARGB), new Point(), "");
与えるImageについては別にこれでないといけないということはない。

Cursorクラスのドキュメントから全て辿れるぞ。もっとドキュメントの読み方を勉強汁。
Component#setCursorはクラス説明の関連項目から。
Toolkit#createCustomCursorはコンストラクタの説明から。

717 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 17:54:18 ]
>>715
java.awt.Toolkit#createCustomCursor(Image, Point, String); に透明な Image 渡す

718 名前:デフォルトの名無しさん [2007/03/24(土) 18:31:05 ]
初歩的な質問で恐縮ですが、

<head>内に<link rel="stylesheet" type="text/css" href="css/style.css">

と入れるとjavaが動いてくれません。
色々手は尽くしてみたのですが・・
原因はなんでしょうか?

よろしくお願いします。

<link rel="stylesheet" type="text/css" href="css/style.css">
↑の一行を外すと動作してくれます。


719 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 18:36:25 ]
>>718
style.cssの中でアプレットを無効化してない?

720 名前:718 [2007/03/24(土) 18:44:59 ]
>>719さん
早速のご返答ありがとうございます。
今確認してみましたが、無効となるような設定はしていないようです・・

721 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 18:58:38 ]
実は動いているけど見えないだけとか。
APPLET {
width: 0%;
}
こんなあからさまなのは無いと思うけど。
もう少しcssやhtmlの中身が分からないと何とも言えない。
linkタグやスタイルシートの有無でアプレットの動作が変わるなんて、どちらかというとweb製作板向きの話題かもしれんね。
少なくともその1行が無ければアプレット自身は動作しているわけだし。
もしくは、linkタグやcssの中身をアプレットで検知して動作を変えてるとか…はさすがに無いか。

722 名前:デフォルトの名無しさん [2007/03/24(土) 20:08:06 ]
というかCSSファイルの内容の一部を削除していけば、どこが原因かわかるでしょ?
ファイル名に/が入ってもいうんだっけ?



723 名前:715 mailto:sage [2007/03/24(土) 21:01:33 ]
>>716
>>717
アドバイスありがとうございます。
無事消せました。


724 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 21:10:57 ]
>>718
css晒せ

725 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 10:14:55 ]
>>712
TOMCAT_HOME\bin\startup.bat
だけで動くじゃん。ハマるぐらいならeclipse経由で起動する必要ない。

726 名前:じゃぎ [2007/03/25(日) 11:22:28 ]
こんにちわ。

同一Webアプリケーション内の二つのサーブレット間で
同じ情報を共有したり、同じ情報を恒久的に持っていたりという意図に、
どちらかのサーブレットクラス内、あるいはその他、アクセス可能な
クラス内のStaic変数を使ったりするのはいけないんでしょうか。
また、Static変数内のものがSerializableかどうかの有無にも関係
ないんでしょうか。

ここのページのリスト3のように
ttp://www.atmarkit.co.jp/fjava/rensai2/jspservlet07/jspsevlet07_2.html

application.setAttribute("counter",intCnt);
として、applicationや、ServletContextのset(get)Attiributeを使う例を
良く見るんですが、モヤモヤしていて迷っています。。よろしくお願い致します。

過去ログでもうまくみつけられなかったんですが、もし関連したページが
あるようでしたら、二言、三言キーワードのようなものを投げて頂ければ
ありがたいですます。

727 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 11:34:40 ]
public static int

728 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 11:39:47 ]
そのServletクラスに属するべき情報かどうかで使いわけるべき。
「特定のServletクラスが持つ情報」ではなく、
あくまで「複数Servletクラス間で平等に共有するべき情報」なのであれば
ServletContextを使うほうがいいだろうね。

729 名前:じゃぎ [2007/03/25(日) 11:50:02 ]
早速ありがとうございます。
ちょっと心配だったのは、Static変数にした場合、一時的には良くても、
ガベージコレクションなどが行われた際に、必ずしも値が保障されなく
なったりするのかな。。とか思ったりしてましたが、心配しなくても良い
ものなのでしょうか。
あつかましくて申し訳ありませんが、よろしければ、そのあたりのご教授
も頂ければ幸いに思います。

730 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 11:51:50 ]
GCがstatic破壊するなら何を信じればいいんだろう

731 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 11:51:59 ]
お願いします。例えば
if (list != null && list.size() > 1) {...}
でlistがnullの場合、以降の条件式は評価されないようなことに
名称はありますか?
また、他の言語では違ったりしますか?

732 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 12:02:25 ]
GCがクラスローダを回収したらstatic修飾子つきも回収されるけどな



733 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 12:08:09 ]
>>731
>以降の条件式は評価されないようなこと
特に名称は無い。
が、言い方としては「評価が打ち切られる」などと言われることが多い。

>他の言語では違ったりしますか?
C言語なども || や && に限ってはJavaと同じく左から評価される。
ただし、+-*/などの評価順はC言語では不定(決まっていない)。
右から評価されたり、ランダムに評価される実装の言語もあると思う。

734 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 12:08:40 ]
>>731
ショートサーキット評価

735 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 12:11:48 ]
>>734
ショートサーキット評価 の検索結果 約 988 件中 1 - 10 件目 (0.17 秒)

知名度は低いな。

736 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 12:13:19 ]
そうじゃない言語があるとしたら
わざわざif文を入れ子で書かないといけないのか。つらいな

737 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 12:19:26 ]
>>736
VBとか、そうなんじゃなかったっけ

738 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 12:19:33 ]
>>736
ヒント: ( )で括ればそれが先に評価される

if (((a=1) || b=1) && c=1) foobar;

739 名前:731 mailto:sage [2007/03/25(日) 12:21:18 ]
>>733 >>734
ありがとうございます。
昔勉強したときに名前が付いていた気がしていたのですが、
質問される立場になったときに、思い出せず、もやもやしてました。
やっとスッキリしました。

740 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 12:22:34 ]
>>738
いやいや、カッコでくくってもc=1は評価されてしまうから
>>731の例だとぬるぽじゃん?

741 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 12:55:59 ]
en.wikipedia.org/wiki/Short-circuit_evaluation
俺もショートサーキットという言い方で覚えていたので、
ぐぐったら少なかった(1000行かない)というのは意外。



742 名前:じゃぎ [2007/03/25(日) 13:52:34 ]
>>730 >>732
ありがとうございます。setAttributeのほうが、特別推奨される理由が
あるとすれば、ガベコレのようなところかなと、つたない頭で考えてました。
>>728さんにも、スッキリさせて頂きまして、ありがとうございました。
これで安心してサーブレットいじれます。



743 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 14:09:49 ]
ショートサーキット評価 988件
ショートサーキット演算子 618件
短絡評価 590,000件
短絡演算子 27,500件

訳したら増えたw


744 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 14:12:28 ]
>>743
しむらー、ぶんかつぶんかつー






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

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

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