1 名前:じぇいそん [04/06/03 14:00] ネットワークプログラミング相談室ではいろいろな言語の質問が混ざっているようなの で、 Java 用にスレを立ててみることにしました。 Java によるTCP/IPソケットプログラミング、 ネットワークサーバーの構築、RMI 、JINI 、 分散コンピューティングなどについての技や プログラミングついてみんなで話し合いましょう!! 関連スレ: ネットワークプログラミング相談室 Port9 pc5.2ch.net/test/read.cgi/tech/1080658835/
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が一番慣れてるんで楽なんですけどね。 あ、ちなみに自分で一人で使うプログラムを暇つぶしに作ろうという程度です。 仕事ではないです(汗)