開発日誌1999年04月
- '99/04/02 7:30 (金)
- [private]
昨日は夜眠れなくて、朝になって眠くなってしまい更新できませんでした。
- [ppsd]
Action画面でのreserveListの一覧表示をアルファベット順にソートするようにしました。今まではどこにあるかわかりにくくて面倒だったからです。その時ソート処理の実装が不細工で気に入らなかったので、もう少しうまい方法はないかと思ったのですが結局前と同じ方法で実装してしまいました。できれば改善したいものです。
- [ppsd]
LinkDown処理付きのURLをクリックした場合ダウンロードするURLが表示される仕様がやはりあまりよくないように感じてきたので、元のページを表示するように変更しました。この仕様はまあバグみたいなものですが面白いかと思って放ってきました。しかし、やはり時間がかかってどうも良くないようです。
- [environment]
VineLinux環境を3/10にインストールしてからやっと3/31に移行が完了しました。
- '99/04/03 7:55 (土)
- [ppsd]
Infomationデータにアクセス回数を格納するようにしました。
- [private]
今これを書いている最中にNetscapeが暴走を始めてしまいました。gooで検索しているページです。ppsdでアクセスしているからNetscapeを立ち上げ直してもそのページにアクセスするのでまた暴走します。なんか改善策を考える必要があるみたいです。
- '99/04/05 8:05 (月)
- [private]
日曜録画したNHK杯将棋決勝のビデオにいきなり間違えて上書きしてしまいました。あまり面白い対局でもなく、決着の着いた部分までは残っているのでどうってことはないのですがちょっと落ち込んでいます。
土曜と日曜はザクソンにアクセスできなくて困りました。最近は眠くてしかたがないしで、テンションの下がった日々が続いています。
- '99/04/06 7:30 (火)
- [private]
体のリズムが壊れているのは継続中です。寝てばかりで一日が終ってしまいます。悲しいです。
- [environment]
土曜、日曜とネットに接続できなかったのが古い環境で立ち上げ直したら接続できるようになりました。動かなかった原因はTAの設定が変わってしまった事で、動いたのはハードがリセットされたためかもしれません。まあ、何にしても良かったです。
- '99/04/07 4:40 (水)
- [private]
期限切れになりそうなゴールドカードのポイントを使うためにヨドバシカメラに買物をしてきました。すっかり忘れていましたがヨドバシカメラから失効してしまうよという連絡があったのです。ちょっと得した気分です。行く前はホイール付きのマウスを買おうと思ったのですが、実際に見たらケーブルなしのマウスが欲しくなってしまいそれは高いという事で断念しました。結局Javaの本2冊とビデオテープに化けました。
- [ppsd]
作業の進捗はないのですが次のリリースの目処が立たないので、今までの分をバージョン0.2.66としてリリースしました。
- '99/04/08 7:00 (木)
- [environment]
TAのライトが点滅してデータの転送ができない状態になると今までは一度電源を切って回復させていました。プロバイダに接続できなくなる原因はどうやら、これのようです。TAの初期化がうまくいかないので通信ができなくなるということです。前の環境で起こらなかったのは、TAにたいしてきちんと初期化コマンドを送っているからですが、vineの環境のtkppxpによる簡単な設定ではそれをしていないようです。TAの電源を切るたびに、前の環境で立ち上げ直すのではムダもいいところなので、初期化コマンドを実行する方法を調べてみます。
- [ppsd]
ソースの中のクラスとメソッドの始まりの中かっこは、Javaの標準では改行せずに使うみたいなのでそれに合わせて変更していました。でも変更のあったファイルに対してだけ改行しないようにするのは忘れてしまいそうなので、今回いちどきに修正しました。
- '99/04/10 6:45 (土)
- [private]
体調不良も少し改善の方向に向かっているようです。しかし、スランプ的な状態はあまり変わっていません。今もっとも興味があるのは次世代プレイステーションという事でテレホーダイタイム中ずっとwebに情報を探してうろついています。しかし、ゲーム機は持っていない、ゲームはしない人間がこんなに夢中になるとは次世代プレイステーション恐るべしです。
- '99/04/11 7:05 (日)
- [ppsd]
ReserveListを表示する場合、ダウンロードする前の状況でも更新表示をするようにしました。
LinkDown処理で単に画面を表示するだけでもリンク先をチェックしてダウンロードしようとしているみたいです。このムダな処理を省きたいと考えています。
- '99/04/12 7:50 (月)
- [private]
ぐちゃぐちゃだった体のリズムもどうやら回復したみたいです。
- [ppsd]
LinkIndex処理の場合も更新表示がされる事に気が付きました。今まではReserveList処理の時に表示される事にしか気が回りませんでしたが、LinkIndex処理の時にも表示される事によってすでに目を通しているかが簡単に判定できる事になります。結構便利な気がしてきたので、リンク先のページが無い場合には更新表示が立っているかをチェックしてOKならばリリースしたいと思います。
- '99/04/13 7:10 (火)
- [ppsd]
LinkIndex処理でキャッシュにページが存在しない場合の更新表示がおかしいのでチェックし修正しました。抽象クラスで実装しているメソッドはfinal指定をするように原則決めました。HTTPMessageとそのサブクラスではそのように修正したつもりです。
- [ppsd]
バージョン0.2.67をリリースしました。
- '99/04/14 7:35 (水)
- [ppsd]
LinkDown処理でNullPointerExceptionが発生しているみたいです。自動巡回中に発生しているのでどのページで起きているか、LinkDown処理が問題なのかははっきりしていませんが、調査する必要はあります。また、エラー処理もどのページで発生しているかわかる仕組みを考えなくてはいけません。
- '99/04/15 7:20 (木)
- [ppsd]
昨日に引続き発生しているエラーの対応をしていました。一つだけではなく複数ありました。IOException: Broken pipeみたいに実はエラーでないものは、スタックの表示をしないように修正し、そもそもエラーのハンドリングが不十分なものをきちんと対応するようにしました。まだ、エラーの根本原因は不明な物が多いですが原因がわかるように修正を加えていますので明日には対応できるのではないかと思います。
- [ppsd]
LinkDown処理を画面から実行しようとすると動作してないのに気づきました。表示する時にムダな処理をしないようにと修正して、そもそも普通の場合のLinkDown処理を動かなくさせています。処理のムダには目をつぶり、ページを解析する部分を別スレッドにして対応したいと思います。常にLinkDown処理は動くはずだから動作しない事はなくなるはずだし、別スレッドにするから表示の場合も遅い事はなくなるはずです。もしかしたら、全体的に遅くなるかも知れませんけどそのあたりは我慢です。
- '99/04/16 7:40 (金)
- [ppsd]
LinkDown処理のバグは修正しました。無名クラスを使った別スレッド処理はきれいなのですが、ページのデータ読み込み処理が他の処理とバッテングしてしまい、何回かエラーになってしまいました。結局close処理が終った最後にLinkDown処理が発生する方法で回避するようにしました。
- [ppsd]
その他コンソールに表示されるこまごまとしたエラーを一つ一つ潰しています。もっともエラー表示されてはいるけれど処理としてはそれでうまくいっているのもあるので、単にエラーが表示されないようにするだけの修正が多いです。
- [ppsd]
バージョン0.2.68をリリースしました。
- '99/04/17 7:20 (土)
- [ppsd]
内部クラスの意味が今一つわからなかったのですが、「続Java言語入門」を読むとある特定のクラスからしか使われないクラスを内部クラスにするのは正しい設計だと書いてあるようです。確認のために読み返してみるとそんな事全然書いてないようにも見えますが、そのために使う事はできるようです。ファイル内にクラスを複数持つ事によって特定のクラスからしか使われないクラスを現そうとしてましたが、そういう場合は内部クラスを使った方がいいと思われるのですべて内部クラスに修正しました。
- [ppsd]
エラーのハンドリング処理を強化しましたが、今一つ有効でないのはRunTimeExceptionなどをキャッチしていないために、どのURLでエラーが起こっているが判別できないためでした。よって各セッションに対して最終的にすべてのExceptionをキャッチして、どのURLで問題が起こっているかわかるようにしました。
- [ppsd]
HTTPServerのgetBodyLength処理でbodyBufferInputStreamがnullの状況が起こるのですが、なぜそのような状況が起こるのか理解できないでいます。プログラムを見ているかぎり絶対にありえないように思えるのですが、再現する事もできないのではまっています。
- '99/04/18 7:50 (日)
- [ppsd]
FTPのプロキシーをサポートする作業を開始しました。現在HTTPだけをサポートしているのでその部分を一つのクラスに独立させ、ほぼ同等の機能も持つFTPをサポートするクラスを作ろうとしています。その中でabstractなmethodのアクセス制限のための修飾子の意味あいがよくわからず苦労しています。
- '99/04/19 7:30 (月)
- [ppsd]
相変わらずバカなバグを作っています。FTPプロキシーな機能を追加するためにサーバ処理の枠組を作成し、二つのポートでアクセスを待つように修正してみましたが、二つ目に作成したポートには反応がありません。わざわざjdbで調べてみたのですが、わかる事はHTTPプロキシー用のサーバスレッドを立ち上げた所で処理が止まっているという事です。また、マルチスレッド特有の問題かと思いましたが、単にサーバスレッドでrunメソッドを定義しなくてはいけないのを間違えてstartメソッドにしていただけでした。前にも同じようなミスをしているのに進歩がありません。でも、同じミスをすると言う事は私にとってはまさにマルチスレッド特有の問題なのかもしれません。
- [private]
サッカーワールドユースの日本対メキシコみていました。なにか日本の落ち着いた戦いを見ていると優勝も夢でないような気がします。次のウルグアイ戦が楽しみです。
- '99/04/20 7:00 (火)
- [ppsd]
昨日は抽象クラスSessionの設計が気に入らなくて作り直していました。RequestとResponseというHTTP特有の概念を持ち込んでSessionの中にループ構造を作ったのがおかしいと感じたので、クライアントからのInputStreamとOutputStreamという概念で作成しなおしました。それに伴い名前をServerServiceクラスに変えましたがまあまあのできではないかと思います。これを使ってデバッグ用に入出力を表示する完全なプロキシサーバをまず作ってみるつもりです。
- '99/04/21 7:20 (水)
- [ppsd]
デバッグ用に入出力を表示する完全なプロキシサーバは完成しました。訳のわからない所でSocketExceptionを起こしてはいますが問題ないみたいです。しかし、HTTPのデータにはバイナリデータが含まれているため、データをだらだらと画面に表示するとわけわかんなくなってしまいます。まあ元々FTPのプロキシサーバのデータの流れを見るのが第一目的だったからそのために有効利用できればいいのですが、汎用にならないのはちょっと残念に感じます。
- '99/04/22 7:30 (木)
- [ppsd]
FTPプロキシの機能を入れようといろいろ調べていますが、ISPのFTPプロキシとはどのようにやりとりをしているか調べようとして実はFTPプロキシサーバが元々ないことに気づきました。今まであるとばっかり思っていたとは老化の兆候に違いありません。
- [private]
サッカーワールドユース日本決勝進出おめでとう。
- '99/04/23 7:10 (金)
- [ppsd]
NetscapeがFTPプロキシサーバを使う場合、そのプロトコルはhttpそのものでURLの部分がftpに変わる事にやっと気づきました。本当のFTPプロキシサーバをサポートする必要はなかったのです。というわけで簡易版のFTPプロキシの機能のサポートはめどがたちました。明日はリリースしたいです。
- [private]
久しぶりにNetscapeのbookmarkファイルの整理をしようとしたら、いろいろと面倒で疲れてしまいました。当初は簡単に終らせて、残りの時間でppsdを修正してリリースするつもりだったのに全然だめになりました。整理だけでも終らせようとしましたが、それも結局終らず根性無しの私は明日に延ばしてしまうのでした。
- '99/04/24 8:00 (土)
- [ppsd]
JavaのAPIのURLクラスのopenStreamでFTPのデータを取得しようとしていますが、どうもうまく行きません。FTPの理解が不十分な事もあってなかなか進まないし、やはり自分でFTPの機能を実装しようと今思っています。
- '99/04/25 7:35 (日)
- [ppsd]
FTPのプロキシ機能の実装を相変わらずやっています。全然進まない泥沼状態かと思いましたが、なんとか目処がたってきました。しかし、FTPを全然理解していないで作業をしているのでわからない所だらけです。PASVとPORTコマンドの使い分けの基準がまるでわかりません。PORTコマンドを発行して500エラーで戻ってきたのですが、何が悪いかよくわかりませんし、PASVで処理するとうまくいきます。不思議です。
- '99/04/27 7:50 (火)
- [ppsd]
ようやくFTP機能が動いたみたいなので、とりあえずバージョン0.2.69としてリリースしました。
- [environment]
昨日、ネットワークにうまく接続できませんでしたが、ようやく原因がわかったように思います。良かったです。
- '99/04/28 1:40 (水)
- [ppsd]
リリース前の確認ミスで致命的バグ入りのプログラムをリリースしてしまいました。修正して0.2.70版として緊急リリースしました。
- '99/04/29 7:40 (木)
- [ppsd]
ppsdを久しぶりにリリースしたら、虚脱状態です。高本さんのツールもチェックしなくてはならないのですが、まだしてません。FTPの処理ももう少しまともにするのが一番したかったりするのですが、結局これにも手をつけていません。困ったものです。
Top page
Index page
e-mail: (em6t-kbt@asahi-net.or.jp)