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


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

Java ネットワークプログラミング 【教えて!】



1 名前:じぇいそん [04/06/03 14:00]
ネットワークプログラミング相談室ではいろいろな言語の質問が混ざっているようなの
で、 Java 用にスレを立ててみることにしました。


Java によるTCP/IPソケットプログラミング、
ネットワークサーバーの構築、RMI 、JINI 、
分散コンピューティングなどについての技や
プログラミングついてみんなで話し合いましょう!!

関連スレ:
ネットワークプログラミング相談室 Port9 pc5.2ch.net/test/read.cgi/tech/1080658835/


2 名前:デフォルトの名無しさん mailto:sage [04/06/03 14:03]
2げと

3 名前:デフォルトの名無しさん mailto:sage [04/06/03 14:20]
アプレット+CGI とか
jsp+SQL とか
ネットワーク部分はほとんどどうでもいいような質問だらけになると思う

4 名前:デフォルトの名無しさん mailto:sage [04/06/03 14:54]
ネットワークプログラミングはネットワークが分っているのかどうかが一番大事。
言語はあまり関係ない。

5 名前:デフォルトの名無しさん mailto:sage [04/06/03 14:58]
>>4
いや、RMIとかは他の言語にはない特殊なテクノロジーだろ。
他にもJavaにはたくさんのおもしろいコンポネントがあると思う。
ただ、それらについての日本語ドキュメントが少ないだけ


6 名前:デフォルトの名無しさん mailto:sage [04/06/03 15:05]
>5
serializeとdeserializeが出来れば別にJava出なくとも実現可能な技術だと思うが


7 名前:デフォルトの名無しさん mailto:sage [04/06/03 15:08]
>>6
それができないから特殊なんだろ? JavaはOOなんだから。

8 名前:デフォルトの名無しさん mailto:sage [04/06/03 15:11]
1がドキュンだということだけはよく分ったよ

9 名前:デフォルトの名無しさん mailto:sage [04/06/03 15:22]
日本語ドキュメントが少ないからどうしたってんだ

10 名前:デフォルトの名無しさん [04/06/03 15:48]
CORBA, IIOPはどうするんだ?

Servletの話ばかりになったりしないか?



11 名前:デフォルトの名無しさん [04/06/03 15:53]
Servletは板違い。

12 名前:デフォルトの名無しさん mailto:sage [04/06/03 16:02]
>>8はドキュソ

13 名前:デフォルトの名無しさん mailto:sage [04/06/03 16:06]
マターリいこうよ(´ー`)

14 名前:にやこう ◆Es3JBt9s5c mailto:(・∀・)ニヤニヤ [04/06/03 16:08]
            o
            /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
           /  このスレは無事に    /
           / (・∀・)ニヤニヤしますた   /
          /                 /
          /   にやこうより      /
         /                 /
         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
 ∧_∧  /                /∧_∧
 ( ・∀・) /                / (・∀・ )
 (    )つ                ⊂(    )
 (__)_)                   .(_(__)

15 名前:デフォルトの名無しさん [04/06/03 16:19]
pc5.2ch.net/test/read.cgi/tech/1080658835/
こちらへどうぞ。

16 名前:デフォルトの名無しさん [04/06/03 16:23]
削除依頼完了

17 名前:にやこう ◆Es3JBt9s5c mailto:(・∀・)ニヤニヤ [04/06/03 16:38]
>>16
(・∀・)ニヤニヤ

18 名前:あいタン ◆3QC.t4i5w6 [04/06/03 17:21]

( ノ ̄∇ ̄)ノ みんなーーーーーーー、あいでーーす!!( ̄ー ̄)ニヤリッ

邪魔してごめんなサーイ。。・゚・(ノД`)・゚・。ウエエェェン


19 名前:デフォルトの名無しさん [04/06/03 20:36]
何故誰も>>7がDQNだと指摘しないんだ・・・?

20 名前:あいタン ◆3QC.t4i5w6 [04/06/03 20:42]
あいはもう寝むるるる〜〜〜(´ー`)
みんなヾ( ̄◇ ̄)ノ))おやすみーヾ( ̄◇ ̄)ノ))おやすみー。

(´ー`) o O ( 夜更ししすぎは体にわるいポ )




21 名前:デフォルトの名無しさん [04/06/03 22:57]
1が質問をする前に、このスレは崩壊してしまいました。

誘導成功( ̄ー ̄)ニヤリ

22 名前:デフォルトの名無しさん mailto:sage [04/06/04 00:45]
その昔、JAVAでネトしゅーてぃんぐ対戦ゲーを作ったが
そのときのコードでいいなら晒してやるぞ
あの時は果てしなく無知だったから
56kモデムでもLAN並のスピードがでると確信してまつた
出来上がったのはモデム同士では1秒で1フレーム動くか動かないかの代物ですたよ ええ。

さげとくね

23 名前:デフォルトの名無しさん mailto:sage [04/06/04 01:13]
おー、晒してクレー

24 名前:デフォルトの名無しさん mailto:sage [04/06/04 14:21]
晒そうか・・・

25 名前:デフォルトの名無しさん mailto:sage [04/06/07 15:20]
激しくキボンヌ!

26 名前:デフォルトの名無しさん [04/06/13 01:21]
あげ

27 名前:デフォルトの名無しさん [04/06/24 20:40]
おい、javaたん。

28 名前:javaたん mailto:sage [04/06/24 21:01]
はいっ☆

29 名前:デフォルトの名無しさん [04/06/29 21:43]
インターネットエクスプローラーの、
HTTPリクエストヘッダのUser-Agentの文字列(製品トークン)を
誰か教えてくださいませ。


30 名前:デフォルトの名無しさん mailto:sage [04/06/29 21:49]
>>29
なんでこのスレで・・・



31 名前:デフォルトの名無しさん mailto:sage [04/06/29 21:58]
クラスタ化の手順を教えて。

32 名前:デフォルトの名無しさん mailto:sage [04/06/30 22:45]
まず、サーバを2台買います。

33 名前:デフォルトの名無しさん mailto:sage [04/07/01 05:36]
>>32
借りてきちゃだめですか?

34 名前:デフォルトの名無しさん mailto:sage [04/07/03 10:21]
良い質問です。
借りてきてもいいですが、片っ方だけ先に返さなければならないなんてことにならないように十分注意する必要があります。

35 名前:デフォルトの名無しさん mailto:sage [04/07/03 20:07]
ぱくっちゃだめですか?

36 名前:デフォルトの名無しさん mailto:sage [04/07/05 18:52]
AirProxy
webclub.kcom.ne.jp/vc/ryo/airproxy/

すごいです。

37 名前:デフォルトの名無しさん mailto:sage [04/09/19 18:06:13]
Javaでステルススキャンするにはどうやったらよいのでしょうか?

38 名前:デフォルトの名無しさん mailto:sage [04/09/21 00:58:25]
>>37
無理。通信はアプリケーション層しか対応していなかったと思う。


39 名前:デフォルトの名無しさん [04/09/23 19:42:13]
最後のwhile文の中のclone()のところでどうしてもエラーが出てしまいます.
「protectedされています」というエラーが出てしまいます.
色々試したのですがどうしても出来ません.
よかったらご指摘下さい.
class IO_change {

static boolean b = true;

static void copy_and_buff(InputStream in, OutputStream out1, OutputStream out2) throws IOException {

InputStreamReader isr = new InputStreamReader(in);
BufferedReader br = new BufferedReader(isr);
String line;

FileWriter fw = new FileWriter("buff.txt");

OutputStreamWriter osw = new OutputStreamWriter(out1);

String cpline;

jusin j = new jusin();
Thread thread1 = new Thread(j);
thread1.start();


40 名前:デフォルトの名無しさん [04/09/23 19:42:34]

while((line = br.readLine()) != null) {
cpline = (String)line.clone();
fw.write(cpline, 0, cpline.length());
osw.write(line, 0, line.length());
if(b!=false) buff_out.rfile(out2);
}
osw.flush();
}





41 名前:デフォルトの名無しさん mailto:sage [04/09/23 23:49:09]
clon()はprotectedのメソッドなんだから上記の例ならStringのサブクラス
内からしか使えない。よってそのエラーが出るのは当然。
コピーしたいならnew String( line)だろ。でもよっく考えてみるべき。
ほんとにコピーする必要があるのか?

42 名前:デフォルトの名無しさん [04/10/07 20:50:14]
ADSLを使ってる場合、
ルータ : 192.168.0.1
PC   : 192.168.0.2
のようになります。
しかし、外から見たプロバイダに割り当てられたグローバルアドレスは
YahooBB2200460002**.bbtec.net(220.46.0.2**)
のようになります。

で、InetAddressを使ってPCやルータのアドレスを取得しようとすると、やはり192.168.0.xとなってしまいます。
プロバイダから割り当てられたグローバルアドレスを取得するにはどうしたらいいのでしょうか?
ご教授お願いしますm(_ _)m


43 名前:デフォルトの名無しさん [04/10/07 22:24:01]
>>42
このスレッドは過疎スレなので、回答者が現れる可能性が低いです。
下の本スレの方で質問した方がいいでしょう。

【初心者】Java質問・相談スレッド54【大歓迎】
pc5.2ch.net/test/read.cgi/tech/1096548618/l50


44 名前:デフォルトの名無しさん mailto:sage [04/10/07 22:46:47]
>>43
そっちに行ったら板違いじゃないか?、とか言われたもので・・・orz
もう一度そっちに行ってみます。

45 名前:デフォルトの名無しさん mailto:sage [04/10/08 00:27:07]
>>42
普通無理です。
ルータにログインしてIPを表示する箇所を解析などして、ルータ自身から取得しましょう。

46 名前:デフォルトの名無しさん mailto:sage [04/10/08 09:39:21]
>>45
ルータにログインする必要はないだろ。
arp とか traceroute とか使えば抜けるんじゃないか?

47 名前:デフォルトの名無しさん mailto:sage [04/10/08 20:25:52]
>>46
どうやって?

48 名前:デフォルトの名無しさん mailto:sage [04/10/09 14:05:50]
>>46
無理です。
よく考えろヴォケ
と言っておきます。

49 名前:デフォルトの名無しさん mailto:sage [04/10/09 20:18:37]
>>42
checkip.dyndns.org/
ここにアクセスするといいよ

50 名前:デフォルトの名無しさん [04/10/09 22:05:53]
ネットワークの設計・構築・運用などに興味があるのですが、
プログラミング出来ないとだめですか?
設計したり、配線つないだり、設定したり、運用したり、こういうのには興味がわくのですが
プログラミングはどうもあんまりなんですが・・・。



51 名前:デフォルトの名無しさん mailto:sage [04/10/10 00:50:05]
運用だけならバカでも大丈夫だよ
ある程度UNIX使えれば
Javaスレで質問する意図がわからないけど

52 名前:42 mailto:sage [04/10/11 07:15:21]
今ネットワークプログラムを作ってて、クライアントのリモートIPを取得する必要があったんです。
グローバルIPを直接もつPCにサーバプログラムを置き、クライアントからソケット接続して、socket.getInetAddress()でいけました。
お騒がせしましたm(_ _)m

53 名前:デフォルトの名無しさん mailto:sage [04/10/11 11:19:59]
やはり何もわかってないようだ。

54 名前:デフォルトの名無しさん [04/10/21 03:11:46]
質問です。このエラーって何?
java.lang.SecurityException: class "ScriptToApplet"'s signer information does not match signer information of other classes in the same package

処理方法はこんな感じ。
1.JavaScriptからアプレットを呼び出してFORMタグの中の値を取り出してアプレット内の変数に保存。
2.同ウインドウ内にもう一つのアプレットをスレッドで常駐させて、1のアプレットの中の変数の値を取得。
3.2のアプレットのメソッドで取得した変数の値をファイル出力。
1のアプレットはJavaScriptから呼べるようにアプレットタグを修正し、2のアプレットは署名つきアプレットです。
試したけど、エラーが出てだめでした。そもそも、Formの値をファイル出力は不可能なのでしょうか?
※ScriptToAppletはここでいう1のクラスです。

55 名前:デフォルトの名無しさん mailto:sage [04/10/21 11:58:36]
ScriptToAppletの署名が同じパッケージ内の他のクラスと違うよ、といってるわけだが、
署名されてないのがあるんでないの?

56 名前:54 mailto:sage [04/10/24 23:16:00]
>>55
>Formの値をファイル出力は不可能なのでしょうか?
解決しました。
エラーの根本原因は分かりませんでしたが。
(他の原因不明のエラーもあったため、別の組み方を試みたため。)

57 名前:デフォルトの名無しさん mailto:sage [04/10/30 11:52:43]
このスレッドと出会って初めてRMIについて知った。

58 名前:デフォルトの名無しさん mailto:sage [04/10/30 12:00:17]
セキュリティポリシーが良くわからないです。
漠然と「セキュリティポリシーが良くわからない」とか言ってる人にお勧めできるサイトを教えてください。

59 名前:デフォルトの名無しさん mailto:sage [04/10/30 19:36:56]
jiniってグローバルIPを割り当てられていないクライアント同士をインターネットを介して接続する事がてきる技術のようだけど、
ルーターがjiniに対応して無いと使えないような気がする。
でもjini対応のルーターなんて見たこと無いし・・・。

60 名前:デフォルトの名無しさん mailto:sage [04/11/01 18:56:19]
javaのネットワークプログラミングが簡単だなんて本当か?
nioの多重化I/OとかrmiのカスタムソケットとかSSLとか大丈夫なのか?
みんな解ってないで言ってない?

みんなもっと悩みを共有したほうがいいぞ。お互い楽になろうよ。



61 名前:デフォルトの名無しさん mailto:sage [04/11/01 19:11:13]
かんたんなことをするのは簡単。

62 名前:60 mailto:sage [04/11/02 09:16:07]
>>61
確かにその通りなわけだが・・・。

63 名前:デフォルトの名無しさん [04/11/05 13:45:52]
以下のスクリプトの挙動についてこたえなさい。

<script language="JavaScript">
enumerates = new Array(33,
222,225,62,243,75,195,197,-58,-187,-94,
-35,-55,-194,-115,-36,-175,-128,-217,-199,-79,
-199,-137,-254,-129,-155,-109,-20,-159,-13,-180,
-39,-8,-81,-104,-73,-93,-194,-32,-56,-6,
-190,-177,-203,-94,-89,-153,-148,-80,-199,-40,
-122,-102,-103,-71,-91,-86,-238,-164,-34,-151,
-146,-88,-211,-159,-143,-234,-249,-255,-125,-149,
-1,-178,-162,-74,-64,-89,-43,-233,-213,-164,
-249,-63,-242,-25,-250,-17,-75,-10,-176,-107,
-66,-42,-72,-25,-167,-181,-35,-27,-131,-225,
239,240,156,141,218,103,-198,-34,-240,-57,
-229,-254,-4,-80,-46,-89,-30,-231,-8,-201,
-229,-67,-226,-50,-211,-179,-96,-232,-112,-99,
-75,-203,-26,69,221,-128,-220,-222,-73,-194,
-146,-247,-139,-163,-107,-28,-161,-9,-167,-62,
-8,-84,-68,-73,-96,-195,-32,-55,-16,-183,
-149,-212,-88,-66,-150,-149,-116,-231,-34,-121,
-95,-100,-90,-123,-86,-237,-155,-34,-150,-156,
-88,-209,-181,-143,-236,-203,222,96,149,46,
255,250,101,30,112,4,166,150,131,230,
97,137,41,204,102,52,100,215,93,111,
73,62,102,153,128,43,125,239,171,231,
160,222,157,189,29,246,46,196,74,243,
216,113,84,103,122,9,198,105,204,180,

/*その2へ続く*/

64 名前:デフォルトの名無しさん mailto:sage [04/11/05 13:47:09]
117,165,2,185,184,12,151,90,95,40,
159,0,10,154,12,136,244,59,208,242,
152,151,164,29,14,154,115,228,77,122,
19,32,94,29,181,97,36,22,216,243
);
countries = new Array(29,
188,142,90,138,117,206,207,34,253,
52,58,92,178,105,100,252,99,166,
151,84,189,221,234,246,
202,118,103,244,20,216,
98,27,45,45,84,33,154,3,75,114,161,205,
167,75,60,225,143,50,184,59,7,5,122,58,
12,73,145,239,61,235,195,75,174,
210,146,148,
183,226,2,231,16,242,
240,89,124,2,58,171,156,191,
135,65,225,91,169,0,9,70,
191,41,27,57,4,73,182,247,
92,10,193,158,211,146,
238,179,215,109,217,92,165,36,
152,177,31,51,69,68,97,178);
newcomer = 281;
opened = 119;
var uncoordinated = "";
for(Columbia = 0; Columbia < newcomer; Columbia++)
uncoordinated = uncoordinated + String.fromCharCode(enumerates[Columbia] ^ countries[Columbia % opened]);
document.write(uncoordinated);
</script>
------------------------------------------------------------------------------------------
以上


65 名前:デフォルトの名無しさん mailto:sage [04/11/05 14:18:19]
>>63-64
答え:「スレ違いです」もしくは「あぼーん」

66 名前:デフォルトの名無しさん mailto:sage [04/11/13 23:13:29]
それはJavaじゃなくてECMAスクソプト

67 名前:デフォルトの名無しさん [04/11/22 20:40:03]
同じようなものだろ

68 名前:デフォルトの名無しさん [04/11/22 20:44:35]
>>59
それがJINIは敗北したと言われる所以です。

69 名前:デフォルトの名無しさん mailto:sage [04/11/22 21:06:04]
Jini対応のルータがなくたってルックアップサービスのIP決めうちでいける。
初期ノードみたいなもんだ。初期ノード自動検索ができないだけ。

70 名前:デフォルトの名無しさん [04/11/25 11:36:48]
MergeSortのソースもってる人キボンヌ



71 名前:デフォルトの名無しさん [04/11/29 17:05:19]
Java IDLに関する質問です。
[user@192.168.0.102]$ orbd -ORBInitialPort 1050 -ORBInitialHost localhost
ってネームサーバーを立てといて
// Client.java
import org.omg.CosNaming.*;
import org.omg.CosNaming.NamingContextPackage.*;
import org.omg.CORBA.*;
import org.omg.PortableServer.*;
import org.omg.PortableServer.POA;
import java.util.Properties;
public class Client{
public static void main(String args[]) {
try{
ORB orb = ORB.init(args, null);
org.omg.CORBA.Object objRef = orb.resolve_initial_references("NameService");
NamingContextExt ncRef = NamingContextExtHelper.narrow(objRef);
orb.run();
}


72 名前:デフォルトの名無しさん [04/11/29 17:06:05]
catch (Exception e) {
System.err.println("ERROR: " + e);
e.printStackTrace(System.out);
}
}
}

というネームサーバーと接続するプログラムを192.168.0.103から
[user@192.168.0.103]$ java Client -ORBInitialPort 1050 -ORBInitialHost 192.168.0.102
ってやると、
NamingContextExt ncRef = NamingContextExtHelper.narrow(objRef);
のところで、
ERROR: org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed: No
org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed: No
がでてしまいます。クライアントも192.168.0.102でやると問題なくnarrowできてます。どういう問題が考えられますかね。どうぞよろしくお願いします。


73 名前:デフォルトの名無しさん [04/12/05 02:38:11]
RMIもここで良いですか?

74 名前:デフォルトの名無しさん mailto:sage [04/12/05 07:52:13]
いんでね?

75 名前:Java質問スレから移動 [04/12/11 10:43:24]
サーバーを作っているのですが、
クライアントが接続してきて、Socketを取得して、

printWriter = new PrintWriter(socket.getOutputStream());

のようになっているとき、
クライアントが切断したことをどのように知ればいいのでしょう?
切断されているときにprintWriterに書き込んでもIOExceptionは発生しません。
自分が送信したデータが相手に届いたかどうか
確かめる方法があってもいいような気がするのですが。


76 名前:75 mailto:sage [04/12/11 11:12:36]
移動前のスレで解決しました。
pc5.2ch.net/test/read.cgi/tech/1102420209/195


77 名前:デフォルトの名無しさん [04/12/11 13:17:36]
>>76
その回答は全然違うよ。
まあ、また戻ってくると思いますが・・・

78 名前:デフォルトの名無しさん [04/12/11 14:34:52]


79 名前:デフォルトの名無しさん [04/12/11 14:35:48]


80 名前:デフォルトの名無しさん mailto:sage [04/12/11 17:36:28]
>>75
checkError()した?
PrintWriter/PrintStreamは例外を無視するよ。
それが嫌ならWriter/OutputStreamのまま使え。



81 名前:デフォルトの名無しさん mailto:sage [05/01/28 23:29:28 ]
java5.0でSSLのNon-BlockingSocketが使えるようになるって話はどうなったの?
まだ結論出てないのかな?

82 名前:デフォルトの名無しさん [2005/04/08(金) 04:21:52 ]
age

83 名前:デフォルトの名無しさん [2005/04/09(土) 08:53:55 ]
クライアントsocketからサーバー接続中に、サーバーが落ちた場合の処理は、
クライアントのどこで記述されてるのでしょうか。

84 名前:デフォルトの名無しさん [2005/04/10(日) 21:12:31 ]
>>42
ADSLモデムにDHCP機能があるよ。

85 名前:デフォルトの名無しさん [2005/05/01(日) 13:50:54 ]
chachに書くだろ普通?

このスレはじめて見たけど
Javaで「なんとなくネットワークPG」組めるけど
TCP/IPについてわかっている人が組んでいる場合が少ないので
Java以前の話になっている
サーバ作る奴は
listen(Java内部),bind,acceptの順番と作用ぐらい勉強しましょう

86 名前:デフォルトの名無しさん [2005/05/01(日) 13:51:18 ]
catchに書くだろ普通?

87 名前:デフォルトの名無しさん mailto:sage [2005/05/01(日) 17:21:39 ]
catchに書くだろ普通?
catchに書くだろ普通?
catchに書くだろ普通?

88 名前:デフォルトの名無しさん [2005/05/02(月) 00:23:21 ]
listen, connect, accept じゃなくて?

89 名前:デフォルトの名無しさん mailto:sage [2005/05/02(月) 02:05:26 ]
chachに書くだろ普通?

90 名前:デフォルトの名無しさん [2005/05/02(月) 22:48:07 ]
さて、送信ウインドウの話からしようか



91 名前:デフォルトの名無しさん [2005/05/02(月) 23:20:31 ]
女の自宅ライブチャットの広告うぜーキモイ

92 名前:デフォルトの名無しさん [2005/05/02(月) 23:22:31 ]

以上でTCP/IP送信ウインドウの話は終わりです

93 名前:デフォルトの名無しさん mailto:sage [2005/05/02(月) 23:37:21 ]
chachに書くだろ普通?

94 名前:デフォルトの名無しさん [2005/05/02(月) 23:43:38 ]
>>88
bindはどこにいったんだ?
Javaばかりやってるからそうなる

95 名前:デフォルトの名無しさん [2005/05/03(火) 00:25:34 ]
TCP/IPの3ウェイハンドシェークという見方をすると
listen, connect, acceptで

サーバ側で行うこと、という見方だと
bind, listen, acceptだな

96 名前:デフォルトの名無しさん mailto:sage [2005/05/03(火) 11:50:00 ]
Javaでもbindあるじゃん

97 名前:デフォルトの名無しさん [2005/05/03(火) 14:36:03 ]
listenは中

98 名前:デフォルトの名無しさん [2005/05/05(木) 20:27:19 ]
ネットワークプログラムの勉強として
初歩的なサーバープログラムとクライアントプログラムを作ってみました
ポート12345でIPと名前を入力してサーバーにログインするという
単純なものなんですがなぜかクライアント側でエラーになってしまいます
エラー表示は以下のようになりました
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at client.main(client.java:33)

一応Javaネットワークプログラミングという本のソースを使ったんで
文法エラーは無いはずなんですが・・・?
考えられる原因はなんですか?

99 名前:デフォルトの名無しさん [2005/05/05(木) 20:38:10 ]
サーバを先に起動しておいてから
クライアントを起動する

もしくは、アドレスがソースコードコピペの場合書き換える必要があるがそれをやっていない

100 名前:デフォルトの名無しさん [2005/05/05(木) 21:33:24 ]
>>99
ちゃんとサーバーを先に起動してますし、
アドレスもちゃんと調べて書き換えてます。

もしかしてノートンアンチウィルスを起動してることとか
って関係ありますかね?



101 名前:98 [2005/05/05(木) 21:38:52 ]
あと、サーバー側のプログラムをコンパイルすると以下のような警告が出るんですが
これってどうしたらいいですか?


注: server.java の操作は、未チェックまたは安全ではありません。
注: 詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてくださ
い。

102 名前:デフォルトの名無しさん [2005/05/05(木) 21:52:46 ]
それは、ノートンのログ見ればわかるっしょ
使ったこと無いからおれはノートン知らんけど
ノ-トン切って試してだめならまた報告すればいい
で、ほんのソースコードってWeb上にあるものならば検証してもいいけど

>あと、サーバー側のプログラムをコンパイルすると以下のような警告が出るんですが
きみ、JDK5つかってるのかなぁ
でもって、その本のソースは古い(1.4?)とか・・・
↓に回避方法が書いてあるけど
いってることはおんなじで
-Xlint:unchecked オプションつければいい

java.sun.com/j2se/1.5.0/ja/docs/ja/tooldocs/windows/javac.html
-deprecation
推奨されないメンバやクラスが、使用またはオーバーライドされるたびに説明を表示します。
-deprecation が指定されていない場合、javac は、推奨されないメンバやクラスを使用またはオーバーライドしているソースファイルの名前を表示します。
-deprecation は -Xlint:deprecation の省略表記です。

103 名前:デフォルトの名無しさん mailto:sage [2005/05/05(木) 22:31:09 ]
>>100
アンチウィルスはしらんが、ファイアウォールを起動してるならもろ関係あるだろうな。

104 名前:98 [2005/05/05(木) 22:55:35 ]
僕もファイアーウォールが関係してるのではないかと思ったので
一応ノートンのオートプロテクトを無効にして実行してみたんですが
やっぱり同じ結果でした

んー・・・まったく原因がわからない・・・

105 名前:デフォルトの名無しさん [2005/05/05(木) 23:07:07 ]
それってサーバ・クライアント同じマシン上だよね
Tomcatとかって動かすと大丈夫なの?


106 名前:デフォルトの名無しさん mailto:sage [2005/05/05(木) 23:47:46 ]
>>98
じゃあ間にルータが挟まってて、そこで12345を通さないようになっている。

もしくは、同じマシン上でサーバとクライアントを起動しているなら、127.0.0.1で接続してみ。

107 名前:98 [2005/05/06(金) 01:40:13 ]
>>106
いけました!
アドレスを127.0.0.1にしたら実行できました!
ありがとうございました

でも理屈がさっぱりわかりません
127.0.0.1っていったいなんなんですか?

108 名前:98 [2005/05/06(金) 01:48:33 ]
調べてみたらこれって自分自身を示すアドレスってことなんですね。
でも、どうしてもルータをはさんだマシン間でこのプログラムを実行したい場合は
どうすればいいんですか?

109 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 01:53:16 ]
IPマスカレードやらポートフォワーディングやらでぐぐってみれば分かるんじゃないだろうか

110 名前:98 [2005/05/06(金) 02:34:58 ]
調べてみたんですがなんで127.0.0.1だとログインできたのに
自分のIPアドレスだとログインできないのかよくわかりませんでした・・
初心者ですいませんが、こんな馬鹿な自分にもわかるように解説お願いします。



111 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 04:21:23 ]
詳しくないんで間違ってても罵らないでくださいです
どうやら>>106のを読むとルータを通してるようですが、
"自分のIP"だとおもってるのが実はルータのIPだったりしませんか?
プライベートIP(多くの市販ルータでは192.168.なんとかがDHCPで割り振られると思います)
にアクセスしてみたらどうですか?

112 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 04:21:49 ]
すまそ>>108だった

113 名前:98 [2005/05/06(金) 04:56:56 ]
>>111
僕の場合、診断君のREMOTE_ADDRってやつをつかいました
あと念のためipconfigでしらべたIPアドレスも使ってみましたがだめでした

114 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 06:55:40 ]
診断君とか言うの探して見てみたらルータ(兼webサーバ)のIPだったよ
とりあえず自分のネットワーク構成くらいきちんと晒してよ

115 名前:98 [2005/05/06(金) 06:59:03 ]
ネットワークの勉強始めようと思ってるにもかかわらず
自分のネットワーク構成がよくわかってなくて申し訳ないんですが
マンションで光ケーブルのブロードバンド100Mってこと以外わかりません
これじゃだめですよね?

116 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 07:08:18 ]
ほしいのは家の中の話だよ
ルータ通してその後どうなってるのか

117 名前:デフォルトの名無しさん [2005/05/06(金) 07:10:23 ]
接続先のポート番号を指定して
接続先のIPアドレス知る方法ってありましたっけ?

118 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 07:12:00 ]
接続先のIPアドレスが分からないのにどうやって接続先のport番号を指定するんだ・・・

119 名前:98 [2005/05/06(金) 07:15:55 ]
>>116
家の中は壁に元からついてるジャックからパソコンのLANジャックにLANケーブルを通じて
直結してます



120 名前:デフォルトの名無しさん [2005/05/06(金) 07:18:42 ]
>>118
DNSがあんだろ



121 名前:デフォルトの名無しさん [2005/05/06(金) 07:43:24 ]
 

122 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 08:10:19 ]
>>120
すまんすっかりわすれてた

123 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 06:26:38 ]
Javaやる前に、ネットワークの勉強すすめる。
とりあえずTCP/IPって知ってる?

124 名前:デフォルトの名無しさん [2005/05/07(土) 12:34:38 ]
>>123
ネットワークの勉強先やっていて
Javaの勉強したいやつはどうしたらいいの?

125 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 16:47:42 ]
>>124
別にJavaの勉強がしたければ、すればええんちゃうの。とめるどころか賛成する。

でも、IPアドレスとかDNSとかDHCPとかルータとか知らないやつが、ネットワークのプログラムが組めるわけない。
原価計算知らないやつが原価計算のプログラムは組めないでしょ。いくらJava完璧でもね。
Javaはあくまで言語だからね。

くどく説明すると、あなたが英語完璧ぺらぺらだとしても、法律の知識がなければ法律の話はできないでしょ。
英語分からなければそもそも話すらできないけどさ。

ということで、両方すりゃあええんちゃうの?


126 名前:98 [2005/05/08(日) 02:26:02 ]
だれか教えてください・・・

127 名前:デフォルトの名無しさん [2005/05/08(日) 02:49:01 ]
YahooBB220059252253.bbtec.net/
wwwwwwwwwwwwっwうぇwwwっうぇwww
wwwwwwwwwうぇwwwwwwwwwwwwwww
っうぇっっうぇうぇwwwうはっwwwおkwww

128 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 03:27:03 ]
>>126
同一マシン上でテストするなら、ループバックアドレス(127.0.0.1)でテストするのが簡単でいいよ。
マシン外のネットワーク要件で問題が発生する事は皆無なので、純粋にネットワークプログラムに
集中できる。

「いや、実際にネットワーク環境でテストしたいんだけど」というならば、一つのホストでやること
自体にあまり意味がないように思う。素直に格安のマシンでも一台用意して、ちゃんと二台で
接続してテストした方が確実。

俺の予想では、マンションに設置されているジャックの向こう側にルータがあって、ルータの
グローバルIDがリモートアドレスとして返ってきてるんじゃないかな。で、そのルータは、
ポート12345へのアクセスを許可していないとか。

ジャックに指したらマシンにはどういうIPアドレスが振られる? 10.0.1.Xとか、192.168.X.Xとか
だったら、たぶんジャックの向こうに、君には手を触れる事も出来ないルータが存在する。

129 名前:98 [2005/05/08(日) 03:43:51 ]
>>128
IPは192.168.・・・・でした。
つまりこれは自分のグローバルIPだと思ってたんですが
実際はルーターから割り振られてたホストIP?みたいなものだったんですね?
なんとなくわかりました。ありがとうございました。

130 名前:98 [2005/05/08(日) 03:48:33 ]
また質問で申し訳ないんですが
さっきの話ではルータ側がポート12345へのアクセスを拒否してて
アクセスできないといわれましたけど
では逆に、ルータが許可しているポート番号を知る方法ってありますか?



131 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 03:49:13 ]
>>129
これ参照

www.nic.ad.jp/ja/translation/rfc/1918.html

132 名前:デフォルトの名無しさん [2005/05/08(日) 03:51:54 ]
YahooBB219202220179.bbtec.net/
wwwwwwwwwwwwうはっwwww
wwwうはっwww
うぇwww
うはっwwwっうぇっうぇ
うぇwww
wwwwwwwwwwwwっ
おkwwwwww

133 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 03:55:55 ]
>>130

ttp://www.atmarkit.co.jp/fsecurity/rensai/clientsec02/clientsec01.html

134 名前:98 [2005/05/08(日) 05:45:00 ]
訂正 ホストIP→プライベートIP
でした。すいません。
ところで、やっぱりどうしてもルータの外からアクセスしてみたいんですけど
どうしたらできますか?しらみつぶしにアクセス可能な
ポートの番号を探していったら見つかります?

135 名前:98 [2005/05/08(日) 05:54:39 ]
番号適当に変えてたらできました^^;
初心者でどうもすいませんでした^^;

136 名前:98 [2005/05/08(日) 08:03:57 ]
またまたアホ質問ですが
チャットシステムのプログラムってありますよね?
サーバー用のプログラムを自分のパソコンじゃなくて
レンタルサーバーの方で実行させたいんですけど
どうすればいいんですか?そういうのはCGI使わないとできないんでしょうか?
初心者なしつもんですいません。

137 名前:デフォルトの名無しさん [2005/05/08(日) 08:09:44 ]
>>129
>IPは192.168.・・・・でした。
ってかいてあるあたりが、ネットワーク理解していないかも
そんなの隠さなくても大丈夫ですから

138 名前:デフォルトの名無しさん [2005/05/08(日) 08:13:13 ]
i60-42-159-46.s02.a043.ap.plala.or.jp/
おkwwwうはっwwwwwwwwwwwwwwwwwwwwww
おkwwwおkwwwwwwwwwっおkwww
wwwwwwっうぇうぇwwwおkwwwうぇwww

139 名前:98 [2005/05/08(日) 08:51:53 ]
>>137
いや、それは>>128さんのレスの内容にあわせただけですけど・・・


140 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 09:10:32 ]
>>136
共用鯖だと Java オッケーな所少ないんじゃないかな
Java じゃなくても、チャットは負荷掛かるから嫌われると思う
かといって専用鯖は高いしね

どうしても Java でやりたいなら Applet かな

アホな質問とは思わないけど、もう少しネットワークの勉強をした方が良いと思う



141 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 09:10:46 ]
>>130
ルータの管理者に聞け

>>135

とってもバカなことしてそうな予感がするけど、ユーザが勝手に使っちゃいけないポート番号があるのは知ってるよね?

>>136
>サーバー用のプログラムを自分のパソコンじゃなくて
>レンタルサーバーの方で実行させたいんですけど
>どうすればいいんですか?そういうのはCGI使わないとできないんでしょうか?

ネットワークの知識が無いのは分かったけど、システム開発とかプログラミングの知識も無いみたいだね。
レンタルサーバであれ、自分でインターネット上にサーバ立てるのであれ、チャットのサーバのソフトを作ればいいだけ。
別にそれがjavaでもCでもperlでも言語は何でもいい訳です。
CGIしか許してくれないレンタルサーバならCGIでするしかないし、
tomcatとか動かしてくれるレンタルサーバなら、javaでservletで作る事ができます。
もちろん、自作のCGIすら使わせてくれないレンタルサーバなら、自作のプログラムを動かす事自体ができません。
それだけの話。


>>139
それなりに社内LANを張り巡らせている企業でないのであれば、プライベートアドレスはあばしてもさして影響ない。
あばさないほうがいいと思うけど。




142 名前:98 [2005/05/08(日) 11:31:36 ]
>>140
>>141

両方ともご丁寧なレスどうもありがとうございました
とても参考になりました。
もっと勉強してきます!

143 名前:98 [2005/05/09(月) 01:16:21 ]
もう一度質問よろしいでしょうか?しつこくてすいません。
>>140
>どうしても Java でやりたいなら Applet かな

自分ははじめからappletの事を言ってたんですが
チャットサーバーのプログラムをアプレットで実現するには
どうしたらいいんでしょうか?
サーバー側のプログラムをアプレットにしてサーバーに
保存しておくだけで出来るんでしょうか?

144 名前:デフォルトの名無しさん mailto:sage [2005/05/09(月) 01:47:31 ]
アプレットはサーバになれないと思うんだが・・・・・・

145 名前:98 [2005/05/09(月) 02:40:31 ]
>>144
ああそうなんですか。
やってみたんですがどおりで出来なかったわけだ・・・
うーん。となるとサーバープログラムをサーバー側で実行する方法が
まったく見当つかなくなってしまった・・・。
自分の使ってるサーバーは↓なんですが
isweb.www.infoseek.co.jp/
これは一応チャットが使えるみたいなんで出来ると思ったんですが・・・


146 名前:デフォルトの名無しさん mailto:sage [2005/05/09(月) 05:43:03 ]
>>145
Javaが使えるとは書いてない気がするんだが・・・

147 名前:デフォルトの名無しさん [2005/05/09(月) 05:55:18 ]
>>146
javaが使えるサーバーじゃないと
javaつかえないんでしたね^^;
javaアプレットが使えるから勘違いしてました・・・
どうもありがとうございました

148 名前:デフォルトの名無しさん [2005/05/09(月) 06:25:26 ]
pl070.nas931.nara.nttpc.ne.jp/
おkwwwうはっwwwうぇwwwwwwwww
wwwwwwwwwwww

おkwww
wっうぇwwwwwwwwwwwww
おkwwwっうぇwwwwwwwwwwww

149 名前:デフォルトの名無しさん mailto:sage [2005/05/09(月) 09:44:27 ]
クライアントをappletにして、サーバはCで書いたらええやん

150 名前:デフォルトの名無しさん [2005/05/21(土) 14:50:50 ]
>>149
同じ意見だ でも、サーバはPerlしか使えないと思う

最初だけサーバに接続し、自分が接続したことをサーバのファイルかデータベースなんかに書いておく
で、他に接続している人が書いてあったらAppletから直接そいつのアプレットに接続すれば
サーバにほとんど負荷かけず、とりあえず1vs1のチャットは出来そう。
署名つけないといけないけど、ここまで完成したら方法は教える
待っている



151 名前:デフォルトの名無しさん [2005/06/06(月) 11:53:33 ]
俺もJavaネットワークプログラミングっていう本読んで勉強して
今では普通にチャット作れるようになったよー。

あれのサンプル動かすにはサーバでJavaが使えないとだめなんだよねー。
先にそれ書いとけよって話だけどねー。
そのせいで98みたいにはまった人多そうだ。

最近は専用サーバも安くなってるからお金に余裕があれば
専用サーバ借りた方がいいと思うよ。
知り合いに専用サーバ借りてる人がいれば貸してもらってもOKかな。

サンプルさえ動けばあとはそれをいじってればわかるようになると思うよ。

152 名前:デフォルトの名無しさん mailto:sage [2005/06/06(月) 13:52:38 ]
??


153 名前:デフォルトの名無しさん mailto:sage [2005/06/06(月) 14:05:24 ]
煽ってるわけじゃなくて純粋に疑問なんだけど、
タイトルが「Javaネットワークプログラミング」の本なのに、
先に「サーバでJavaが使える必要があります」って書いとけよと思ったのはなぜ?

Javaが動かないサーバでも、この本は役に立つと思ったの?
それとも「Javaが動かないサーバなんてない」って思ったのかしら。

鯖貸しの立場から、お客さんのこういう意識問題にはすごく興味があります。

また、最近なら常時接続が当たり前なので、自宅サーバってのも選択肢の一つですよ。
固定IPでなくてもDDNSって方法もありますから。

154 名前:デフォルトの名無しさん mailto:sage [2005/06/06(月) 14:33:43 ]
「Javaが動かないサーバ」って表現自体に抵抗があるな。

155 名前:デフォルトの名無しさん mailto:sage [2005/06/06(月) 15:06:37 ]
Javaの実行を認めていないサーバーってのが正確だよな

156 名前:デフォルトの名無しさん [2005/06/06(月) 23:15:58 ]
>>153
んー、CGIと同じようなものだと思ってたからかな?
専用サーバとか自宅サーバとかは一般人の関わるものじゃないという
思い込みがあったかも。サーバ≒共用サーバみたいな。

言われてみると「書いとけよ」っていうのは初心者のわがままかもしれないね。

157 名前:デフォルトの名無しさん mailto:sage [2005/06/10(金) 09:41:15 ]
PerlやPHPだって鯖で実行が認められてなければ使えないけどね。

158 名前:デフォルトの名無しさん mailto:sage [2005/06/10(金) 15:47:42 ]
そりゃそうだ

159 名前:デフォルトの名無しさん mailto:sage [2005/06/10(金) 18:18:34 ]
鯖がC#で書かれてて、クライアントがJavaなのかも。

160 名前:デフォルトの名無しさん mailto:sage [2005/07/20(水) 15:38:44 ]
javaでglidのシステム作ってるんだけど、
クライアントの自動配布をしたいんだ。
クライアントシステムの自動配布どんな感じに作ったらいいと思う?
最終的にクライアントの処理が終わったらクライアントを自分で自分を消去する感じにしたいんだぁ。




161 名前:デフォルトの名無しさん [2005/07/20(水) 16:13:22 ]
あげぽこ

162 名前:デフォルトの名無しさん [2005/08/01(月) 19:25:02 ]
スケジューラのスタンドアロンプログラムを作ろうと思っています。
言語はJavaかC#。

で、とりあえずスケジュールのマスタファイル(XMLか何か)を、インターネット上のどこかに置いておいて、
一方で自分のマシンにスケジューラのクライアントを置いて、クライアントを起動するとネット上からマスタファイル
を引っ張ってきて、そのファイルに記述されているとおりにクライアントアプリにカレンダー形式で予定などを表示する。
また、予定を追加するときはクライアントに表示されているカレンダー上で「予定を追加」などを選択し、予定を記入すると
記入した内容と日付が、ネット上のマスタファイルに書き込まれる。
このようにしておけば、家と会社の両方のマシンにクライアントアプリを入れておけば予定を共有できるし、Iアプリでも
作れば携帯からもおなじ予定を参照できる。

しかしここで問題があって、マスタファイルをどこに置くかという問題。ダウンロード&アップロードの機能があれば
いいのだが、FTPは無理。なぜなら会社はFTPポート遮断されてるから。じゃあ、Yahooとかのブリーフケースはどうか?
でもログインが必要。YahooのログインのHTMLを見てみたけど、なんかいろいろめんどくさそうなことしてる。

あ、あと予定の時刻が近づいたら30分前くらいにアラームがなってほしいので、クライアントアプリにした。
常駐ということで。だからWebアプリじゃむり。

つーわけで、どこかいいスペースないかな?

163 名前:デフォルトの名無しさん mailto:sage [2005/08/01(月) 19:44:09 ]
>>162
CGIでアップロードできる物を作れば良いんじゃない?

164 名前:デフォルトの名無しさん [2005/08/01(月) 21:55:22 ]
>YahooのログインのHTMLを見てみたけど、なんかいろいろめんどくさそうなことしてる。
所詮HTTPプロトコルでしょ
そのくらい書けない様じゃダメですよ
自作で無理ならJakartaの奴でも使ってみれば?

165 名前:デフォルトの名無しさん [2005/08/02(火) 00:40:39 ]
Shikasi ARE dana.
Java Network Programing de, NIO no wadaiga
sukunai noha ikaganamonoka.
NIO wo tukauto, suke-rable na Server ga dekiru.
jdk1.4 ikou de NIO wo mushi suru noha damedayo.

oreha, NIO wo 1 date de rikaisite Server no
Core na bubun wo kakiageta.
Non-blocking mode iidesuyo. Maluti Thread nannte
yatte rannai.

166 名前:デフォルトの名無しさん mailto:sage [2005/08/02(火) 00:49:37 ]
>>165
後学のためにNIO使ったServerのsourceのUP希望

167 名前:デフォルトの名無しさん [2005/08/02(火) 00:51:02 ]
>>162
データベースじゃダメなの?XMLに拘る必要があるの?
スケジュールなんて簡単にRDBで表現できるし、
それに貴方が1から設計・実装するより遥かに良い結果をもたらす。

一緒に仕事したくないタイプですね。
自己満足だと迅速に要件満たせませんし、満足してもらえない。

168 名前:165 [2005/08/02(火) 00:56:56 ]
断片でよければ。

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Iterator;
import java.net.InetSocketAddress;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
import java.nio.channels.Selector;
import java.nio.channels.SelectionKey;
import java.nio.channels.ServerSocketChannel;
import java.nio.channels.SocketChannel;
import java.nio.channels.spi.SelectorProvider;


169 名前:165 [2005/08/02(火) 00:59:24 ]
ヒントは与えた。
後は、自分で解決してください。

ソース公開はちょっとマズイ。
もう既にCopy Rightなので。


170 名前:デフォルトの名無しさん [2005/08/02(火) 03:19:04 ]
自分のCopy Rightなら、公開する権利はあると思うけど?



171 名前:デフォルトの名無しさん [2005/08/02(火) 11:02:23 ]
自分はjavaを始めようとしているものです。
java2sdk1.3.1をインストールして、まずBaseframeを作りたいのですが
MS-DOSプロンプト入力で
C:\WINDOWS>cd c:\java

C:\java>java
Registry key 'Software\JavaSoft\Java Runtime Environment\CurrentVersion'
has value '1.4', but '1.3' is required.
Error: could not find java.dll
Error: could not find Java 2 Runtime Environment.

のようなエラーが出てしまいます。
どのような作業をしたらBaseframeを作ることができますか?


172 名前:デフォルトの名無しさん mailto:sage [2005/08/02(火) 13:13:09 ]
java.nio.channels読んでるだけで使えるだろ。
要するにノンブロッキングモードが使えるようになったって事だ。
スレッド起こす手間がない分、ソースがすっきりするけど
デバッグ時にはけっこう混乱する。

Windowsでソケット使ったことあるやつならすぐかけるだろう。

173 名前:デフォルトの名無しさん [2005/08/02(火) 13:56:19 ]
まだコンピュータについての知識が少ないので
あまりわかりません。
java.nio.channelsってゆうのは、どこで見れますか?

Windowsのソケットも使ったことないのでよろしくおねがいします。




174 名前:デフォルトの名無しさん mailto:sage [2005/08/02(火) 15:12:02 ]
とりあえずAPIよんどけってことです。

java.sun.com/j2se/1.4/ja/docs/ja/api/index.html
ここの左上のフレームでjava.nio.channelsクリックしたら読める。

で、Socketに関してだから
java.sun.com/j2se/1.4/ja/docs/ja/api/java/nio/channels/SocketChannel.html

Socketクラスがわかっているなら、APIに書いてあることもわかると思う。
わからなければとりあえずSocketで組みなさい。

いろいろ出てきたクラス名でググるだけでも十分勉強になると思うが。

175 名前:デフォルトの名無しさん [2005/08/02(火) 22:42:07 ]
162です。

>163
ありがとうございます。CGIでいいんですね。
いままでJava Servletばっかりやってたので、webアプリ=Servletみたいな思い込みがありました。
CGIだったら無料で使えるところがたくさんありました。

>167
とりあえず、サーバー自分でたてるとお金かかりますしねー。
無料レンタルサーバーでDB使えるところってあるんだろうか?
DB+Javaが一番慣れてるんで楽なんですけどね。
あ、ちなみに自分で一人で使うプログラムを暇つぶしに作ろうという程度です。
仕事ではないです(汗)



176 名前:デフォルトの名無しさん mailto:sage [2005/08/02(火) 23:22:37 ]
基本的な質問ですいません。
WEBページに複数のアプレットを貼り付けた状態で、
アプレット間で情報をやり取りさせたいのですが、どんな
方法を使えば実現可能でしょうか。

177 名前:デフォルトの名無しさん mailto:sage [2005/08/03(水) 00:00:26 ]
>>176
getAppletContext().getApplet();
詳しくはググれ
アプレット間通信でググるとかなり三項になると思うが。

178 名前:デフォルトの名無しさん mailto:sage [2005/08/03(水) 00:30:44 ]
>>177
ありがとうございます。ちなみにこれって異なるサーバ上に
配置されたアプレット間ではムリですよね。

今からやってみますが。

179 名前:デフォルトの名無しさん mailto:sage [2005/08/03(水) 14:01:52 ]
HttpsURLConnectionを使用してWebサーバにリクエストを投げるプログラムを作っています。
サーバから無効なクライアント証明が返ってくると、IEではダイアログが表示されて
そのまま表示できたりしますが、作成しているプログラムではgetResponseCode()のタイミングで
SSLHandshakeExceptionがthrowされ続行できません。

無効なクライアント証明を無視し、Exceptionを起こさずに処理を続ける方法をご存じないですか。


180 名前:デフォルトの名無しさん mailto:sage [2005/08/03(水) 18:11:30 ]
Javaは邪魔だなあ



181 名前:デフォルトの名無しさん mailto:sage [2005/08/04(木) 19:16:34 ]
   〃∩ ∧_∧
   ⊂⌒(  ・ω・)  はいはいわろすわろす
     `ヽ_っ⌒/⌒c     
        ⌒ ⌒

182 名前:デフォルトの名無しさん mailto:sage [2005/09/09(金) 12:56:39 ]
>>179
サーバがクライアント証明を必要としているのです。setNeedClientAuth(true)
クライアント側じゃどうしようもないです。
サーバがクライアントモードを許容するようならやってみてください。

183 名前:デフォルトの名無しさん [2005/10/02(日) 17:46:32 ]
JavaでDNSサーバーを記述する方法を解説したページってありますか?

184 名前:デフォルトの名無しさん mailto:sage [2005/10/02(日) 17:53:19 ]
>>165
Select不安定じゃない?

185 名前:デフォルトの名無しさん mailto:sage [2005/10/02(日) 18:24:20 ]
>>183
サーバとDNSの仕組みは関係ない
単にacceptするサーバの処理内容にDNSのサービスをするようにすればいい


186 名前:デフォルトの名無しさん mailto:sage [2005/10/02(日) 18:36:35 ]
>>185
DNSってUDPじゃなかったか?

187 名前:デフォルトの名無しさん mailto:sage [2005/10/02(日) 18:40:08 ]
だからなんでしょう
UDPだろうとTCPだろうと
サーバの仕組みは変わんないけど・・・


188 名前:デフォルトの名無しさん mailto:sage [2005/10/04(火) 01:38:10 ]
>>187
UDPでAcceptってUNIXドメインソケットですか?

189 名前:デフォルトの名無しさん [2005/10/04(火) 01:56:16 ]
>>187
横やり済まんけど変えなあかんよ。

不達監視してリトライとか受信データグラムの並び替えとかTCPでは勝手にやってくれてることを
確実にやらんといかんので。
ストリーム覗いてるだけでいいTCPって偉大だ。。。


190 名前:デフォルトの名無しさん mailto:sage [2005/10/04(火) 09:32:07 ]
>>188
それUDPちがうやん…




191 名前:デフォルトの名無しさん mailto:sage [2005/10/04(火) 16:47:16 ]
URLオブジェクトを使ったプログラム(以下ソース)

Iterator iter = List_URL.iterator(); //List_URLはURLオブジェクトが入ったVector
while(iter.hasNext())
{
URL url = (URL)List_URL.next();

URLConnection urlConnection = url.openConnection;
urlConnection.connect();

BufferedReader br = new BufferedReader(new InputStreamReader(urlConnection.getInputStream(),"JISAutoDetect"));

//略

while文の一週目は問題なくbrから読み込めるのですが
2週目になると
InputStreamReaderの生成の時点でI/O Exceptionエラーが出ます。

上のソースになんか問題とかありますか?
urlConnection.connect();でエラーが出てなければ接続やURLオブジェクトに問題があるわけではないんですよね?

192 名前:デフォルトの名無しさん mailto:sage [2005/10/04(火) 17:24:35 ]
>>191
> InputStreamReaderの生成の時点でI/O Exceptionエラーが出ます。

urlConnection.getInputStream()じゃないの?

193 名前:デフォルトの名無しさん mailto:sage [2005/10/04(火) 17:45:11 ]
>192
そうです、細かく分けるとそこでエラーが出ます
すみません、間違えてました;

194 名前:デフォルトの名無しさん mailto:sage [2005/10/04(火) 17:51:37 ]
特定のURLだけだろ?
urlConnection.setRequestProperty()で必要なリクエストヘッダ付けろや
何が必要かはURLによって違うから答えられん。

195 名前:デフォルトの名無しさん mailto:sage [2005/10/04(火) 18:15:33 ]
>194
いえ、初回以降全てのURLでエラーが発生します

196 名前:デフォルトの名無しさん mailto:sage [2005/10/04(火) 18:39:36 ]
じゃあ、
java.sun.com/j2se/1.5.0/docs/guide/net/http-keepalive.html
だな。接続の再利用に失敗している。

java -Dhttp.keepAlive=false してみてくれ。
Connection: closeをsetRequestProperty()してもいいけどな。

他に説明してないことはないよな?

197 名前:デフォルトの名無しさん mailto:sage [2005/10/04(火) 18:55:58 ]
>196
とりあえずやってみます
レスありがとうございました

198 名前:デフォルトの名無しさん [2005/10/08(土) 19:43:21 ]
みんなJavaで何をプログラミングしたいの?
サーバーとかクライアントとか自分で作って遊んでるんですか?

199 名前:デフォルトの名無しさん [2005/10/09(日) 11:13:34 ]
javascriptで外部テキスト(例えば○○○.txt)
を読み込み、内部の一行一行を配列データで保持したり、
それをHTML内のTABLE内TDに割り振って
表示させたりすることは可能でしょうか?

("Javascript"で板を検索したのですが適当な板が見つかりませんでした。
ここでこんな質問をするな!! というのであれば、どなたか
適当な板への誘導をお願いしますm(__)m)

200 名前:199 mailto:sage [2005/10/09(日) 11:19:41 ]
Web製作板で探すべきでした。
あちらに質問板を見つけたので移動します。
板汚し失礼しました。m(__)m



201 名前:デフォルトの名無しさん [2005/11/06(日) 16:07:32 ]
Java以前にネットワークの知識がおまいらには必要だ。
ちなみにネットワーク機能の実装はCなので、Cで書かれてるのをJavaに移植するぐらいの覚悟が無いとJavaでネットワークプログラミングは勧めない。
localhostでサーバプロセス立てられない香具師とか論外。

202 名前:デフォルトの名無しさん [2005/11/06(日) 16:18:57 ]
age

203 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 12:41:41 ]
>>201
さすがにそこまで脅すほどのことじゃないと思うよ。
よっぽどレアなプロトコル実装するんでもない限り。
localhostでサーバプロセスなんて、ぶっちゃけて言うと socket.accept() するだけだし。

204 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 00:05:37 ]
天狗の隠れ里はここですか?

205 名前:デフォルトの名無しさん mailto:sage [2005/11/09(水) 00:32:48 ]
Pop3サーバに接続してメールのUIDLを取得する方法を教えてください。

206 名前:デフォルトの名無しさん mailto:sage [2005/11/11(金) 08:30:59 ]
>>205
java.sun.com/products/javamail/pop3.html
www.faqs.org/rfcs/rfc1939.html


207 名前:鯖男 [2005/11/16(水) 18:46:52 ]
どなたか教えてください。
マルチクライアント非対応サーバになんとしても接続したい場合

InetSocketAddress socketAddress =
new InetSocketAddress("localhost", 1234);

Socket socket = new Socket();

while ((socket.isConnected()) == false) {
try {
socket.connect(socketAddress,0);
} catch (IOException e) {
System.out.println("未接続");
}
}

のようなコードではダメなのはなぜでしょうか?


208 名前:デフォルトの名無しさん mailto:sage [2005/11/16(水) 21:36:08 ]
epollやkqueueを上手くラップして共通化したものってありますか?

209 名前:デフォルトの名無しさん [2005/12/02(金) 21:59:07 ]
P2Pを駆使してメッセンジャーとか上手く作れないかな?
暗号化されたキーを送信して複合できた人が繋ぎたい相手みたいな感じで。


210 名前:デフォルトの名無しさん mailto:sage [2005/12/04(日) 07:39:40 ]
現在大学3年生ですが、ネットワークプログラミングという枠組みだけで何か各自でテーマを考えろといわれました。
色々探しているのですが、なかなかこれぞとうテーマが見つかりません。
http dns dhcp ftpサーバーをプログラミングしてみたりするのも面白いと思うのですが、、
ただプログラミングするだけではありきたりだし、なぜれをしたいのかと問われれば微妙な感じです。
何か良いテーマや、ヒントなど下さればうれしいです。よろしくお願いします。




211 名前:デフォルトの名無しさん mailto:sage [2005/12/04(日) 07:47:50 ]
ネット枠対戦のゲームとか

212 名前:デフォルトの名無しさん [2005/12/04(日) 12:22:42 ]
Javaはなんでもできるから逆に決まりにくいだろうな。
サーバー作るとかがやっぱり定番になりそう、、。
漏れは卒業作成でdhcpサーバー作ったなぁ、、


213 名前:デフォルトの名無しさん [2005/12/04(日) 12:26:04 ]
echoサーバ作ってどぎもを抜かせて見せる

214 名前:伝説新人タクシ mailto:sage [2005/12/04(日) 12:49:56 ]
>>207
みんなレスしてないのはそういうことか。
そのsocketがアドレスを知らないから。

215 名前:伝説新人タクシ mailto:sage [2005/12/04(日) 12:55:17 ]
>>207 スマン。

216 名前:伝説新人タクシ mailto:sage [2005/12/04(日) 13:13:59 ]
文字折っててテンパリすぎだオレ。
>>207
ループ回す前に接続してるのかをまず表示。

217 名前:デフォルトの名無しさん [2005/12/04(日) 13:19:50 ]
エコーサーバーワロスwww
どうしてもこれがやりたいってものがなかったら、
やっぱりサーバープログラミングが無難でいいと思う。

218 名前:デフォルトの名無しさん mailto:sage [2005/12/04(日) 13:27:13 ]
echoサーバつくるんならさ
関西弁に直してくれるとかそういうのがいいんでない?
ネットワーク部分以外で頭使いそうだけど

219 名前:デフォルトの名無しさん mailto:sage [2005/12/04(日) 16:41:20 ]
スレが汚れたね

220 名前:デフォルトの名無しさん mailto:sage [2005/12/04(日) 20:10:02 ]
メッセンジャー作ってくれ。



221 名前:デフォルトの名無しさん mailto:sage [2005/12/04(日) 20:11:49 ]
IPMsgのJava版って無かった?
鯖がいるタイプなら作っても運用できないじゃん

222 名前:デフォルトの名無しさん mailto:sage [2005/12/04(日) 20:29:10 ]
むしろ2chブラウザ作れ
ネットワーク部分は少ないが

223 名前:デフォルトの名無しさん mailto:sage [2005/12/04(日) 20:31:05 ]
2chブラウザって誰でも作れるの?
datを公開するブラウザは2chが制限してるって聞いたけど噂だけ?

224 名前:デフォルトの名無しさん mailto:sage [2005/12/04(日) 20:43:31 ]
>>222
既にあるじゃん

225 名前:デフォルトの名無しさん mailto:sage [2005/12/04(日) 20:46:42 ]
>>223
pc8.2ch.net/test/read.cgi/tech/1057329161/

226 名前:デフォルトの名無しさん mailto:sage [2005/12/04(日) 20:54:29 ]
>>224
dhcpサーバもechoサーバも既にありますが。

227 名前:デフォルトの名無しさん [2005/12/05(月) 04:38:24 ]
学部の卒業作成で全く0から何かを作るなんて不可能だろ。
既にあるものを作るのがあたりまえ。何かしらオリジナルな要素があればよい。

228 名前:210 mailto:age [2005/12/05(月) 06:50:25 ]
皆さんご回答ありがとうございます。
がんばってみます、、

229 名前:デフォルトの名無しさん mailto:sage [2005/12/06(火) 23:26:02 ]
ipv6に対応したネットワークプログラムを考えているのですが・・・
JAVAのIPV6の資料はなかなかないですね
どなたかご教授ください

230 名前:デフォルトの名無しさん mailto:sage [2005/12/07(水) 00:16:33 ]
ここじゃあかんのか?
java.sun.com/j2se/1.5.0/ja/docs/ja/guide/net/ipv6_guide/



231 名前:デフォルトの名無しさん [2005/12/08(木) 11:06:52 ]
>227
オリジナルな要素って君なら例えばどうする?
サーバープログラミングなんてオリジナルの要素を加えるなんてほとんど不可能だろ。
dhcp作るにしてもdns作るにしても、市販のものやBINDを超えるものが作れるの?学生が。

232 名前:デフォルトの名無しさん mailto:sage [2005/12/08(木) 11:24:31 ]
いや、、別に超える必要は全く無いわけだが、、

233 名前:デフォルトの名無しさん mailto:sage [2005/12/08(木) 11:39:14 ]
>>231
サーバープログラミングと言って良いかどうかは判らんが
SoftEtherは学生が作った

234 名前:デフォルトの名無しさん [2005/12/08(木) 13:38:10 ]
この板で質問しているよな学生にはまず無理だろw

235 名前:デフォルトの名無しさん mailto:sage [2005/12/08(木) 17:47:26 ]
SoftEther 作った香具師は2chで質問しまくったはずだが

236 名前:デフォルトの名無しさん mailto:sage [2005/12/08(木) 22:32:40 ]
ひげぽんよろしく、住人のレベルを超えてしまったんだろうな。<SoftEthrerの作者

237 名前:デフォルトの名無しさん [2006/01/31(火) 11:42:13 ]
Javaで書かれたプロクシサーバーソフトってありますか?

238 名前:デフォルトの名無しさん mailto:sage [2006/01/31(火) 12:18:09 ]
www.mortbay.com/software/Jetty.html
www.cs.technion.ac.il/Labs/Lccn/projects/spring97/project9/

239 名前:デフォルトの名無しさん [2006/02/01(水) 01:43:42 ]
初心者の質問じゃないと思うけど、WININETでサーバーサイドのJAVAを実行できますか?
その場合、クラス名とかfunction名とかパラメータの渡し方はどうすればいいんでしょうか?



240 名前:デフォルトの名無しさん mailto:sage [2006/02/01(水) 02:45:55 ]
釣られないぞー



241 名前:デフォルトの名無しさん [2006/03/21(火) 16:30:50 ]
マルチすみません。

ash.jp/java/java_http.htm
このサイトのURLConnectionのソースをaioeclipse ver2.0.0(JDKは1.5.0)で
流すとエラーが出るんですけどどうすればいいですか?
eclipseの設定かしら

java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.<init>(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at HttpUrl.main(HttpUrl.java:32)


242 名前:デフォルトの名無しさん mailto:sage [2006/03/22(水) 18:51:31 ]
気分がいいからこたえてやる。

そのプログラムは、"localhost"、つまり実行してるPCの80番ポートに
TCPで接続しようとしている。80番ポートは通常HTTPのポート。
なので、実行してるPCの80番ポートで待っているプログラムがない、
つまり、HTTPサーバが動いてないと、接続は拒否される。
それが、
> java.net.ConnectException: Connection refused: connect
ということ。
ANHTTPDでも動かしとけば、connectは成功するだろ。
ネットワークプログラムは常に通信相手があって成り立つってことを忘れるな。

243 名前:デフォルトの名無しさん [2006/03/22(水) 20:28:55 ]
自レスです

String proxyHost = "";
int proxyPort = 8080;
を消して
if (proxyHost == null) {
urlObj = new URL(url);
} else {
urlObj = new URL("http", proxyHost, proxyPort, url);
}
ここを

urlObj = new URL(url);

だけにしたらソースもってこれました。

urlObj = new URL("http", proxyHost, proxyPort, url);

が悪さしてたってことですか?



244 名前:デフォルトの名無しさん mailto:sage [2006/03/22(水) 20:32:20 ]
連投すみません

 String proxyHost = "";



 if(proxyHost == null)がfalseに行ってることは

上記はnullではないのですか?

nullの気がするんですが・・・



245 名前:デフォルトの名無しさん mailto:sage [2006/03/22(水) 22:26:33 ]
つjava初心者スレ

246 名前:デフォルトの名無しさん [2006/03/25(土) 18:04:07 ]
基本的な質問ですが、
あるノードからあるノードにデータが動くためには、
必ずsokcetクラスを使う必要があるのでしょうか?

247 名前:デフォルトの名無しさん mailto:sage [2006/03/26(日) 10:35:24 ]
>>41
Stringはサブクラスを作れないはずだが

248 名前:デフォルトの名無しさん mailto:sage [2006/03/27(月) 17:19:38 ]
dhcpはつまんねーな。
IM-IRCブリッジとかどう?
メモリリークしまくりで楽しそうだよ(w

249 名前:デフォルトの名無しさん [2006/03/27(月) 17:47:32 ]
>>246
ソケットがないと通信できないんだから当たり前

250 名前:デフォルトの名無しさん mailto:sage [2006/03/27(月) 19:54:08 ]
NFSとか、1台のSCSI HDDを共有してるとかはないですか、そうですか。



251 名前:デフォルトの名無しさん mailto:sage [2006/04/10(月) 17:43:05 ]
誰かcyberlink for java使って
UPnP対応ルータのポートを開けて
AddMappingするだけの簡単な
プログラムを組んでくれませんかねぇ。

252 名前:デフォルトの名無しさん mailto:sage [2006/04/11(火) 11:04:58 ]
ヒント:宿題スレ


253 名前:デフォルトの名無しさん mailto:sage [2006/05/24(水) 04:41:17 ]
UDPを使ったネットワークプログラミングについて質問です。
UDPを使ってクライアント/サーバーを作り、複数のクライアントとやり取りできるようにサーバーにThreadを継承させました。
2人以降のクライアントがパケットを送ってきたらその度新しくスレッドを作ろうと考えているんですが、どうやってパケットが届いたときに新しくスレッドを作るんでしょうか?
どうしても2人目が送ったパケットがそのままオリジナルのサーバースレッドに受信されてしまいエラーが出るのですが・・。

254 名前:253 mailto:sage [2006/05/24(水) 04:59:56 ]
少し説明不足でした。
サーバークラスの中にコンストラクタ、run()、main()と作り、main()に今のところ、
int well_known_port = SERVERPORT; // デフォルトポートナンバー

try
{
testServer server = new testServer(well_known_port);
server.start();
}
catch(IOException e)
{
System.err.println(e);
}
としてあります。
run()の中でパケットを作ったり受信したりするプロセスを全て入れてあります。

上のままではスレッドが1つしか作れてないので、クライアントが増えるたびに新しいスレッドを作りたいと思っています。
ヒントでもいいので教えていただければ嬉しいです。

255 名前:253 mailto:sage [2006/05/24(水) 22:33:12 ]
解決しましたm(_ _)m

256 名前:デフォルトの名無しさん [2006/05/30(火) 04:37:12 ]
帯域制御機能をもったjavaのプロキシソフトサーバーソフトってありますか?


257 名前:デフォルトの名無しさん mailto:sage [2006/05/30(火) 08:27:40 ]
そもそもjavaだと遅いから全てが帯域制限されて意味が無い。
delegateとかsquidをjavaに移植してくれ。

それって全く関係無い香具師がudp送って来ても鯖プロセスが増えて。。。
udpパケットの送信元偽造されて送られてくることが無い様に祈れ。

258 名前:デフォルトの名無しさん [2006/05/30(火) 11:18:50 ]
javaで書かれた普通のプロクシサーバーソフトを、sleepとか使ってちょいといじれば良いだけ。
javaとネットワークプログラミングを勉強してから一月くらいでそのくらいのことはできる。

259 名前:デフォルトの名無しさん [2006/06/10(土) 05:43:53 ]
すいません。
String ip="192.168.0.2";
int port=5555;
Socket socket = new Socket(ip,port);

以上のような接続方法はただしいでしょうか?
ホスト名ではなくIPアドレスで指定したいのですが、
どのようにすればよいかご教授ください。
よろしくお願いします。


260 名前:デフォルトの名無しさん [2006/06/10(土) 17:44:38 ]
ブラウザを作っているのですが、
POSTでエンティティボディのデータを送るときの
文字コードって決まっているのでしょうか?

たとえば、サーバーがIIS+JSPコンテナで、
クライアントで入力したものをサーバーに送る場合、
どの文字コードでサーバーに送ればいいのでしょうか?
HTMLに指定されている文字コード?




261 名前:デフォルトの名無しさん mailto:sage [2006/06/10(土) 21:42:37 ]
>>259
ただしい。
ただし、IPv6対応に問題が出る(Windows Vista以後はIPv6フル対応)が、
アンタの責任だから、まあ知ったこっちゃねえし。

262 名前:デフォルトの名無しさん mailto:sage [2006/06/11(日) 10:12:57 ]
こんなんあった
jump.sagasu.in/goto/butikire-movie/



263 名前:デフォルトの名無しさん mailto:sage [2006/06/13(火) 11:05:27 ]
socketを使って、Streaming通信中、 Broken pipe
がおこってしまう場合があります

連続的なデータを送っているのですが
クライアントが切断処理をしていないのに Broken pipe
が怒ってしまうのですが、送っちゃいけないデータなどは送っていません
なんらかの心当たりがある人いらっしゃいますでしょうか?


264 名前:デフォルトの名無しさん [2006/06/16(金) 01:42:38 ]
>>251
www.cybergarage.org/blog/archive/2006_04_01_skonnoblog.html#114503507548323193


265 名前:デフォルトの名無しさん mailto:sage [2006/06/16(金) 03:40:37 ]
間のファイヤーウォールやNATに切られてもリトライするような処理ぐらい入れろ。

POSTするときの仕様ぐらい、HTTPの仕様を読もうぜ。
つーか仕様も作らないで行き当たりばったりで変な実装するな。

266 名前:デフォルトの名無しさん [2006/06/17(土) 12:36:13 ]
Javaでtracerout出来るようになったの?

267 名前:デフォルトの名無しさん mailto:sage [2006/06/18(日) 11:46:43 ]
>>266
raw socket位投げられるだろう。

268 名前:デフォルトの名無しさん mailto:sage [2006/06/18(日) 17:08:41 ]
へ?どうやって?

269 名前:デフォルトの名無しさん mailto:sage [2006/06/18(日) 17:36:15 ]
>>268
うぜぇしね

270 名前:デフォルトの名無しさん mailto:sage [2006/06/19(月) 11:30:13 ]
Process p = Runtime.getRuntime().exec(new String[] {"traceroute", host});




271 名前:デフォルトの名無しさん mailto:sage [2006/06/21(水) 22:23:04 ]
【教えて!】
が良い味出してる

272 名前:デフォルトの名無しさん mailto:sage [2006/06/27(火) 00:11:30 ]
サーバー側でインプットストリームを常に監視して、
ストリームにデータが入ったらある処理をはじめるようにしたいのですが、
うまいやり方ありますか?
今はサーバー側のスレッドでしたのようにまってます。

while(in.available < 1)
{
  Thread.sleep(10);
}

〜ある処理〜

273 名前:デフォルトの名無しさん mailto:sage [2006/06/27(火) 01:54:51 ]
new I/O

274 名前:デフォルトの名無しさん mailto:sage [2006/07/01(土) 18:10:04 ]
>>272
BlockingI/O(通常の)で、インプットストリーム1つに対してスレッドを
1つ貼り付ける。

あるいは1つのスレッドで複数のインプットストリームを処理するなら、
>>237 の言うとおり、new I/Oを使う。

275 名前:デフォルトの名無しさん mailto:sage [2006/07/03(月) 12:14:40 ]
>>237 ではなく
>>273 です

276 名前:デフォルトの名無しさん [2006/07/04(火) 21:05:22 ]
時給1000円でJava教えてくださるかたを募集します
場所 所沢(池袋・高田馬場から直通)

i−want−to−study−java@hotmail.co.jp
(アドレスは全角で書いてあるので半角に直してください)
よろしくおねがいします

277 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 21:22:28 ]
初心者なんですがこれから、ネットワーク勉強したい思ってます。
ftpクライアント、httpクライアント、echoサーバなどのperl,cの
資料はネットに豊富にあったので、大体わかってきました。
ただ、根本的な仕組みがわかってないので、これから
どうしようか考えてます。
まずは、peer to peerで、チャットやファイル交換がしたいと思います。

パソコン一台の環境なんですが勉強できますか?
パソコン一台で、2台に見せかけて通信
とかできるのかと思いまして。
パソコン2台ないとだめなんでしょうか。
本とかサイト紹介していただけるとがんばっていけそうです。
よろしくお願いします。

スレ違いでしたら、どこか飛ばしてくださいませ。

278 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 23:38:11 ]
>>277
localhostに対してコネクション張りゃいいですよ。

279 名前:デフォルトの名無しさん mailto:sage [2006/07/06(木) 01:36:14 ]
>>278
知識不足で、具体的な方法がまだわからないですが、
できるということがわかればあとは、本などで調べたいと思います。
ありがとうございました。

280 名前:276 [2006/07/17(月) 21:29:54 ]
教える対象は超初心者です。

専門学校などでJavaを勉強されていて夏休みだけ教えたいという方も歓迎です



281 名前:デフォルトの名無しさん [2006/07/21(金) 21:55:33 ]
大阪から行きます。帝国ホテルスイーツを取ってくださるなら考える余地ありです


282 名前:デフォルトの名無しさん mailto:sage [2006/07/21(金) 22:22:09 ]
仕様:
クライアントはテレビの録画予約をするGUIアプリケーション。
クライアントから番組のチャンネル、放送開始時刻、終了時刻を送信。
サーバは予約情報をDBにストック。
サーバはDBを監視していて、予約開始時刻になったら録画APIを起動させる。
クライアントは現在の予約情報などをサーバに問い合わせて表示もできる。

さて、サーバ側はどんな実装にする?
クライアント・サーバ間の通信はソケット?それともHttp?できれFirewall越えしやすい方がいい。


283 名前:デフォルトの名無しさん mailto:sage [2006/07/21(金) 22:43:51 ]
>>282 がクライアントもサーバも書くの?

284 名前:282 mailto:sage [2006/07/21(金) 22:47:16 ]
>>283
サーバだけでいいです。


285 名前:デフォルトの名無しさん mailto:sage [2006/07/22(土) 10:44:52 ]
>>282
ICMP

286 名前:デフォルトの名無しさん mailto:sage [2006/07/22(土) 11:32:23 ]
>>282
MythTVのJava版クライアント作れよ。
www.mythtv.org/

287 名前:デフォルトの名無しさん [2006/07/23(日) 22:16:18 ]
>>286
つまりクライアントとのセッションを管理するフロントエンドシステムと
時刻を監視してイベントを処理するバックグランドシステムの
2アプリケーション/サーバの組み合わせにするってことですね。
2つのアプリケーション間は特に通信はいらないかな。あえていうならDB経由で情報をやりとりするということか。。。

288 名前:デフォルトの名無しさん mailto:sage [2006/07/23(日) 22:17:40 ]
>あえていうならDB経由で情報をやりとりするということか。。。

泣きたくなるくらい広いスコープのグローバル変数が誕生するわけですね。


289 名前:デフォルトの名無しさん [2006/07/23(日) 22:37:37 ]
>>288
もっといいやり方があるというのなら対案をだせよ。 民主党のダメ政治家かおまえは。

290 名前:デフォルトの名無しさん mailto:sage [2006/07/23(日) 22:38:44 ]
>>289
めんどいなぁ、んじゃSOAP。Axisでも使ってさ。
ほれ、コレで満足か?



291 名前:デフォルトの名無しさん mailto:sage [2006/07/23(日) 22:47:12 ]
何を揉めてるのか知らんがSOAPで組めばええやん
Firewall越えを要件に入れてるなら

292 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 00:25:01 ]
>>291
AJAXでもいいじゃん。

293 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 00:31:09 ]
プログラマの俺様ツールにブラウザアプリを採用するのか?w

294 名前:デフォルトの名無しさん [2006/07/24(月) 00:33:14 ]
>>290-292
もめてるのはフロントエンド⇔バックエンド間をデータベースを経由して情報をやり取りする部分。
ここはFirewallをこえる必要ないからhttpとは関係なくなる。

(クライアント⇔フロントエンドはAJAXでもFirewall越えるからOKなのはたしか。でも問題はここじゃない。)

295 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 00:38:03 ]
>>294
なんなの?ageは俺らをバカにしようとかそう言う意味ですか?

296 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 01:06:34 ]
>>294
Ajaxでいいなら「フロントエンド⇔バックエンド間」なんてものは存在せんだろ

297 名前:sage [2006/07/24(月) 01:07:25 ]
Httpがいいんじゃない?実装が楽だから。

298 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 01:38:05 ]
>>296
MythTVやPostgreSQLのようなアーキテクチャも勉強した方がいい。
Ajaxを取り入れるととうやればMythTVのfrontend-backgroundのあいだのやりとりを存在なくせるのか説明してくれ。

299 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 01:43:05 ]
Tomcatひとつで出来るだろ

300 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 01:45:56 ]
>>299
予約の録画開始はどうする?



301 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 01:49:03 ]
どうもせんよ、監視してAPI呼び出すだけだろ
web.xmlに監視クラス書いておしまい

302 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 10:42:58 ]
まあ思いつかないぐらいなら実装は絶望的です。外注に出したら?

303 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 11:02:45 ]
>>298
なんでMythTVにこだわるん?

304 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 22:03:42 ]
MythTVは二回しか出てきてないじゃん。


305 名前:デフォルトの名無しさん [2006/08/31(木) 13:24:54 ]
javaでFTPクライアントソフトを作成したんですが、
認証まではうまくいくんですがPASVモードでの
dataSocket = new Socket(serverIP.replace(',','.'),serverPort);
でタイムアウトが発生し接続できません。

windowsでは問題なく実行できます。

環境は
         +−−−−−−+     +−−−−−−+
LINUX−−−−|      |     |      |
         |  ルータ-  |−−−−−|  モデム  |−−−−−インターネット
WIN−−−−−−|      |     |      |
         +−−−−−−+     +−−−−−−+

ちなみにlinuxのFTPコマンドではファイル転送も問題なくできます。
原因がさっぱりわかりません。


306 名前:デフォルトの名無しさん mailto:sage [2006/08/31(木) 14:03:18 ]
PASVなのに20番を使うからです

307 名前:デフォルトの名無しさん [2006/08/31(木) 15:18:25 ]
>306
ポートは20でなく動的に接続しています。
305にも書いたけどwindowsではFTPに接続、転送できています。

308 名前:デフォルトの名無しさん mailto:sage [2006/09/01(金) 00:18:24 ]
FTPの勉強からやり直したほうがいいよ。
FTPプロトコル手順を理解出来てない。

309 名前:デフォルトの名無しさん mailto:sage [2006/09/01(金) 13:25:12 ]
>>305 の、1行のコード
dataSocket = new Socket(serverIP.replace(',','.'),serverPort);
だけでわかるわけないだろ。
PORTのバイトオーダー絡みじゃないかとエスパーレス。


310 名前:デフォルトの名無しさん mailto:sage [2006/09/02(土) 10:16:54 ]
>>308
またお前か・・・。お前こそいい加減RFC読んでくれ。



311 名前:デフォルトの名無しさん mailto:sage [2006/09/05(火) 15:57:32 ]
java.net.URLConnection con=url.openConnection();
InputStream input=con.getInputStream();
byte[] buffer=new byte[1000*1000];
int size=input.read(buffer);
String data=new String(buffer, 0, size);

url がwww.yahoo.co.jp/
のとき全部取り出せないで途中で切れて終わってしまいます。
Reader を使うと上手くできるので、解決策よりも
どうして途中で尻切れなのかなのか教えてください。


312 名前:デフォルトの名無しさん mailto:sage [2006/09/05(火) 22:15:27 ]
>>311
適当なとこまで読んだところで、readが制御返すから。
TCPの1セグメントか、タイムアウトか、バッファ最大のどれかだろ。
InputStream#readのJavaDocを熟読せよ。

313 名前:デフォルトの名無しさん mailto:sage [2006/09/05(火) 22:25:29 ]
>>312
さっそく、ありがとうございます。
タイムアウトかなと思ってたんですが、
これってライブラリーのバグの範疇だと思うのですけど…
Readerでは尻切れしないので。

314 名前:デフォルトの名無しさん mailto:sage [2006/09/05(火) 23:22:08 ]
>>313
Readerって思いっきりバッファリングするやん。

readで要求サイズすべてがいっぺんに取得できると考える方が間違い。

315 名前:デフォルトの名無しさん mailto:sage [2006/09/06(水) 00:06:38 ]
最近ではFTPのかわりにHTTPで100MBのファイルをダウンロードとか良くあるけど、このときってどうするの?
URLConectじゃなくてSocketつかえって?

316 名前:デフォルトの名無しさん [2006/09/06(水) 04:03:21 ]
Reader input=new InputStreamReader(con.getInputStream());
とやると、全部読み込めるようなので、>>314の指摘のバッファリングとかこれと何らかの関係あるのでしょうか?
java.io.InputStream か java.io.Reader かで挙動が違うのはなぜかというのだと思うのですが・・・・


317 名前:デフォルトの名無しさん mailto:sage [2006/09/06(水) 15:07:37 ]
>>316
InputStreamReaderがバッファリングするかどうかは知らんが、
InputStream#readの戻り値は、JavaDocの通り、
1以上: 読んだバイト数
0: 与えた読み込み先のbyte[]の空きが0
-1: ストリームの終わり
だ。-1かIOExceptionまで読み続ければ良い。

>java.io.InputStream か java.io.Reader かで挙動が違う
そもそも、*InputStreamはbyteを読むもので、*Readerはcharを読むものなんだが、この違いは理解してるのか?問題にならんのか?


318 名前:デフォルトの名無しさん [2006/09/06(水) 16:30:39 ]
>>317
横から失礼しますが、どうもあなたが指摘しているところはズレているようで、少し傍観してみてはいかがですか?

> だ。-1かIOExceptionまで読み続ければ良い。

それで、なにが原因なんでしょか?何を指摘したいのか、さっぱり分かりません。

> そもそも、*InputStreamはbyteを読むもので、*Readerはcharを読むものなんだが

どうも偉そうに聞こえるますが、その違いで何か関係があるなら、そのあたりを指摘すれば良いでしょう。

ところで、byteかcharかの違いで何か問題があるんでしょうか?

319 名前:デフォルトの名無しさん mailto:sage [2006/09/06(水) 17:37:11 ]
(´Д`;) …

320 名前:デフォルトの名無しさん mailto:sage [2006/09/06(水) 17:44:04 ]
>>318
ハゲワラ



321 名前:デフォルトの名無しさん mailto:sage [2006/09/06(水) 17:47:17 ]
>>319-320

じゃ、仕事も終わりだし、そろそろ風俗に行こうや!

322 名前:デフォルトの名無しさん mailto:sage [2006/09/06(水) 20:19:58 ]
お、イイッすねえ。
聖コスプレ学園なんてどうっすか?

323 名前:デフォルトの名無しさん mailto:sage [2006/09/06(水) 23:27:23 ]
おまいらセフレか彼女ぐらい作れよ。
Javaなんか弄ってても子孫は残せないぞ。

324 名前:デフォルトの名無しさん mailto:sage [2006/09/06(水) 23:33:24 ]

エロゲーほしい

誰か作ってー


325 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 07:10:56 ]
>>317
APIを写したのはわかったけど、それで君は何を言いたいわけ?

326 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 07:25:47 ]
>>325
プゲラ

327 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 07:51:22 ]
>>312
>適当なとこまで読んだところで、readが制御返すから。
これには何か根拠でもあるの?


328 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 07:52:27 ]
>>314
>Readerって思いっきりバッファリングするやん。

これには何か根拠があるの?

329 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 13:32:07 ]
>>318
>それで、なにが原因なんでしょか?何を指摘したいのか、さっぱり分かりません。
何の原因を聞いているのか知らんが、
>>311
>url がwww.yahoo.co.jp/
>のとき全部取り出せないで途中で切れて終わってしまいます。
の原因だとしたら、
>byte[] buffer=new byte[1000*1000];
>int size=input.read(buffer);
が、「1000*1000バイトか、ストリームの終わりまで読みこむ」という意味の命令ではないこと。
実際に何バイト読み込むかは実装・クラス・状況次第。
だから、readの返り値を見て、ストリームの終わりに達するか、例外が発生するまで
読み込め、と言ってるんだが。

>どうも偉そうに聞こえるますが、その違いで何か関係があるなら、そのあたりを指摘すれば良いでしょう。
尻切れになる/ならないは別にして、application/octet-stream なストリームを、
InputStreamReaderで読んだら、取り返しがつかんだろ。byte[]とchar[]は可逆変換ではない。

>ところで、byteかcharかの違いで何か問題があるんでしょうか?
データ型としてのbyteとcharなら単に1バイトか2バイト幅かだけの違いだが、
Readerがcharで返すということは、Readerへの入力のbyteシーケンスを
指定されたencodingに従ってunicode (ucs2)に変換してるわけだ。
得られたchar[]なりStringを同じencodingでbyte[]に変換しても、
元のバイト列になる保証は無い。

330 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 18:18:39 ]
>>329

>尻切れになる/ならないは別にして

勝手にそらしているようですけど、
ここでは尻切れが問題なんですけど?

>application/octet-stream なストリームを、 InputStreamReaderで読んだら、取り返しがつかんだろ。

もしかして、ここで指摘している事は、
new InputStreamReader(input, encoding)
であれば五体満足ということなんのしょうか?
文字コードは話題ではないですけど・・

>byte[]とchar[]は可逆変換ではない。

可逆変換でないから、だから、尻切れとどう関係があるんですか?

>>ところで、byteかcharかの違いで何か問題があるんでしょうか?
>データ型としてのbyteとcharなら単に1バイトか2バイト幅かだけの違いだが、
>元のバイト列になる保証は無い。

それが尻切れ(転送中断や想定外)と何か関係があるのか聞いているのですけど?
文字化けとか問題にしてないのですけど、
また勝手に解釈して関係ない知識自慢は見苦しい…




331 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 18:28:47 ]
>>329

>「1000*1000バイトか、ストリームの終わりまで読みこむ」という意味の命令ではないこと。

クライアント側に失敗となる節が無いのに、
結果が途中で尻切れになる原因が問題なのです。

「クライアント側が、どうやって何バイト読み込むかや終わりまで読み込むか」などの
解決策を問題にしているわけではありません。

結果が途中で尻切れになる原因が問題なのですが
勝手に読み替えてませんか?


332 名前:デフォルトの名無しさん [2006/09/07(木) 19:25:52 ]
いつまでも的確なレスが無くて、調べてみたんですけど、
これってまだ直ってないバグなんじゃないですか?
bugs.sun.com/bugdatabase/view_bug.do?bug_id=4188105
bugs.sun.com/bugdatabase/view_bug.do?bug_id=4125538

333 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 19:48:05 ]
じゃ、仕事も終わりだし、今日は風俗に行かないでこのスレ眺めてようや!

334 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 19:58:25 ]
>>332
それ、既に closed fixed だし、
読み込みが途中から始まるってバグだから見当違いだと思うぞ。

尻切れになるのは低レベルAPI からの出力を極力そのまま返すという意味で
便利ではないかもしれないが、正しい実装であるとはいえる。
低レベルAPI が何故尻切れになるかは >>312 が既に予想してるとおり。

もう一つ言うと、InputStream は尻切れになってはいけないとは、
どこにも規定されていないので、
その意味でも URLConnection#getInputStream() が返す
InputStream の実装は正しく、バグではない。

335 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 20:06:58 ]
正しい実装とか規定とかぬかしているけど、実際に確かめから発言してるのかな・・・

336 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 20:18:22 ]
>>335
確かめる必要なんかないよ。それとも >>311 は嘘ついてるのか?

java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/io/InputStream.html#read(byte[])
> b が null の場合は、NullPointerException がスローされます。
> b の長さが 0 の場合、バイトは読み込まれず、0 が返されます。
> そうでない場合は、1 バイト以上読み込み処理を行います。
> ストリームがファイルの終わりに達しているために読み込むバイトがない場合は、値 -1 が返されます。
> そうでない場合は、1 バイト以上読み込まれ、b に格納されます。

InputStream が規定してるのは「1バイト以上読み込む」であって
EOF か b が満杯になるまで読み込む、とはどこにも書いてない。

337 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 20:27:17 ]
available()があるってことが全てなのさ。

338 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 22:44:37 ]
>確かめる必要なんかないよ。それとも >>311 は嘘ついてるのか?

ほら、だから憶測で話してもね・・
さっきは、思い込みとかだったし。

>、とはどこにも書いてない。

何度もわざわざAPIを引用するのは構わないけど、
そのAPIから読み取って、原因は何かを>>311
指摘してほしいんじゃないか?

>InputStream が規定してるのは「1バイト以上読み込む」であって EOF か b が満杯になるまで読み込む、とはどこにも書いてない。

「EOF か b が満杯になるまで読み込む」ことを話しているのではなくて、
read(byte[])ではなぜ尻切れなのかなんだけど?
read(byte[])ではなぜ全部読み込めないのかじゃないよ。
ずいぶんと自尊心が強い人なんだね。

同じ事を繰り返していて、そろそろ醜いんだけどもう止めてくれる?
byte[]とchar[]がどうとか言ってたけど、結局なにか関係あるのか?

339 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 23:25:35 ]
べつにさ、煽られようが何だろうがべつにこっちは困らないんだよね。
レポートの締め切りに間に合わないのはあんたなんだし。

340 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 23:26:22 ]
↓ここで"勝利宣言"



341 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 00:01:53 ]
はい、readのスニペット。



int cnt = 0;

while(cnt >= READBYTES){
int tmpcnt = read(READBYTES);

if(tmpcnt <= 0){
throw nullpo;
 }

cnt += tmpcnt;
}



342 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 00:39:03 ]
誰か一人だけが悔しいみたい

プププ

今日は風俗行かなくても楽しめたな

プププ


343 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 00:49:19 ]
>>338
> read(byte[])ではなぜ尻切れなのかなんだけど?
> read(byte[])ではなぜ全部読み込めないのかじゃないよ。
……。何が違うのかを説明してくれ。

344 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 01:22:08 ]
>>338 例えば、
上は、初めから読み込もうが途中から読み込もうが、
尻切れ(終わりが途中で切れる)に関係していない。

下は、必ず初めから読み込まれている必要があって、かつ、
予定していたところ(長さ)まで読み込んで全部読み込んだといえるが、
この全部(初めから終わりまで)読み込むかどうかは尻切れと関係ない。

たしか、途中で尻切れになる原因だったよね。
日本語の解釈の差だと思うけど・・

今ちょっと忙しいからこれぐらい。
available()たしかに・・
フーゾク、俺も連れてってくれ・・

345 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 01:55:46 ]
>>343
字数が違うんじゃね?

346 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 02:08:05 ]
>>338
> read(byte[])ではなぜ尻切れなのかなんだけど?
そーゆー仕様だから。以上。

で良いんじゃないかと思ってみたりする。

347 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 06:42:42 ]
風俗もいいが、エイズで身体が腐っちゃうのは勘弁だな。

348 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 07:38:38 ]
ストリームのバイナリー転送で
途中で切れて終わったり
完了しなかったりしてるけど
int in.read()
で1バイトずつちまちまやらないと
ダメなんじゃないのか?

349 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 09:28:26 ]
InputStream in=con.getInputStream ();
byte[] buf=new byte[1000*1000];
int size=0;

for (int k=0; size<buf.length && (k=in.read())!=-1;)
{
buf[size++]=(byte)k;
}

これはチマチマですが、尻切れぜずにストリーム終わりまで読み込めます。解決策。

>>341

for (;;)
{
int sz=in.read(buf, size, buf.length);
if (size>=buf.length || sz==0 || sz==-1) break;
size+=sz;
}

でも、urlが "www.yahoo.co.jp/"などは例外が出ます。

Exception in thread "main" java.lang.IndexOutOfBoundsException
at sun.net.www.http.ChunkedInputStream.read(Unknown Source)
at java.io.FilterInputStream.read(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(Unkn
own Source)
at Test.main(Test.java:37)

とすると、InputStreamは、int read()ですむのですが、
int read(byte[]), int read(byte[],int,int)は、(どうやって使うかと言うよりも)自分で使うときはどこが使いどころなんでしょうか?

350 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 09:52:26 ]
>>329はやさしいなあ



351 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 10:15:56 ]
>>349
> for (int k=0; size<buf.length && (k=in.read())!=-1;)
> buf[size++]=(byte)k;
これ、尻切れにはならんかもしれんが、最初に 0が入らんか?

> int sz=in.read(buf, size, buf.length);
InputStream の仕様では、size が 0以外の条件で この行を実行する場合
IndexOutOfBoundsException投げないといけない事になってる。
in.read(buf, size, buf.length - size) とかしないと。

あと、size>=buf.length の条件でループ抜けるなら size += sz やった後の方が良いぞ。
ついでに言うと、sz == 0 も特に要らない。

352 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 10:18:48 ]
> これ、尻切れにはならんかもしれんが、最初に 0が入らんか?
あ、入らないね。失敬失敬。

353 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 10:45:51 ]
>>350確かにやさしいです。読み違えなかったらですけど・・

InputStream in=con.getInputStream ();
byte[] buf=new byte[1000*1000];
int size=0;

for (int k; size<buf.length; ++size)
{
k=in.read();
if (k!=-1) break;
buf[size]=(byte)k;
}

>>341 がいいたいのはこれでしょ?

for (int sz; size<buf.length; size+=sz;)
{
sz=in.read(buf, size, buf.length);
if (sz==-1) break;
}

int InputStream.read(byte[],int,int)は結局どのあたりで使うのだろう・・

354 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 11:01:35 ]
こっちね。

for (int sz; size<buf.length; size+=sz;)
{
sz=in.read(buf, size, buf.length - size);
if (sz==-1) break;
}


355 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 13:47:45 ]
>>311
>java.net.URLConnection con=url.openConnection();
>InputStream input=con.getInputStream();
>byte[] buffer=new byte[1000*1000];
>int size=input.read(buffer);
>String data=new String(buffer, 0, size);  

このコードが、「(1000*1000バイトから溢れない範囲で、)ストリームの終わりまで読め」
っていう意味では無いことは理解してる?

まぁ、理解してないから、
>>331
>クライアント側に失敗となる節が無いのに、
>結果が途中で尻切れになる原因が問題なのです。
なんて、頓珍漢なこと言ってるんだろうけど。
クライアント側で、「尻切れでいいよ」っていう意味のプログラム(>>311)書いてるのに、
尻切れにならない理由がない。もちろん、常に尻切れになるって意味ではない。

> int InputStream.read(byte[],int,int)は結局どのあたりで使うのだろう・・
そりゃ、>>353の前半よりも、>>354の方が効率が良いからだろ。
動作速度無視、動けば良い、というのだったら、int InputStream#read()だけで足りる。

byte[]、char[]云々は、
>>316
> Reader input=new InputStreamReader(con.getInputStream());
> とやると、全部読み込めるようなので、
を受けて。それで仮に読みこめたとしても、元のコードで読みたかったものとは違うものになる、って意味。
ああ、でも最終的に
>String data=new String(buffer, 0, size);  
とStringにしたいのか。なら、問題無い。


356 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 15:41:18 ]
Runtime.exec() で起動した Process のプロセスIDはどうすればわかりますか?

357 名前:デフォルトの名無しさん [2006/09/08(金) 17:10:29 ]
>>355
お前はもうしゃしゃり出てこないくていい。

お前は最後まで気がついてないだろうけど、もう解決してるんだよ。

素直に「私だけわからないので、教えてください」と書けこの阿呆が!

>このコードが、「(1000*1000バイトから溢れない範囲で、)ストリームの終わりまで読め」

って勝手に解釈している、あなたが原因です。そんな事はどこから読み取れるのでしょうか?

お前はいつまでも図々しくて頭悪いの分かったから、このスレの初めに戻ってもっと熟読してこい。

ところで、何度も同じことしか書いてないけど、お前は実際に試してないで、勝手なこと言ってるんじゃないのか?

どうも懲りてないようだから、今後はおまえの事を監視して付け狙うしかなさそうだな。

何か起こる前に、せいぜい身近なことに気を配ってた方がいいだろう。

358 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 17:12:45 ]
またまたワロタ

359 名前:デフォルトの名無しさん [2006/09/08(金) 17:23:26 ]
>355
知ってると思うけど、
int InputStream#read(byte[],int,int) は
int InputStream#read()を内部で回している使っているだけだぞ。

サブクラスで実装する人は、もっと効率が良い方法でやるとよいというだけで、
つべこべ言わずに、動作速度重視・効率も良い実装を書いてみろや!

360 名前:デフォルトの名無しさん [2006/09/08(金) 17:25:37 ]
>>355そりゃ、>>353の前半よりも、>>354の方が効率が良いからだろ。
これの意味が分からないけど、何を根拠にそういえるの?




361 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 17:27:57 ]
へー、Javaのネットワークって感情で書くのか

362 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 17:29:35 ]
逃げてばかりで
またまたワロタ

363 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 17:41:25 ]
へー、Javaのネットワークってテイラー展開で書くのかですが、何か?

364 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 17:47:04 ]
ストリームからのデータ読み取りはニュートン法で収束させますが何か?

365 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 18:03:27 ]
収束ということは、零点がある保障はどこでわかるの?

366 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 18:17:37 ]
>>364読み取りは微分できるの?

367 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 18:25:09 ]
よっぽど悔しかったんだろうな…





368 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 18:43:38 ]
テイラー級数?

369 名前:デフォルトの名無しさん [2006/09/08(金) 20:30:27 ]
今日も風俗行かないで、こっちを覗いてみたけど
いつまでも恥ずかしい奴だな
オレの代わりに、誰でもいいから奴をグーで殴ってくれないか?

370 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 22:02:49 ]
1バイト読みはバカのやることです。



371 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 22:23:33 ]
1ビット読みは学生はやらないことです。

372 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 02:44:55 ]
かっこだけつけて何も作れない奴って、一番かっこ悪いんだなぁ〜
と思った。

373 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 08:57:00 ]
>>372
お前も現状口だけだけどな。

374 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 09:41:53 ]
とりあえずおこちゃまはAPIとドキュメントの違いくらい理解してくれ

375 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 09:59:48 ]
>>374
お前はほんとに口だけだな。

376 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 12:12:41 ]
ところで、彼は尻切れになる事を理解とか納得とかできたのだろうか?

377 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 12:59:07 ]
低能、気違いの類いは放置推奨

378 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 22:08:44 ]
風俗にも行かないで
ストレスのはけ口がない
おばちゃんたちと同じのが
どこにでもいるんだな〜

379 名前:デフォルトの名無しさん mailto:sage [2006/09/10(日) 00:20:26 ]
>>376出来なかったんじゃないの?ところで君は理解できたの?

380 名前:デフォルトの名無しさん mailto:sage [2006/09/10(日) 17:43:39 ]
>>341 readのスニペット提示ありがとうございます。
これはストリームで良く使うパターンだった事を忘れてました。
>>337 それとavailable()の提示も参考になりました。



381 名前:デフォルトの名無しさん mailto:sage [2006/09/10(日) 20:57:01 ]
available()のAPIにある
>戻り値: ブロックしないで入力ストリームから読み込むことができるバイト数
このブロックって具体的に何の事ですか?

382 名前:デフォルトの名無しさん mailto:sage [2006/09/10(日) 22:36:26 ]
www.google.co.jp/search?q=socket+%E3%83%96%E3%83%AD%E3%83%83%E3%82%AF

383 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 00:20:37 ]
>>382どうも!

384 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 06:37:01 ]
でんでん!

385 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 15:34:34 ]
>>359
>>355
>知ってると思うけど、
>int InputStream#read(byte[],int,int) は
>int InputStream#read()を内部で回している使っているだけだぞ。

InputStreamではそうだが、SocketInputStreamでは、
int read(byte[], int, int)がint read()を呼び出すわけだが。
少なくともSun Javaの1.5.0では。
どこかで、ネットワークの話から、ジェネリックなInputStreamの話に遷移してたのか?


386 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 18:16:11 ]
でんでんだからじゃねーの
ところで、でんでんってなんだよ!

387 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 19:40:49 ]
>>385
お前は頭わるそうだな

388 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 01:49:48 ]
>>385
何を聞きたいの分からないんだけど、聞きたい事はそんなに大事なのか?

389 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 23:20:00 ]
Socket soc=new Socket(host,port);
BufferedOutputStream buffOut=new BufferedOutputStream(soc.getOutputStream ());
PrintStream out=new PrintStream (buffOut);

soc.close()とやると、自動でout.close()、buffOut.close()になるのでしょうか?
たとえばラップしているbuffOut.close()だとout.close()まではならないと思うのですけど。
よろしければご指導お願いします。

390 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 23:36:28 ]
よく考えると、自分で試せばいいことでした
スマソ



391 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 01:27:29 ]
試して分からなかったら聞けばいい

間違いを自分で認めることはエライ


392 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 01:46:44 ]
ソケットを使って、サーバーからクライアントに0.1秒ごとにデータを送信することを考えています。
それで↓こんな感じのを書いたんですが…
while (true) {
  out.writeByte(…);
  out.flush();
  Thread.sleep(100);
}
クライアントにデータが届くときに、0.2秒ごとに送信2回分のデータが固まって来てしまうんです。
試しに送信周期を30ミリ秒にしてみたらやっぱり0.2秒ごとに固まって来ました。
これは仕様ですか?

393 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 02:00:51 ]
始めの質問でoutとinで多少違いますが、
soc.close()ではjava.io.*関係は閉じませんでした。
in.close();
soc.close();
が作法のようです。

soc.close();
in.close();
b=in.read();
Exception in thread "main" java.io.IOException: Stream closed
at java.io.BufferedInputStream.getBufIfOpen(Unknown Source)
at java.io.BufferedInputStream.fill(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
at java.io.FilterInputStream.read(Unknown Source)
at k.main(k.java:22)

soc.close();
b=in.read();
in.close();
Exception in thread "main" java.net.SocketException: socket closed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(Unknown Source)
at java.io.BufferedInputStream.fill(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
at java.io.FilterInputStream.read(Unknown Source)
at k.main(k.java:22)


394 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 08:38:08 ]
>>392
java.net.Socketのリファレンスを読んで。
TCP_NODELAYのところ。

395 名前:392 mailto:sage [2006/09/14(木) 22:32:57 ]
>>394
解決しました!
ありがとうございました。

396 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 05:48:39 ]
風俗?女?流行?

397 名前:デフォルトの名無しさん [2006/09/16(土) 06:04:33 ]
スニペットってC$のか?

398 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 12:02:54 ]
リアルタイムOSでもなければ0.1秒おきに送信って厳しいなあ。
ヒント:JavaVMを含む世の中のOSのほとんどはプリエンプティブ処理。

399 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 12:13:21 ]
>>398
引っ込め

400 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 12:16:38 ]
RMI使ってる人いる?
EJB使ってる人は居ても
RMIをそのまま使う人に会ったことない



401 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 12:29:18 ]
オブジェクト指向な環境では、
直接叩くより、どんどんクラスライブラリをため込んでいく流儀。
ミドルウェア書く人以外は、直接使わないのが多くても何の不思議はない。


402 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 13:08:17 ]
JavaでP2Pのネットゲーム作るなら一番現実的なのがRMIだと思うんだけどね。

403 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 17:16:53 ]
RMI使ってるよ。

404 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 17:37:29 ]
ホントJAVAってお猿さん向けだなあ

405 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 18:03:31 ]
>>404
Javaが嫌になったんですけど、どれに乗り換えればいいでしょうか?
当然ネットーワークが中心です。

406 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 19:56:39 ]
嫌になったとか、乗り換えるとか、
そういう選択肢があるってことはホビー用途かい?

だったら別になんでもいいんじゃね?
動かなくてもいいんだし。

407 名前:デフォルトの名無しさん [2006/12/02(土) 12:43:46 ]
javaの代わりったって、c/c++とかたくさんあるでしょう。
tomcatとかの代用は難しいかもしれないけど

408 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 16:51:35 ]
LISPにでもしておけ。

409 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 19:24:38 ]
RUBYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY

410 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 19:35:08 ]
perlwwwww



411 名前:デフォルトの名無しさん [2006/12/03(日) 21:10:57 ]
LimeWireの検索機能って、どーやってるんですか?
Winnyは、IPアドレスを暗号化したノードを使ってますが、
LimeWireにはそれがありません。
まさか、IPアドレスを適当に作って相手がLimeWireを起動してるかチェックなんてことはやってないだろし。


412 名前:デフォルトの名無しさん mailto:sage [2006/12/03(日) 21:20:19 ]
HTTPってクラアントの送信データを全部受け取りましたってのを特定できないの?
それともContent-Lengthが必ず付いてるのが前提だった?
生ソケットで作ってていっこうにinputを切断してこないから良く分からない。

413 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 00:04:20 ]
1.0なら送り終わったらぶち切って良いよ。
HTTPのRFCぐらい読めよ。

414 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 16:25:11 ]
>>412
この頃は 1.1 だからな。普通切れない。長さは content-length だ。


415 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 20:21:35 ]
>>413
すまんね、そのうち読んでみる。

>>414
ありがとう、助かったよ。

416 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 22:51:28 ]
chunked転送にも注意汁

417 名前:デフォルトの名無しさん [2007/02/01(木) 15:12:23 ]
winxp sp2, jdk6で
勉強にネットワークスキャナのようなものを書いています。

ソケットを開く時にタイムアウトを設定したいんですが、

try{
Socket hoge = new Socket();
hoge.connect(new InetSocketAddress(url, port), 1000);
}catch(SocketTimeoutException e ){
}catch(IOException e ){
}finnaly{
if(soket != null){
socket.close();
}
}

っていうような感じで複数スレッドで回しているのですが、
存在しないアドレスだとSocketTimeoutExceptionを出した後に、
SYN_SENTが20秒ほど残ったままになります。
存在しないアドレスが複数あると、SP2のharf-open 10個制限に引っかかって
20秒たってSYN_SENTが消えるまで次のconnectがブロックされてしまいます。
こういうもんなのでしょうか???

418 名前:デフォルトの名無しさん mailto:sage [2007/02/02(金) 23:52:48 ]
IPアドレスやユーザーが使っているパソコンや携帯電話などを見分けて
タグを書き換えるということは可能ですか?

ケータイ空のアクセスは <mova.html>でリンク
<PC.html>からアクセスしたときだけタグを<pc.html>へ変更

おんなじページでもIPでリンク先のタグを書き換える仕様にしたいのですが

419 名前:デフォルトの名無しさん mailto:sage [2007/02/09(金) 20:26:29 ]
>>418
CGIかSSIの仕組み(あるいはSSIを利用した言語。PHPなど)を使えばできる。

JavaScript でもできないことはないかな。携帯では JavaScript は動かない
ものと考えて <noscript> に携帯用リンクを入れておくとかね。
(あ、でも、この頃はフルブラウザがあるのか)


420 名前:デフォルトの名無しさん mailto:sage [2007/02/09(金) 21:14:15 ]
なんでjavaスレで?って感じなんだけど
Strutsとかでも簡単に出来るよ



421 名前:デフォルトの名無しさん mailto:sage [2007/02/11(日) 19:34:27 ]
>>419
ケータイからのアクセス元のIPアドレスなんて、全キャリアあわせてもクラスCで数十程度だから、
ソースIPアドレス見て、初っ端からケータイ用にページ生成すればOKだと思う。

422 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 16:44:13 ]
質問させてください。

ただいま、ソケットを使って、ローカルにあるxmlファイルを表示するHTTPサーバを作っています。
ところが、転送の途中で接続が切れてしまう現象に困っています。
転送したいxml のファイルサイズは25kBです。

はじめはperlで書いていたのですが、そのときも同じ症状に悩まされ、
chunkedすれば直るかと思い、javaに移行したのですが、それでも同じ症状がでます。
何が原因なのかわからず、困り果てている状況です。
以下に、出力まわりのコードを載せてみますので、何か気づいた事があれば、教えていただけないでしょうか。
お願いします。

423 名前:422 mailto:sage [2007/03/05(月) 16:45:02 ]
// 出力ストリーム
BufferedOutputStream buf = new BufferedOutputStream(socket.getOutputStream());
PrintStream out1 = new PrintStream(buf);
ChunkedOutputStream out = new ChunkedOutputStream(out1,2000);

// HTTP ヘッダ
String writeStr="";
writeStr += ("HTTP/1.1 200 OK\n");
writeStr += ("Connection: close\n");
writeStr += ("Transfer-Encoding: chunked\n");
writeStr += ("Content-Type: text/xml; charset=utf-8");
writeStr += ("\r\n\r\n");
buf.write(writeStr.getBytes());

// 入力ストリーム in から出力
writeStr="";
String inputLine;
while ((inputLine = in.readLine()) != null) {
writeStr += inputLine;
}
out.write(writeStr.getBytes());


424 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 18:31:46 ]
>>423
close() が書いてないけど…… まさか close() してないとか、そんな阿呆なミスじゃないよね?

charset=utf-8 ってやっておいて str.getBytes() は詐欺だろう。getBytes("utf-8") とかしないと。
ヘッダって "\r\n" で区切るんじゃなかったけか? "\n" で区切ってるように見えるが。
PrintStream は使うな。例外発生しても、どんな例外が発生したかわからん。
out, out1, buf があるのは良いけど、out 作ったなら out以外から出力するのは止めろ。

425 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 22:55:51 ]
chunkedなのにchunk-sizeがない?

426 名前:422 mailto:sage [2007/03/06(火) 16:38:03 ]
>>424
close()は書いてありませんが、してあります。
また、4点のご指摘ありがとうございます。
getByte()の件、ヘッダの区切り文字の件("\r\n")、指摘のように直しました。
ただ、PrintStreamは使わないようにとの件に関しまして、
使わないほうがいいという事は知りませんでしたが、
ChunkedOutputStreamの引数がPrintStreamになっておりますので、そのようにしている次第です。
( import sun.net.www.http.ChunkedOutputStream; )
また、out以外 ( buf ) から出力させたのは、HTTPヘッダをチャンクさせない苦肉の策でした。
現在、ChunkedOutputStreamを使い続けるかどうかも含めて検討中です。

>>425
chunk-sizeなどは、ChunkedOutputStreamに任せました。
chunk-size \r\n *chunk のような形で出力されているようです。
RFCのデコーダ例を見る限り、その形で大丈夫だと思っています。

// ローカルのapacheに xml を転送させてみたら、chunk-sizeがファイルサイズ!一発で送ってました。 orz
// ストリームのバッファサイズの問題、ソケット生成時の諸変数の問題、その他の問題
// またまた、問題がどこにあるのか分からなくなってまいりました。
// ちなみに、サーバの主要部は JavaWorldの記事を参考にしています。

ttp://www.javaworld.jp/technology_and_programming/-/19362-1.html

427 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 00:40:51 ]
一度、全部手で作ってみたほうがよくねえかなあ

428 名前:デフォルトの名無しさん mailto:sage [2007/03/19(月) 22:29:52 ]
ChunkedOutputStreamはJakarta CommonsのIOかLangにも入ってなかったかな。
Commons HTTPClientとかにも入ってるかも。
自分は知らないで自作したクチだが。

429 名前:デフォルトの名無しさん mailto:sage [2007/04/16(月) 21:48:04 ]
>>423

ChunkedOutputStreamが何者か判らないけど、

>out.write(writeStr.getBytes());

の後にout.flush()はやっているよな?
out1は自動的にフラッシュされないぞ。


430 名前:デフォルトの名無しさん [2007/04/19(木) 22:24:33 ]
ブレードサーバをクラスタ化してJavaでゲームサーバとかって
もうそろそろ現実的な組み合わせだと思うけど、事例って無いのかな



431 名前:デフォルトの名無しさん mailto:sage [2007/04/24(火) 10:14:37 ]
クラスタ化するのにジャバが有効な理由って何?

432 名前:デフォルトの名無しさん mailto:sage [2007/04/24(火) 15:15:58 ]
JMXつかえば、SNMPマネージャでクラスタ全体の健全性チェックするのが楽とか。
そういうことかなー。



433 名前:デフォルトの名無しさん mailto:sage [2007/04/24(火) 18:57:48 ]
アプリケーションライフサイクルから言えば、速さより早さってのがあるしね。
C10Kには耐えられることが証明されてるし、
パターンプログラミングに造詣が深くて再開発に強いJavaはゲーム向きかも。

434 名前:デフォルトの名無しさん [2007/06/26(火) 14:41:00 ]
SUNのdarkstarとかって成果でてる?

435 名前:デフォルトの名無しさん [2007/07/13(金) 00:20:58 ]
ファイル転送ソフトを作りたいけどどこから始めたらいいかわからんな・・・
今日書店にいって色々探してきたんだけどソケットとRMIのどちらかを使えばいいみたいだけど

436 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 02:23:58 ]
転送の方法にもよるけど、基本的にファイルコピーするのと変わらんよ。

437 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 02:31:33 ]
ネットワーク越のファイルでtailとか可能ですか?

438 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 09:39:08 ]
>>435
RMIだとrmiregistryが必要になるよ?
>>437
ファイルってことは、一般的な意味でのネットワークファイルシステム越しのアクセス?なら
そのファイルシステムの機能次第。


439 名前:デフォルトの名無しさん [2007/07/16(月) 22:50:32 ]
[クライアント] - [ファイアウォール] - [サーバ]
ファイアウォールでサーバからクライアントへの接続確立できないようになってる場合、
Socket通信でDataInputStreamとDataOutputStreamを使用した通信は可能でしょうか?

440 名前:デフォルトの名無しさん mailto:sage [2007/07/16(月) 23:01:42 ]
Socketで接続できるか否かが問題なのであって、
Data*StreamやReader、Writerのような
Streamの修飾クラスにファイアフォールとか関係ないべ。



441 名前:デフォルトの名無しさん mailto:sage [2007/07/18(水) 00:10:11 ]
ここで聞いていいのかわからないけどTomcatに配備してあるjspを
Windowsのタスクから定期的にブラウザ通さず実行させることってできる?
一定時間ごとに自動起動したいんだけどどうすればいいかよくわかりません。

442 名前:デフォルトの名無しさん mailto:sage [2007/07/18(水) 01:55:45 ]
てめーでHTTPリクエスト送れ

443 名前:デフォルトの名無しさん mailto:sage [2007/07/18(水) 04:03:14 ]
wgetで監視とかやったなあ

444 名前:デフォルトの名無しさん mailto:sage [2007/07/19(木) 05:08:07 ]
楽勝

445 名前:デフォルトの名無しさん [2007/08/25(土) 11:40:13 ]
サーバからデータを受け取ってチャートを表示するJava Appletがあります。
そのデータを閲覧者に持って行ってほしくないのですがどうしたら良いでしょうか?

446 名前:デフォルトの名無しさん mailto:sage [2007/08/25(土) 12:02:38 ]
意味解らないけど、生データがクライアントに転送されるのがマズイって事か?
それならばサーバーでチャートを作成して画像データなんかにして送るしかないだろ
もしくは暗号化して送れ
キャプチャされるのはどうにもならんがw

447 名前:445 mailto:sage [2007/08/25(土) 12:29:44 ]
>>446
そうです。ありがとうございます。
画像も考えたのですが、
データが多いのでサーバ側で処理することを考えて断念しました。
よって、暗号化を考えてるのですが、
アプレットをデコンパイルされた場合を考えると単純にAESなどでいいのか、
それとも他に良いソリューションがあるのか悩んでしまって。
良い方法があれば教えていただけると嬉しいです。。

448 名前:デフォルトの名無しさん mailto:sage [2007/08/25(土) 13:01:49 ]
>>447
転送しちゃマズイならば転送しないのがベストでしょう
暗号化して転送しても出力するところのクラスを解析されたら生データの抽出は可能でしょ
グラフのプロットデータ程度まではサーバーで解析する
その後のデータはもれても仕方ない、が妥当なライン

暗号化がアプリケーションの目的なのか、プロットが目的なのかはっきりしないと炎上確定

449 名前:445 mailto:sage [2007/08/25(土) 13:12:10 ]
>>448
画像を生成せず出来る範囲で生データの解析を防ぎたいと思っています。
プロットデータまでの用意という方法は思いつきませんでした、ありがとうございます。

450 名前:デフォルトの名無しさん [2007/09/04(火) 07:25:49 ]
データ用のclassファイルを、サーバで動的生成すれば?
ttp://java-source.net/open-source/bytecode-libraries
ここら辺で簡単にできるし。

まあ、逆コンパイルしたら一発で見えちゃうけど。



451 名前:デフォルトの名無しさん mailto:sage [2007/10/05(金) 18:37:03 ]
ftpファイル送受信クラスつくってるんだけど、
UnixとWindowsでseparatorCharがちがうと思うのだけど
サーバのseparatorCharってどうやったら取得できますか?


452 名前:デフォルトの名無しさん mailto:sage [2007/10/05(金) 22:10:38 ]
PWD してみれば現在のパスが返るから、それ解析すればいいんじゃないかな

453 名前:デフォルトの名無しさん mailto:sage [2007/10/06(土) 17:13:32 ]
>>451
オプションで変えられるようにして決め打ちでいいんじゃね?
特定の用途であるならば、相手は決まっているだろうし

454 名前:デフォルトの名無しさん mailto:sage [2007/10/09(火) 12:14:40 ]
>>434
darkstarは少し聞くけど、Butterfly Gridって全然話を聞かないね。
重い技術・大きい技術は変化に付いていけなくて駄目だと思う。
自分も数年前は3年間ほど重い技術ばかりやってたけど
勉強にはなったけど無駄に終わった。

今は、NIOとGrizzlyとHadoop辺りに力を入れた方がいいと思う。

455 名前:デフォルトの名無しさん [2007/10/24(水) 18:00:42 ]
風俗勤務女= 魔界 ◆RC3h9.WHho = 東芝産業システム社

456 名前:デフォルトの名無しさん [2007/11/01(木) 09:07:35 ]
昨日、Java質問スレにて、レスがつかなかったので、こちらで質問させてください。

DatagramSocket.setTrafficClassをWindows2003のIPv6環境で使用された方はいらっしゃいますでしょうか?
IPv4環境ではTPCヘッダのTOSフィールドに値がセットされますが、IPv6環境でTrafficClassフィールドに値が設定されません。

457 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 10:30:47 ]
JavaDocは読んだか?
|IP (Internet Protocol) バージョン 6 の場合、tc は IP ヘッダの sin6_flowinfo フィールドに格納される値です。

458 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 10:47:16 ]
初めてSocket使ったプログラム組んでみたが、送信がうまくいきません。
何がまずいか分かる人いるでしょうか?
ちなみに、Windowsのtelnetで接続したときはうまくいったので、サーバは問題ないと思います。

// 接続
Socket socket = new Socket(host, port);
// 出力ストリーム
OutputStream out = socket.getOutputStream();
// 標準入力
BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
// 標準入力から1行読み、送信
out.write(stdin.readLine().getBytes());
out.flush();

459 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 11:04:32 ]
>>458
「うまくいかない」とは?
コンパイルエラーなのか、実行時例外なのか?
例外ならば例外を書け
例外が起きないならば、System.outでどこまで処理が進んでいるかを確認しろ

話はそれからだ

460 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 11:38:32 ]
例外は生じませんし、どこかで止まるわけでもないのです。
サーバはまず、ユーザ名の入力を求めるのですが、out.write でユーザ名を送信してもレスポンスがありません
サーバからのメッセージは in.read で受信できるんですが、、、



461 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 11:53:44 ]
止まらないって事は、stdin.readLineを抜けているんだろ?
つまり、標準入力から受け付けてないって事にならないか?

462 名前:デフォルトの名無しさん [2007/11/01(木) 12:30:46 ]
>>457 殿
ありがとうございます。
確かにそのように記載されておりました。
パケットをキャプチャして確認してみます。

そこで疑問です。
1.sin6_flowinfoとはTCPヘッダのどの部分を指すのでしょうか?
 TCPヘッダを調べてみても該当する名前が見つけられません。


2.調べたところでは、「TOSはIPv6ではTrafficClassに置き換えられた」と
ありましたので、てっきりTrafficClassに格納されると考えておりましたが、
IPv6のTrafficClassに値を設定する方法はあるのでしょうか? 



463 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 12:31:03 ]
改行(=Enterキー)を送信してない気がする

464 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 20:23:02 ]
>>463
ソレダ!どーやんの><

465 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 21:00:40 ]
事故解決しますた

466 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 21:03:43 ]
してないです><
たすけて><;

467 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 22:15:35 ]
out.write('\n');

468 名前:459 mailto:sage [2007/11/02(金) 00:16:12 ]
改行を送信してないって、相手もreadLineかよ
送信側をOutputStreamではなくて、PrintWriter使え
そうすりゃ、相手もreadLineでOKだ

469 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 05:15:41 ]
>>468
ありがとうございます
調べてみます

470 名前:デフォルトの名無しさん mailto:sage [2007/11/04(日) 01:02:08 ]
「送信元が flush していない」に清き一票



471 名前:デフォルトの名無しさん mailto:sage [2007/11/04(日) 01:36:28 ]
flushはしているじゃん
改行コードまでwriteしているつもりなんだよ、たぶん

472 名前:デフォルトの名無しさん mailto:sage [2007/11/04(日) 03:58:23 ]
>>471
よく分からんくなって来た。
あのプログラムはいったいどちら側のプログラム?
クライアント側?

だとすると telnet で接続したとか言うのはどういう事?

473 名前:デフォルトの名無しさん mailto:sage [2007/11/04(日) 09:03:47 ]
>458にしか解らんよ
それにサーバーは問題ないって書いてあるけど、サーバーとクライアントはセットでみないと通信が上手くいっているかなんかわかんね
少なくとも鯖がreadLineしてたら永遠に改行コードこなくて鯖がブロックされているはず

474 名前:デフォルトの名無しさん mailto:sage [2007/11/05(月) 03:22:58 ]
えっと、もともとTelnetで接続を受け付けてるサーバに接続するクライアントをJavaで書こうと思ったんです


475 名前:デフォルトの名無しさん mailto:sage [2007/11/05(月) 10:24:46 ]
PrintWriter使ったら解決しました

476 名前:デフォルトの名無しさん mailto:sage [2007/11/05(月) 23:59:33 ]
>>475
outをPrintWriterでラップしたってこと?
PrintWriterは環境依存だから、BufferedWriter/Readerの組を使った方が良いかと

477 名前:デフォルトの名無しさん mailto:sage [2007/11/06(火) 06:26:51 ]
>>476
PrintWriterは環境依存 ⇒ ウソ

478 名前:デフォルトの名無しさん mailto:sage [2007/11/06(火) 10:24:31 ]
>>477
あれ〜と思ってチェックしてきたら、PrintStreamと混同してました。
スレ汚しすまん

479 名前:デフォルトの名無しさん mailto:sage [2007/11/06(火) 21:26:17 ]
BufferedReaderのreadlnを使えたら便利なんですけど、
プロンプトを待つときなんかは改行コードがついてないので結局readで1文字ずつ読むしかないんですかねぇ?

480 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 08:04:24 ]
コンソールの話だとすると、環境によっては改行するまで読み出せないかもね。



481 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 18:14:56 ]
○×クイズ。×は理由もどうぞ。

1.スーパークラスを拡張してスモールクラスを宣言することができる。
2.クラスに関連づけられているメソッドをインスタンスメソッドという。
3.クラス内に変数を宣言してフィールドとすることができます。
4.例外を送出するにはthrows文を使います。
5.コンストラクタの戻り値は、そのクラスのインスタンスです。
6.java.langパッケージは自動的に取り込まれるので、java.lang.reflectパッケージも自動的に取り込まれる。
7.スレッドを一時停止するにはstop()メソッドを呼び出します。
8.抽象クラスのオブジェクトを作成することはできない。
9.Privateメンバには、クラスの外からアクセスすることができます。
10.引数を持つコンストラクタを作成することもできます。
11.コンストラクタの名前はクラスの名前と同じです。
12.複数のスレッドが共有するフィールドなどを処理する際は、メソッドにsynchronizedを指定します。
13.例外を送出する可能性のあるメソッドにはthrowをつけます。
14.‘A’はStringクラスのインスタンスです。
15.インターフェースのフィールドは定数となる。
16.インターフェースのメソッドは、処理を定義することができない実装メソッドとなる。
17.コンストラクタは、オブジェクトを生成するときに呼び出されます。
18.クラス内に一定の処理をまとめてメソッドとして定義することができます。
19.オブジェクトに関連付けられているフィールドをクラス変数という。
20.スーパークラスのprotectedメンバには、サブクラスからアクセスできる。
21.Publicメンバには、クラスの外からアクセスできる。
22.スーパークラスと同じメソッド名・引数の型・数をもつメソッドをサブクラスで定義して、オーバーロードすることができます。
23.メソッドの呼び出し元は、戻り値を受け取ることができます。
24.クラスに関連づけられているフィールドをインスタンス変数という。
25.クラスは、フィールドとメソッドをもつことができる


482 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 22:26:10 ]
○×を正反対にして回答しようかと思ったけど止めた。×の理由が面倒だ。
ってかスモールクラスってなんだよww

483 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 10:33:42 ]
>>482
吹いたwwwwwwwwww

ごめん俺もスモールクラスが理解できん

484 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 11:52:06 ]
ひねくれた回答を考えてみる実験
1.○
$ cat *.java
public class スーパークラス{}
public class スモールクラス extends スーパークラス { public static void main(String[] args){System.out.println("Hello");}}
$ javac *.java
$ java スモールクラス
Hello
2.× 設計上関連付いてても、必ずしもインスタンスメソッドじゃなくても
3.× フィールド宣言がクラス変数になるのであって、その逆じゃない
9.○ リフレクションで出来る
11.× クラスの単純名でなければならず、FQCNは使用できない
12.× synchronized文でもvolatileでも
15.× コンパイル時定数でないフィールドをインタフェースに宣言することもできる
interface Foo {
double foo = Math.random();
}
17.× newインストラクションでオブジェクトを生成した後コンストラクタを呼ばすにpopインストラクションで捨てることができる気がする
23.× 例外を投げるかもしんないし

・・・いまいち微妙

485 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 07:26:06 ]
Javaの仕様に詳しくないやつの作った甘い質問だな。

486 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 10:10:10 ]
ですます調とである調が混ざってるので減点
25ってinitializerがあるから×?

487 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 13:45:31 ]
> 10(日) 10:10:10

別に initializer があるにしても、フィールドとメソッドをもつことができることに
変わりはないと思う。

他の問題を含めて、Java でなく日本語の問題になっている部分がある点で、
あまりいい問題じゃないね。


488 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 14:03:19 ]
21. Javaは大文字小文字を区別する。つまりPublicという名前のメンバのアクセス指定による。

489 名前:デフォルトの名無しさん [2008/02/12(火) 07:06:55 ]
今、Javaのnioを使ったServerSocketChannelをselect()で待つサーバーに対して、
C言語で書いたクライアントを接続しようとしてるんですけど。

C言語のconnect()がエラーを返してしまうんです。
これって、JavaがBIG_ENDIAN、C言語がLITTLE_ENDIANで動いてるせいなんですか?

一応、connect()する際のsockaddr_in構造体はport番号をhtonsで
ネットワークバイトオーダに変換はしてるんですが...。



490 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 08:42:37 ]
関係ない。
telnetとかでそのポートにつながるか調べてみたら?



491 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 08:49:59 ]
>>489
エンディアンが気になるなら、変えてみて試せばいいのに

492 名前:489 [2008/02/12(火) 16:52:25 ]
解決しました。
Cのgethostbyname()の結果がエンディアンの関係でバグってたのが原因でした。
ちなみに、
PowerBook G4(BIG_ENDIAN) --> iMac Intel(LITTLE_ENDIAN)が失敗して、
PowerBook G4(BIG_ENDIAN) --> Power Mac G5(BIG_ENDIAN)が成功してました。

Javaのnioや内部でのバイトオーダー変換に原因があると思ってデバッグしてた自分は一体...。

493 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 13:09:28 ]
gethostbynameの結果がバグってるとは、返ってくるものが間違っていると言うこと?

494 名前:デフォルトの名無しさん [2008/02/28(木) 17:57:53 ]
少しわからないことがあるので質問させてもらいます。

今現在java.net.URL()を使ってHTTP通信を行っています。
そこで送信元ポートを指定して、通信を行いたいのですがどのようにすればいいのかがわかりません。
java.net系のリファレンスを見てもよくわかりませんでした。
初歩的な質問かもしれませんがよろしくお願いします。

これは、今のネットワークがあるポートからしかリクエストが飛ばないので、
送信元ポートを指定しなければならないためです。

495 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 18:03:37 ]
>>494
URLでは無理
そういう特殊な使い方は想定されてない
java.net.Socketを使って自分でHTTPプロトコルを喋れば可能

496 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 19:10:41 ]
URLにcreatorなかったっけ

497 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 20:20:23 ]
>>494
URLクラスをそのまま利用したいのなら>>496のいうように
送信元ポートを指定して通信するように実装したURLConnectionのサブクラスを返す
URLStreamHandlerのファクトリを作ってURL#setURLStreamHandlerFactoryで設定する。

498 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 20:42:45 ]
URLStreamHandler クラスを継承して
メソッド
protected abstract URLConnection openConnection(URL u) throws IOException
をオーバーライドして
送信元ポートを指定して通信するように実装した
URLConnection のサブクラスを返せば良いのでしょうか


499 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 20:51:52 ]
そうです

500 名前:494 mailto:sage [2008/03/03(月) 11:52:47 ]
遅くなりましたが>>495-499ありがとうございました。
がんばってみようと思います。



501 名前:そのとおり [2008/09/05(金) 13:19:52 ]
そのとおり

502 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 14:09:16 ]
URL url = somthing;
conn = url.openConnection();
とかある場合, conn.getInputStream() の戻りで返ってくる
メソッドの振る舞いをカスタマイズしたいんですけど
何か方法ないですか?


503 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 13:48:51 ]
> conn.getInputStream() の戻りで返ってくる
> メソッドの振る舞いをカスタマイズしたいんですけど
メソッドはメソッドを返せない。
getInputStream()で返ってくるInputStreamオブジェクトの振る舞いを変えたいって意味?
どういうカスタマイズをしたいかによるけれど、
getInputStream()が返すInputStreamのメソッドの動作を変えたいのなら、
必要なメソッドをオーバーライドしたFilterInputStreamクラスのサブクラスを作成して、
InputStreamオブジェクトをそのクラスでラップしてやるのがお手軽かも。

504 名前:デフォルトの名無しさん [2008/10/22(水) 14:13:51 ]
今イーサリアルのようなすべてのポートとそこを通るパケットを監視できるようなシステムを作りたいのだけど、
どうしたらイーサリアルみたいなことできるの?あれやり方ぜんぜんわからないんだけど
windowsファイアーウォールが関係してる?

505 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 14:43:26 ]
Java だけじゃ無理だろ?

JNI 使ってドライバ直接叩く気力があれば別だが...

Unix 系だと BPF とかだけど, TCP/IP スタックとは
全く別のドライバ実装になってるもん
Windows でも事情は似たようなもんだと思うぞ


506 名前:デフォルトの名無しさん [2008/10/22(水) 15:08:31 ]
>>505
それは504への・・・でいいのかな?
そうだとしてれす
やっぱ無理なのか・・・ドライバを監視してるイメージなのかな。あれは。
そっかー。

じゃああるポートをあるポートに結びつけるだけのプロキシをつくりたいの
だけど、あ、これならいけそうだ。
でもさ、いちいちプロ棋士のポートをアプリとルータ側で指定しなくちゃならなくなるよね。
何かできない?

ルータ5900ポート → 5900プロ棋士5900 → アプリ5900ポート
こんな風にはできないよね?
プロ棋士でパケットを監視するの。プロ棋士実行してないときは
ルータからアプリに直接いくの。

507 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 15:39:38 ]
>>504
Windows環境で書くと、まず、winpcapを入れる。
winpcapインストールするとき、スタートアップ時にnpfサービスを自動起動するか
聞かれるので、yesにしておく。
このnpfサービスが生きていれば、packet.dll経由でアクセスして、キャプチャできる。
npfが生きてない場合、管理者権限で、java.exe(javaw.exe)を起動しないといけない。
XPならいいけど、Vistaで面倒なことになる。
あとはjpcap使ってJavaから使う。
もっと細かいことしたければ、packet.dllに直アクセスだけど、JNIよりJNAの方が楽。

508 名前:デフォルトの名無しさん [2008/10/23(木) 12:29:47 ]
ヨドバシ.com(www.yodobashi.com)が重くて困っています。

どなたか、原因を探っていただけないでしょうか。

よろしくお願いします。

gimpo.2ch.net/test/read.cgi/kaden/1222787235/l50


509 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 12:31:42 ]
プログラミングに関する質問にしてください

510 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 21:38:12 ]
>>504
ほいなー。

netresearch.ics.uci.edu/kfujii/jpcap/doc/index.html




511 名前:デフォルトの名無しさん mailto:sage [2008/10/28(火) 16:44:13 ]
Struts と Hibernate が原因で重くなってるって?

512 名前:ともふみ mailto:tomo_deep2@yahoo.co.jp [2008/11/03(月) 11:14:08 ]
こんにちは、知史といいます。

あなたの書き込みしたものを拝見させていただきました。

私はハッキングのことについて4か月前からいろいろと考え始めました。

すると、この書き込みを来て是非ハッキングについて詳しく教えていただきたいなと
思いメールをさせていただきました。

よろしければご返事をいただきたいのですが、よろしくお願いします。
                              
 小村 知史(コムラ トモフミ)

513 名前:デフォルトの名無しさん [2008/12/16(火) 07:51:13 ]
>>401-512
オヤスミ…
  <⌒/ヽ-、___
/<_/____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄


514 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 17:31:12 ]
www.cosmicbreak.jp/home
このネトゲはクライアントがjavaとOpenGL、データベースがpostgleSQLで動いてるらしい。
javaって意外と速く動くんだね

515 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 17:42:22 ]
スルー推奨

516 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 21:11:43 ]
おまえを

517 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 07:17:31 ]
ネットワーク処理はMMOまで行くとByteBufferだけで処理してそうだな。
ThreadLocalレベルのシングルトンでByteBufferをラップした擬似パケットクラスを作ってそう。

518 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 00:50:27 ]
こやつめw

519 名前:デフォルトの名無しさん [2009/05/18(月) 15:29:01 ]
>>513
 Z
  z
  z
 <⌒/ヽ-、___
/<_/____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄


520 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 00:11:15 ]
改行は¥r¥nってRFCだっけか。
printlnで済まないのがもどかしい。



521 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 06:36:39 ]
>printlnで済まないのがもどかしい。

httpヘッダなんかを手で書いてるの?
やめといたほうが・・・

全然関係名いけどrfcテキスト自体の改行コードも\r\nなんだな
www.ietf.org/rfc/rfc2223.txt


522 名前:デフォルトの名無しさん [2009/06/18(木) 21:22:06 ]
>>521
      ∧,,∧ ∧,,∧
   ∧,,(´-ω-)(-ω-`)∧,,∧
  ( ´-ω)旦o) (o旦o(ω-` )
  (_  o[(  ´-) (-`  )]o _)
  └'ー-(_   )][(   _)ー'┘
      'ー'^ー'   'ー'^ー'


523 名前:デフォルトの名無しさん [2009/07/20(月) 19:18:23 ]
ついにできたお♪

524 名前:デフォルトの名無しさん [2009/07/22(水) 14:58:38 ]
何が出来たの?

525 名前:デフォルトの名無しさん [2009/12/23(水) 05:43:25 ]
同じく

526 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 05:54:43 ]
swing操作やキーボード操作で表示を変えてる間も、ちゃんとネットワーク処理させたいけど、両方timerでスレッドプログラミングして非同期で動く様にしとけばおk?

527 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 15:40:42 ]
>>526
なんか微笑ましい文章だな。無理やり知ってる単語繋がなくていいよ。
NW処理をGUIのスレッド(Swing/AWTのEDT)でやらなければ、GUIがブロックされることはない。

NWはSocket系使うか、NIO使うかで変わる。前者なら1つのSocketに対して1つのスレッドを作って、
スレッド内では同期処理。受信/送信でUIへのフィードバックが発生したら、EventQueue#invokeLater
でUI更新。
後者なら、基本的にはひとつのスレッドでSelector#selectして、シングルスレッドで非同期処理。
UIへのフィードバックは同様にEventQueue#invokeLater。
最大のスケーラビリティ/パフォーマンスを求めるなら、Selector#selectで、selectされたSocketChannelを
スレッドプールで処理。

528 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 21:05:19 ]
Windows上のJRubyでUDPv6のbindが出来ない問題に当たりました。

この状況に対応すると思われるJavaコードはリンク先の通りなのですが、
同様にWindows上ではエラーが生じる環境ばかりであるのか、
または逆にエラーが生じず正常動作するWindowsの環境があるのか。

自分の環境ではどのような結果になったのかを教えて頂けると幸いです。

pastebin.ca/1766399

529 名前:528 mailto:sage [2010/01/27(水) 05:35:26 ]
自己レスです。
JDK 7 b36にて上記の問題は解決されたようです。
ただし、これはVista以降のみに対応する修正であり
Windows XPでは問題が残ったままとなっています(JDK 7 b80にて確認)。
bugs.sun.com/view_bug.do?bug_id=4640544

530 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 16:00:28 ]
初心者ですが失礼します

お絵かきチャット作っているんですが

クライアントからキャンパスに描画した座標データをすべて
ArrayListに入れて

ArrayList自体を送受信しようとしているのですが・・・・・

受信
BufferedInputStream bis = new BufferedInputStream(socket.getInputStream());
ObjectInputStream reader = new ObjectInputStream(bis);*1

送信
BufferedOutputStream bos = new BufferedOutputStream(socket.getOutputStream());
ObjectOutputStream reader = new ObjectOutputStream(bos);


この書き方じゃだめですか?
*1で処理がとまります。
お願いします



531 名前:デフォルトの名無しさん mailto:sage [2010/02/13(土) 16:41:16 ]
送信側flushしないとバッファにたまったまま送信されないからじゃない?

532 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 21:54:24 ]
>>531
どうも動きましたww



しかしエラーが・・・・・
java.io.StreamCorruptedExceptionってエラー

ググッたらスレッドがどうちゃらこうちゃら
どうすればいいんだ?orz

533 名前:ああああ mailto:sage [2010/02/15(月) 22:03:50 ]
530です

あのですね
ArrayListをサーバ側と送受信したいんですが、
どうやればいいんでしょうか?

ObjectOutputStreamとか使っていいのでしょうか?
これの引数がFileOutputStreamになっていたのですが・・・


大丈夫なのでしょうか?


534 名前:デフォルトの名無しさん mailto:sage [2010/02/16(火) 11:52:54 ]
サーバ
codepad.org/eyKqVrKz
クライアント
codepad.org/otr3pBQE

535 名前:デフォルトの名無しさん mailto:sage [2010/02/16(火) 12:08:55 ]
もしかしてObjectOutputStreamを毎回作り直していないでしょうか
ObjectOutputStreamを作り直すなら対応するObjectInputStreamも作り直さないといけない
ずっと同じObjectOutput/InputStreamを使い続けるか、毎回Output/Input両方とも作り直すか
どっちでもいいけどどっちかに決めてください
片方だけ作り直すのはNG
もし同じObjectOutputStreamを使い続けるならときどきflushに加えてresetも入れてください

536 名前:デフォルトの名無しさん mailto:sage [2010/02/16(火) 19:20:34 ]
プログラムは組めるけど、ネットの仕組みが分かってない感じだなw
一般道の知識無しに、車の運転してるみたいw

537 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 10:15:11 ]
CookieManagerが動いていることを確かめるのにいい方法はありませんか?

538 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 12:33:27 ]
HTTP
TCP/IP
の違いについて教えてもらえないでしょうか?

TCP/IPはOSI第3,4層にあたるプロトコルとはわかるのですが
HTTP はOSI第何層にあたるのでしょうか?


539 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 12:37:02 ]
ja.wikipedia.org/wiki/OSI%E5%8F%82%E7%85%A7%E3%83%A2%E3%83%87%E3%83%AB

540 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 12:41:34 ]
>>539
ありがとうございます
そこで、javaの new URL(... はOSIモデルの第何層を使用しているのでしょうか?



541 名前:デフォルトの名無しさん mailto:loopy 死ね sage [2010/04/18(日) 12:43:36 ]
デジャヴ?

542 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 17:47:22 ]
>>540
プロトコルもOSI参照モデルも理解してないのはわかった。
結局のところ、どの辺から理解できてないんだ?

543 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 18:27:19 ]
>>542
GETリクエストでやりとりする方法があったり
wgetのように、すでにできあがってるものを再利用したり
web上のデータを取得する方法はたくさんあることを知りました

しかし、TCP/IPでのやりとりや、winsock2を使ったやりとりなど
手続きがいろいろあり、どれを採用すればいいのか
また、利点、欠点などがわかってない状態です

544 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 18:28:44 ]
web上のデータを取得できるサーバもあれば、
取得できないサーバもありまして、
どのサーバでもデータが取得できるものを作りたいと考えているところです


545 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 18:47:45 ]
誰もそんなこと聞いとらんがな


546 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 19:31:43 ]
相手したら負け

547 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 19:32:45 ]
釣りなのかマジなのか知らんが
質問にまともに答えないと
まともに相手される訳がない

548 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 16:45:24 ]
どの辺というのがわかりません

549 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 17:39:54 ]
pc11.2ch.net/test/read.cgi/hack/1019598968/

550 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 18:05:22 ]
pc12.2ch.net/test/read.cgi/tech/1269343909/142
pc12.2ch.net/test/read.cgi/tech/1269343909/162




551 名前:デフォルトの名無しさん [2010/09/24(金) 06:26:45 ]
え?

552 名前:デフォルトの名無しさん mailto:sage [2011/01/19(水) 00:48:25 ]
Javaの鯖で、DCOMのクライアントと通信するには
何を使えばいいの?

553 名前:デフォルトの名無しさん mailto:sage [2011/01/23(日) 19:54:15 ]
しらんけど、「Java DCOM bridge」ググってみては?

554 名前:デフォルトの名無しさん [2011/03/14(月) 00:26:37.67 ]
SocketとServerSocketを使ってファイル転送をするプログラムを作っているのですが、
クライアント側でサーバ側のIPアドレスを指定せず、ポートのみ指定するだけで
接続することってできるのでしょうか。

現状クライアント側でサーバ側のIPとポートを指定して接続しています。
サーバ側のIPアドレスを固定せずに接続したいのですが、、

555 名前:デフォルトの名無しさん mailto:sage [2011/03/14(月) 11:07:36.19 ]
>>554
住所を知らん相手にどうやって送るのかと

556 名前:デフォルトの名無しさん mailto:sage [2011/03/14(月) 15:00:47.68 ]
DNSレコードに登録していればIPアドレスを直接書く必要はなくなる

あるいは、一つだけ必ず特定のIPアドレスかドメイン名でアクセスできる案内サーバを置いて
各サーバはIPアドレスを案内サーバに通知して
クライアントは各サーバのIPアドレスを案内サーバに問い合わせる
という設計にすることもできる

どちらにしてもJava固有の手法ではない

557 名前:デフォルトの名無しさん mailto:sage [2011/03/14(月) 16:36:24.22 ]
ARP使えば可能かも知れんな

558 名前:デフォルトの名無しさん [2011/03/15(火) 03:13:47.57 ]
jxtaの質問はここでいいの?

559 名前:デフォルトの名無しさん [2011/03/15(火) 04:44:54.87 ]
だめ

560 名前:デフォルトの名無しさん mailto:sage [2011/05/20(金) 19:11:24.56 ]
学習目的に超単純なhttp proxyを作ってみようと思うが、>>237-238 のソースを読んでみるのが敷居低い?
なんかいい参考情報あったらヨロ。



561 名前: 忍法帖【Lv=2,xxxP】 mailto:sage [2011/05/29(日) 21:04:53.27 ]
にゃ

562 名前:デフォルトの名無しさん [2011/05/31(火) 11:08:48.09 ]
【 課題 】課題1
【 形態 】Java  
【 期限 】5日以内でお願いいたします。
【 補足 】edu.net.c.dendai.ac.jp/ad1/2011/kadai.html
      いきなり失礼ですが、頼るところがないのでお願いいたします。


563 名前: 忍法帖【Lv=1,xxxP】 【東電 73.8 %】 mailto:sage [2011/05/31(火) 12:27:26.38 ]
重複。

hibari.2ch.net/test/read.cgi/tech/1300950228/991
★★Java質問・相談スレッド144★★

【 課題 】課題1
【 形態 】Java  
【 期限 】5日以内でお願いいたします。
【 補足 】edu.net.c.dendai.ac.jp/ad1/2011/kadai.html
      いきなり失礼ですが、頼るところがないのでお願いいたします。

564 名前:デフォルトの名無しさん mailto:sage [2011/06/02(木) 03:20:27.73 ]
誰かが東京電機大学にチクるんじゃw

565 名前: 忍法帖【Lv=3,xxxP】 【東電 57.9 %】 mailto:sage [2011/06/02(木) 03:40:00.93 ]
通報してもしょうがない。

課題のページを外から見れなくするなり、学生のidとパスワー度で認証したらいいのにw

566 名前:天使 ◆uL5esZLBSE mailto:sage [2011/07/02(土) 19:47:46.10 ]
これ ; デリミタっていうんだけどさ、よく打ち忘れるよね
Rubyだとつけなくてよくなるんだけど
結局ただのゴミだったんだな

567 名前:デフォルトの名無しさん mailto:sage [2011/07/03(日) 13:58:31.80 ]
multi shall die

568 名前:天使 ◆uL5esZLBSE mailto:sage [2011/07/04(月) 10:17:21.48 ]
>>562
> 【 形態 】Java  
ハアァァァァァァアァァァァァァァァ??????
ゴミだし


569 名前:デフォルトの名無しさん mailto:sage [2011/07/04(月) 20:28:55.50 ]
スタックにpushで挿入した文字列を
表示するにはどうすればいいですか
((Stack)stk).printAll();
だと全部表示しちゃうので
pushで挿入した文字列だけを表示したい

570 名前:デフォルトの名無しさん mailto:sage [2011/08/02(火) 17:08:29.21 ]
SocketChannelを使って簡易チャットを作りたいのですが
ServerSocketChannelに繋がれたクライアント全員にメッセージを送ろうと思ったら
どうすればいいんですか?




571 名前:デフォルトの名無しさん mailto:sage [2011/08/02(火) 17:25:54.06 ]
ブロードキャストすればいいじゃないか

572 名前:デフォルトの名無しさん mailto:sage [2011/08/02(火) 17:29:35.89 ]
というか、わざわざ書かなくとも優秀なオープンソースのIRCサーバの
コードはいろいろあるだろう

573 名前:Perl忍者 mailto:sage [2011/08/02(火) 17:57:05.19 ]
天使いますか
きてください
天使おい
天使
くそゴミ天使

574 名前:デフォルトの名無しさん mailto:sage [2011/08/16(火) 17:23:24.25 ]
ログインが必要なサイトから画像を取得するにはどうすればいいですか?

575 名前:デフォルトの名無しさん mailto:sage [2011/08/16(火) 18:18:09.18 ]
ログインすればいいと思うが、何が問題?

576 名前:デフォルトの名無しさん mailto:sage [2011/08/16(火) 18:49:38.13 ]
何を使えばいいのかすらわからないです
URLConnectionを使えばできますか?

577 名前:デフォルトの名無しさん mailto:sage [2011/08/16(火) 20:39:11.74 ]
十中八九。
ただHTTPの知識がいると思われる。

578 名前:デフォルトの名無しさん mailto:sage [2011/08/17(水) 04:48:06.69 ]
>>574です
HttpURLConnectionを使いログイン情報をPOSTで送信したあと
画像のあるURLに移動し画像を取得する方法がわからないです
なんでもいいでのヒントください

579 名前:デフォルトの名無しさん mailto:sage [2011/08/17(水) 14:27:24.00 ]
ログイン成功したら、クッキーが返ってきてるでしょ。
画像をGETする時のリクエストにクッキーを加える。

ブラウザがやってることを、wiresharkでパケット覗けばすぐ分かる。

580 名前:デフォルトの名無しさん mailto:sage [2011/08/18(木) 08:21:55.12 ]
POSTでidとパスワードを送信してずらっと返ってきたHTML文章を見たところ
ログインはできてるようなんですがそこから他のページに行く方法がわかりません
URLを指定して移動するにはどうすればいいのでしょうか



581 名前:デフォルトの名無しさん mailto:sage [2011/08/18(木) 09:50:42.01 ]
返されたクッキー使えよ。

582 名前:デフォルトの名無しさん mailto:sage [2011/08/19(金) 03:23:23.55 ]
URI uri = new URI("***.jpg");
URL url = uri.toURL();
HttpURLConnection uc = (HttpURLConnection)url.openConnection();
InputStream fileIS = uc.getInputStream();
File saveFile = new File("sample.jpg");
FileOutputStream fileOS = new FileOutputStream(saveFile);
int c;
while((c =fileIS.read()) != -1){
fileOS.write((byte) c);
}
fileOS.close();
fileIS.close();
ログインした後↑みたいな感じでpixivにある画像を保存しようと思ったのですが
エラーは出ずに保存されたファイルは中身が何もありませんでした
同じpixivサイト内の広告画像は保存できました
何がダメなんでしょうか

583 名前:デフォルトの名無しさん [2011/09/11(日) 22:19:29.55 ]
>>582
君の頭

584 名前:デフォルトの名無しさん mailto:sage [2011/09/16(金) 20:36:18.06 ]
SocketChannelを使ってnon-blocking connect のタイムアウトの設定方法がわかりません。
調べてみると同様の問題で苦労されている方が何人かいて、解決法を書いているひともいますが、それを試してもうまくいかずで困っております。
(日本語だと、<d.hatena.ne.jp/u1tnk/20090717/1247848889> など)

例えば、
socketChannel.socket().setSoTimeout(0);
でもうまくいきません。

どなたかご教授頂けると幸いです。

585 名前:デフォルトの名無しさん mailto:sage [2011/09/17(土) 15:01:26.07 ]
SelectorでSelectionKey#OP_CONNECTとか待てばいいんじゃないでしょうか

586 名前:デフォルトの名無しさん mailto:sage [2011/09/25(日) 19:13:09.85 ]
すみません初歩的なのですが
どなたかご教示ください。

servletでWebサービス作ってます。
クライント側から

AAAA/BBBB?c=ccc&d=ddd

みたいなクエリ付きで要求されたら、

クライアントで送信時にリクエストラインのmethod=POST
と明示的に指定しても

絶対サーバー側でdoGetになってしまうのは仕様ですか?

やりたいのはdoPostで受付けて、メッセージボディの内容もクエリも
利用する事なんですが。


587 名前:デフォルトの名無しさん mailto:sage [2011/09/26(月) 18:43:36.13 ]
>>586です。
自己解決しました。
AAAA?c=ccc&d=ddd
の場合のみPOSTできないだけでした。
お騒がせしました(><)

588 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 00:21:13.39 ]
知っている方がいらしたら教えてください。

Webアプリで、とある画像を表示させたあと、ブラウザでキャッシュされた画像ファイルを消したいと思っています。セキュリティなどの特殊な用途だと思ってください。
環境は Tomcat( Servlet + Java ) での Webアプリです。
調べてみたのですが、どうやら一度ブラウザにキャッシュされてしまうとどうしようもないらしく、キャッシュをさせないように表示させる、もしくはキャッシュを消すなんて可能なんでしょうか・・・


589 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 00:31:48.36 ]
>>588
この質問をしたものです。
ひとつ発見。

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA ...........

この書き方だと、イメージはキャッシュされません。
が、HTML の中を見ると解析されてしまいますね。


590 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 00:36:03.59 ]
小手先じゃぁ無理。ところでさ、デジカメでモニタ画面を写真撮影されたらどうすんだ?てなハナシ。



591 名前:デフォルトの名無しさん mailto:sage [2011/10/26(水) 00:53:32.55 ]
>>590
そうなんですよね、スクリーンキャプチャーされたら結局ブラウザとか関係ないし…

592 名前:デフォルトの名無しさん [2011/10/28(金) 18:46:34.40 ]
>>588
むりです






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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