バグの要因

Posted by & filed under Programming(Web etc).

①仕様詰めの甘さ
②開発中の仕様変更
③テストの煩わしさ
④デグレード(修正したプログラムにたいして、修正が原因による別の問題が発生すること)
⑤開発者のスキル

バグ(Bug)の語源:Cobolの設計者であるGrace Hopper氏が作った言葉です。
1945年に発生した、ハーバード大学のリレー式コンピュータ「MarkI」故障原因が、回路に混んだ虫だったことから・・・・・・…

Strutsのトラブルシューティングメモ

Posted by & filed under STRUTS.

uebu: Strutsのトラブルシューティングメモ:
ここに書いてある原因と解決策はあくまで私がやったミスとその解決策であり、 その現象に対する原因や解決策がすべて書いてあるというわけではありませんのでご注意下さい!

  • フォワード先が空白になる
    ・mapping.findForward()で指定したフォワード名がstruts-config.xmlのActionの定義に書かれていない。
    ・Actionがexecuteメソッドをオーバーライドしていない。 またはメソッド名が間違っているため、正しくオーバーライドできていない。
    ・Actionのexecuteメソッドのシグネチャが異なるため、正しくオーバーライドできていない。
  • JSP文書にアクセスするとJavaScriptエラー
    ・html:formタグのfocus属性に書かれた名前の入力欄(プロパティ)が存在しない。
  • サーブレット action が利用できません
    ・struts-config.xmlの構文エラー、 またはcontrollerタグやpluginタグに記述したクラスがロードできないなどの理由で、 ActionServletの初期化に失敗している。 →サーブレットコンテナのログを見て、エラー原因を解消します。
  • パス /****** に対するリクエストは無効です
    ・html:formのaction属性(など)として指定したパスが、struts-config.xmlに定義されていない。
  • javax.servlet.ServletException: Exception creating bean of class …: {1}
    ・struts-config.xmlのform-beanに書いたクラスが存在しない。
    ・struts-config.xmlのform-beanに書いたクラスがActionFormを継承していない。
    ・struts-config.xmlのform-beanに書いたクラスがインスタンス化できない (例:抽象クラス、引数のないpublicのコンストラクタがない)
    ・struts-config.xmlのform-beanに記述するDynaActionFormなどのクラス階層が間違っている。 org.apache.struts.action.とorg.apache.struts.validator.に特に注意。
    ・DynaActionFormのつもりで間違ってActionFormと書いている。 ActionFormは抽象クラスなのでインスタンス化できません。
  • html:formの入力内容が自作Form

struct and MVC

Posted by & filed under STRUTS.

MVC–Struct:
モデル(Model:ビジネスロジック–JavaBeans–Javaのクラスで実装しても、EJBを用いて実装してもよい)
ビュー(View:プレゼンテーション–JSP)
コントローラ(Controller:モデルとビューを制御–サーブレット)
model2����

STRUCTSの基本動作
まず、ブラウザからHTTPリクエストが送られます。すると、コントローラであるSTRUTSのアクションサーブレット(STRUTS提供)は、指定のモジュールのリクエストプロセッサ(STRUTS提供するリクエスト処理を制御するクラス)へHTTPリクエストを転送します。リクエストプロセッサは、HTTPリクエスト中にフォーム情報がある場合、その情報を保持するためのアクションフォームBean(利用者が作成)にセットします。
リクエストとアクションフォームBeanの対応は、モジュール設定ファイル(structs-config.xml)に記述されています。すなわち、HTTPリクエスト内の入力フォームの情報を、Structsが自動的にBeanにセットします。
次に、HTTPリクエストのURLに対応したアクション(ビジネスロジックを呼び出すためのクラスで、利用者が作成する)を呼び出します。呼び出されたアクションでは、ビジネスロジックを実行します。次に、ビジネスロジックの結果などを表示するための情報をJavaBeansやActionFormBeanクラスにセットし、JSPからアクセス可能なコンテキスト保持させます。続いて、次にHTTPリクエストの処理を行うリソース(JSPページやアクションなど)の情報をActionForwardクラス(Strutsが提供)としてリクエストプロセッサに返却します。その後、アクションから返却されたActionForwardクラスが示すリソース(JSPページなど)を呼び出します。呼び出されたJSP内では、表示のために必要な情報をStrutsが提供するカスタムタグライブラリなどでコンテキストから取り出し、ページを作成します。
最後に、JSPによって作成されたページをHTTPレスポンスとして返却します。…

ラジオボタンにはlabelタグのforが便利

Posted by & filed under JavaScript.

Zopeジャンキー日記 :ラジオボタンにはlabelタグのforが便利:

はてなブックマークの「注目エントリー」で、3ユーザと5ユーザの切替ボタンが、
ラベルと連動していないことに気づいた。

HTMLソースでいうと、いま

<input value=”3″ name=”threshold” type=”radio”>
3users
<input value=”5″ name=”threshold” type=”radio”>
5users

のようになっていますが(ちょっと簡略化しています)、

<input value=”3″ name=”threshold” type=”radio” id=”button1″ />
<label for=”button1″>3users</label>
<input value=”5″ name=”threshold” type=”radio” id=”button2″ />
<label for=”button2″>5users</label>

のようにすれば、ラベル部分もクリックできるようになります。

私はこの切替ボタンをよく押すので、

病気・けがの時–2006.08.06から

Posted by & filed under 英会話.

◎診察を受ける
Please call an ambulance.
診察を受けたいんですが。(I’d like to see a doctor.)
どうしましたか?(What’s wrong with you? What’s the matter? Is anything wrong?)
どんな症状ですか。(What are your symptoms?)
Let me check your blood pressure.
Are you taking any medication regularly?(常用している薬はありますか?)

◎症状を訴える
彼女は気絶しました。(She passed …

カラオケを楽しむ–2006.08.05

Posted by & filed under 英会話.

◎カラオケを楽しむ
What is karaoke? カラオケとは何なの?
Singing along with recorded music. 録音された音楽と一緒に歌うのです。
1曲リクエストしたいな。 I’d like to request a song.
Let’s sing a duet.(デュエットしよう。)

第1章 毎日の生活でつかうひとこと
[2]余暇を楽しむ…

知り合いと飲みに行く–2006.08.04

Posted by & filed under 英会話.

◎ 知り合いと飲みに行く
I need a drink.(一杯飲みたいよ)
Do you have any beer?(ビールがありますか。)
ぼくは飲み歩くのが好きだ。(I like to go barhopping.)
最初の一口が最高だね!(The first sip is the best!)
これに限るよ!(Nothing beats this!–It really hits the spot!)
Would you like a refill?(もう1杯どう?)
日本酒はどうですか?(How do you like sake?)
べろんべろんだ。(I’m …

ゴルフをする–2006.08.04

Posted by & filed under 英会話.

◎ゴルフをする
一緒にゴルフをしますか?(Do you want to join me? Would you like to play golf with me?)
そのほかにいくらかかりますか?(Are there any extra charges?)
There are four of us.(私たち4人です。)

第1章 毎日の生活でつかうひとこと
[2]余暇を楽しむ…

コンサートに行く–2006.08.03

Posted by & filed under 英会話.

◎コンサートに行く
I’d like two A-seat tickets for October 3rd,please.
この席は空いてますか?(Is this seat taken?)
いつのチケットならありますか。(When do you have tickets?=Which date do you have tickets for?)

第1章 毎日の生活でつかうひとこと
[2]余暇を楽しむ…