スペックではCPUが200Mhzでメモリが64MBという構成に玄箱はなっているけれど、ウェブアプリケーションを動かすサーバとしてこの性能はどうなのかわからなかったけれど、実際に動かしてみると実用にならない程に遅いということがわかった。ユーザがログインするだけで30秒もかかり、ユーザ登録の入力チェックだけで1分以上かかってしまうという結果になった。これほど遅いとは思わなかった。この性能のサーバでは静的なホームページ公開か単一スレッドの掲示板cgiを動かすのが精一杯だと思われる。これでは動かすこともままならないので、中古のサーバを購入してきてそれでテストしてみることに。こんどのスペックはCPUはpentiumIIIの933Mhz*2で、メモリは1GBという構成でテストしてみることに。結果はどうなることやら。これでもろくに動かないとなると新しく最新CPUのサーバを新調するしかないが・・・。交差運転日記玄箱でアプリケーションサーバの構築にコメントブラウザsafariのフォーカスsafariというブラウザのjavascriptについて。親画面からサブウインドウをopenした後、サブウインドウ側からフォーカスを親画面に渡す方法が他のブラウザとは違うようなのでメモ。safariではjavascriptでフォーカスを渡す場合、現在フォーカスが当たっているウインドウのフォーカスをblurしてからでないと他の画面にフォーカスを渡すことができない模様。親画面からサブウインドウを開いて、サブウインドウでの処理が終わった後に再び親画面へフォーカスを渡す場合は、window.blur();window.opener.focus();という風にする必要がある。javascriptブラウザsafariのフォーカスにコメントウェブブラウザの違いによる文字化けウェブアプリケーションを作成する場合には避けては通れない問題の一つに文字化けがある。日本語データをクライアントとサーバでやりとりする場合にはURLエンコードをする必要があるので、それをデコードしたりする場合に問題が高確率で発生する。jspによるウェブアプリケーション作成時にも文字化けの問題が発生したのでメモ。クライアントからデータをpostする場合に、ブラウザによって文字が化ける場合と化けない場合がある。request.getParameter(“Value”)でクライアントから送られた日本語データをサーバで受け取った場合に通常の状態ではfirefoxでは文字化けせずに受け取ることができたが、その他のブラウザ(ie,opera,safari)では文字化けが発生してしまった。サーバ側でrequest.getCharacterEncoding()の値を確認してみたところ、firefoxには文字コードが指定されていたが、その他のブラウザの場合は値がnullとなっていた。サーバ側でrequest.setCharacterEncoding(“UTF-8”)とすれば問題解決かと思ったけれど、そう簡単な問題でなく、サーバにリクエストが届く前にcharacterencodeingを指定しなければならない模様。解決方法は、フィルタークラスを使って、リクエストの文字コードを指定してあげることで解決をすることができる。viewからcontrollerへ命令を出す前に、文字コードの指定をしてからcontrollerへ値を渡すということになる。他にセンスが悪い解決方法としては、requestの環境変数からブラウザを判別して、問題のあるブラウザのみ文字コードの変換をするというのもあるけれど、これはブラウザの挙動を逐一チェックしなければならないので解決策が見つからない場合の最後の手段。postデータの文字化け問題はフィルタークラスを通すことで解決をすることが可能。closedというエラーが発生した。resultsetを単なるオブジェクトとして、vbで言うところのrecordsetのような感じで扱うことはできない模様。データベースへのコネクションとステートメントを確立してresultsetに結果を放り込む、この一連の経過でのみresultsetは扱うことができる模様。コネクションとステートメントを切断すると同時にresultsetもcloseされてしまう。代替案として、多重配列でresultsetの内容をセットしておくという方法を採ることにした。closedにコメント抽斗の意味ネットで調べ物をしていたら「抽斗」という見慣れない言葉が使われていた。なんて読むのかわからなかったので国語辞書で検索をかけてみてもヒットしない。googleで調べていると、どうやら「引き出し」という意味らしい。国語辞書にも載っていないらしく調べるのに苦労した。