S2StrutsでThrowsInterceptorが呼ばれない

WARN org.apache.struts.action.RequestProcessor - 処理できない例外がスローされました: class org.seasar.struts.exception.ActionMessagesException

で少し悩む。

作成したアクションクラスのスーパークラスにインタフェースを指定していて、
そのインタフェースのメソッドのみに「actionMessagesThrowsInterceptor」が適用されていたので、サブクラスで追加で作成したアクションメソッドには適用されなくなっていただけでした。

サブクラスで追加で作成したアクションメソッドに

@Aspect(value = "actionMessagesThrowsInterceptor")

としたら適用されるようになった。

[追記]
s2-framework-2.4.43
s2-extension-2.4.43
s2-tiger-2.4.43
sa-struts-1.0.4-sp8

LAN アダプタ不具合

LAN内に1台だけインターネットに繋がらない端末があったので調査。

ルーターからDHPCでIPアドレスを取得できている
ping ルーター が応答なし
ping LAN内PC が応答なし

ということで、LAN内のPCからも対象端末へのpingが通らない。
ケーブルを疑ったが、ケーブルを変えても変わらず。

とりあえず再起動してみると、以下のメッセージが出ていた。

... adapter's configuration is corrupted or has not been
... Boot Agent cannot continue.

のようなエラーメッセージが表示されていた。

そういえばログにも
The EEPROM Checksum Is Not Valid
のような警告が多発していたので、LANボードのエラーで間違いないのではないか。

http://ossmpedia.org/messages/linux/2.6.9-34.EL/51847.ja

【解決しました!!】

java.lang.NoClassDefFoundError: org/apache/xerces/dom/DocumentImpl
at org.apache.torque.task.TorqueJDBCTransformTask.createDocumentImpl(TorqueJDBCTransformTask.java:217)
at org.apache.torque.task.TorqueJDBCTransformTask.doExecute(TorqueJDBCTransformTask.java:181)
at org.seasar.dbflute.task.bs.DfAbstractTask.execute(DfAbstractTask.java:93)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:390)
at org.apache.tools.ant.Target.performTasks(Target.java:411)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1397)
at org.apache.tools.ant.Project.executeTarget(Project.java:1366)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1249)
at org.apache.tools.ant.Main.runBuild(Main.java:801)
at org.apache.tools.ant.Main.startAnt(Main.java:218)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
2011-01-09 01:08:38,296 [main] INFO (DfDataSourceHandler#destroy():115) - ...closeReally()
2011-01-09 01:08:38,312 [main] INFO (DfAbstractTask#showFinalMessage():198) -

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
[Task End]: 00m00s719ms *Abort

DBFLUTE_CLIENT: {tkk}
database = mysql (MySQL 5.0.27-community-nt)
language = java
container = seasar
package = tkk.dbflute

DBFLUTE_ENVIRONMENT_TYPE: {df:default}
driver = com.mysql.jdbc.Driver
url = jdbc:mysql://localhost:3306/tkk
schema = {tkk.$$NoNameSchema$$ as main}
user = tkk
props = {}
additionalSchema =
dataLoadingType = ut
refreshProject = tkk
_/_/_/_/_/_/_/_/_/_/ {JDBC}


※自己解決しました。

この現象はapache-antのバージョンを上げたことが原因のようです。
最近バージョンを上げたことを思い出し、もとに戻したらビルドが成功sるうようになりました。

apache-ant-1.8.1→×
apache-ant-1.7.0→○


何かおわかりの方がおられましたらご教示ください。

dbflute-0.9.7.8 jdbcタスクでNoClassDefFoundError

dbflute-0.9.7.8でantのjdbcタスクで以下の例外が発生します。トラックバック元の現象と同じですが、どのような原因が考えられるのでしょうか?

DB:mysql-5.0.27

dbflute.logでログを確認すると
java.lang.NoClassDefFoundError: org/apache/xerces/dom/DocumentImpl
の例外が発生しているのですが、
mydbflute/dbflute-0.9.7.8/ant/lib/xercesImpl.jar
があるので問題ないかと思ったのですが・・・

何か特別な設定などが必要なのでしょうか?

行った操作は、
1.OSはWindowsXPIDEがEclipse3.3.2にて
2.Dolteng ProjectでPresentation「SAStruts」Persistence「None」でプロジェクトを作成
3.DBFlute Wizardsの「DBFlute New Client」でLatest Version(0.9.7.8)でクライアントを作成。
4.playsql/replace-schema.sqlを編集。
5.replace-schema.batを実行(エラーなし)
6.jdbc.batを実行(エラー)

6のログ全文は以下です。

2011-01-09 01:08:37,562 [main] INFO (DfDBFluteTaskUtil#getBuildProperties():82) - ...Using contextProperties: build.properties
2011-01-09 01:08:37,578 [main] INFO (DfDBFluteTaskUtil#getBuildProperties():125) - [Build-Properties]: size=1
2011-01-09 01:08:37,578 [main] INFO (DfDBFluteTaskUtil#getBuildProperties():127) - torque.project = tkk
2011-01-09 01:08:37,578 [main] INFO (DfDBFluteTaskUtil#getBuildProperties():129) -
2011-01-09 01:08:37,656 [main] INFO (DfDataSourceHandler#create():72) - ...Creating data source:
2011-01-09 01:08:37,656 [main] INFO (DfDataSourceHandler#create():73) - driver = com.mysql.jdbc.Driver
2011-01-09 01:08:37,656 [main] INFO (DfDataSourceHandler#create():74) - url = jdbc:mysql://localhost:3306/tkk
2011-01-09 01:08:37,656 [main] INFO (DfDataSourceHandler#create():75) - user = tkk
2011-01-09 01:08:37,671 [main] INFO (DfDataSourceHandler#createConnection():161) - ...Connecting to the database:
2011-01-09 01:08:38,187 [main] INFO (DfDataSourceHandler#processConnectionMetaInfo():215) - product = MySQL 5.0.27-community-nt
2011-01-09 01:08:38,203 [main] INFO (DfDataSourceHandler#processConnectionMetaInfo():216) - driver = MySQL-AB JDBC Driver mysql-connector-java-5.1.12 ( Revision: ${bzr.revision-id} ) for JDBC 3.0
2011-01-09 01:08:38,203 [main] INFO (TorqueJDBCTransformTask#doExecute():176) -
2011-01-09 01:08:38,203 [main] INFO (TorqueJDBCTransformTask#doExecute():177) - ...Starting to process JDBC to SchemaXML
2011-01-09 01:08:38,203 [main] INFO (TorqueJDBCTransformTask#doLoadPreviousSchema():970) - ...Loading previous schema (schema diff process)
2011-01-09 01:08:38,234 [main] INFO (TorqueJDBCTransformTask#doLoadPreviousSchema():973) - -> no previous (first time)
2011-01-09 01:08:38,234 [main] ERROR (DfDBFluteTaskUtil#logError():203) - Look! Read the message below.
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Failed to execute DBFlute Task 'JDBC'.

[Advice]
Check the exception messages and the stack traces.

[Database Product]
MySQL 5.0.27-community-nt

[JDBC Driver]
MySQL-AB JDBC Driver mysql-connector-java-5.1.12 ( Revision: ${bzr.revision-id} ) for JDBC 3.0

mysqldump オプションについて

mysqldump 5.0.45

大量のデータをダンプし、復元しようとすると以下の例外が発生。
ERROR 2013 (HT000) at line xxx: Lost connection to MySQL server during query

ダンプファイルのエラー行数をみてみると長いSQL文が生成されていた。

[オプション]
http://dev.mysql.com/doc/refman/4.1/ja/mysqldump.html

この中のオプションで、

  • e, --extended-insert

というオプションがあり、これがデフォルトで使用されているよう・・・

これは、「さらにコンパクトで速い挿入ステートメントを提供」ということらしいが
これを解除して復元出来るようになった。

mysqldump --opt --extended-insert=false -uroot -p database > dump.sql

seasar2処理時間が長くなった場合

Eclipse3.3.2 で maven2 プロジェクトで開発しています。
HotDeployを使用。

s2-framework 2.4.37
dbflute
sa-struts 1.0.4-sp5
s2-axis2 0.5.0
dbflute-runtime 0.9.5.3

ブラウザで確認しながら作業していると、突然すべての画面遷移にかかる時間が
長くなってしまい、SVNで正常に動作していた時のソースに戻しても同じ現象が
でた。

コントロールパネルのインターネットオプションで履歴などを削除して、
プロジェクトを一旦削除して、再度チェックアウトしたら直った。

プロジェクトになにかゴミがのこってたのかな〜?