Hudsonを起動するとNoClassDefFoundErrorが出て起動できない
Hudsonが配置されているTomcatを起動すると、
2011/07/29 1:39:08 hudson.WebAppMain contextInitialized
致命的: Failed to initialize Hudson
java.lang.NoClassDefFoundError: hudson/Main (wrong name: Main)
が出力され、Hudsonが起動できなくなってしまいました。
いろいろ調査したところ、
$TOMCAT_HOME/work/Catalina/localhost/hudson
を消して再起動したら起動するようになりました。
たぶんHudson稼働中にサーバーが落ちたから、変な状態でキャッシュが残っていたのかな…?
rel="external"のaタグで自動遷移
JQuery Mobile α2で、以下のようなページを作成していました。
<div data-role="page"> <div data-role="content"> <a rel="external" href="<%= url %>" id="eoBtn"></a> </div> <script type="text/javascript"> $('#eoBtn').click(); </script> </div>
つまりこの画面に遷移すると、aタグのhrefに指定されたURLに自動遷移するというギミックなのですが、JQuery Mobileをβ1にするとこれが動きません。
(厳密には、この画面には遷移してonClickイベントは実行されるのですが、hrefのURLに遷移しません)。
いろいろ調べて、以下のようにすると動作するようになりました。
<div data-role="page"> <div data-role="content"> <a rel="external" href="<%= url %>" id="eoBtn" onclick="window.location=$(this).attr('href')"></a> </div> <script type="text/javascript"> $('#eoBtn').click(); </script> </div>
テストシナリオの最後に追加すべき3つのリスナー
- 結果を表で表示
- とりあえずSuccess/Errorがすぐわかる
- 結果をツリーで表示
- 最終的な画面遷移後の状態が、応答データタブでわかる
- グラフ表示
- 結果一覧をグラフィカルで表示してくれる
Tomcat6 + Eclipseでリモートデバッグ
リモートデバッグを行う際の設定は、Tomcat6では以下のように変わっています。
startup.batの修正
24行目あたりに以下を追加
set JPDA_ADDRESS=8000
set JPDA_TRANSPORT=dt_socket最終行を以下のように修正
call "%EXECUTABLE%" start %CMD_LINE_ARGS%
↓
call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS%
catalina.batの修正
以下の行を以下のように修正
set _EXECJAVA=start "Tomcat" %_RUNJAVA%
↓
set _EXECJAVA=start %_RUNJAVA%