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稼働中にサーバーが落ちたから、変な状態でキャッシュが残っていたのかな…?

JQuery Mobile α2からβ1にすると各アイコンがずれて表示される

JQuery Mobileをα2からβ1に置き換えると、各アイコンがずれて表示される問題が発生しました。

調べてみると、どうやらこの間にアイコン画像の修正が入ったようで、cssに付属するアイコン画像類も置き換えないといけないという事が分かりました。

画像を置き換えると綺麗に表示されました!
通りでインターネットに似たような情報が落ちてないわけですよ…。

という事で、同じような境遇の方のために、記事あげておきますです。
どなたかの救いになりましたら。

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がすぐわかる
  • 結果をツリーで表示
    • 最終的な画面遷移後の状態が、応答データタブでわかる
  • グラフ表示
    • 結果一覧をグラフィカルで表示してくれる

サービス一覧からサービスを削除する


sc delete サービス名

サービス名は、サービス一覧から、削除したいサービスのプロパティ画面で確認できます。

たとえば一覧画面には「Apache Tomcat」と表示されていても、実際のサービス名は「Tomcat5」だったりするので注意が必要です。

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%