seasar

s2jdbc-genでTSVECTOR型(PostgreSQL)を使う場合

migrateでエラーが出る。 とりあえずTSVECTORはトリガーで更新するからdumpの対象外にするカラムが指定できると良いんだけど。 あとbyte[]の列に中身がない場合にもエラーになってる気がする。

HotdeployClassLoaderがdefinePackageをしていない

HotdeployClassLoaderがdefineClassをするときにdefinePackageをしていないみたいなので、 親のクラスローダーでロードされていないパッケージのクラスをHotdeployClassLoaderでロードして、 Class#getPackage()を呼び出すとnullが返ってくる。

続S2DaoPlugin

よく見たらdoltengに同じような機能が乗ってるのね。

S2DaoPlugin

S2DaoPluginを使ってみようかと思ったけど、全然動かない。SMART Deployの設定に対応していないのが原因らしい。 S2DaoのInterceptorがかかっているかチェックしてるらしいけど、S2Daoアノテーションか、BEAN定数アノテーションがあるかどうかだけで判断した…

doltengのプロジェクトウィザードにStruts2+Mayaaを追加してみた

出来れば本体に追加したいので、コミッタに追加してもらえるとありがたいです。>中の人

Seasar Maven Archetypesについて

プロジェクトの雛形生成と言う意味ではDoltengの次期バージョンの方が機能が豊富でMaven2の対応もされるようなので、Seasar Maven Archetypesはクローズしようかと思っています。 現行Seasar Maven Archetypesで提供しているStruts2+Seasar+Mayaaの構成につ…

HotDeployUtil

[STRUTS-51]の問題でHotDeployUtil#rebuildValue()を使ってたんだけど、 ActionFormにFormFileのフィールドを持たせるとインタンスが作れなくて例外が出る(S2のバージョン2.4.13)。 報告しようかとSVNを見るとHotDeployUtilの実装が大きく変わっていたので2.…

doltengでS2StrutsのScaffold

作ってみた。かなり適当だけど。おまけに役に立つかは未知数。 ScaffoldよりもS2Strutsの謎な動きの方に悩まされた。 doltengでScaffold作るの簡単だったので、外から構成追加できると対応構成が増やせそう。 追記:簡単なのはdoltengに組み込むところだけで…

Seasar Maven Archetypes

http://maven-archetypes.sandbox.seasar.org/ とりあえず、Seasar2.4+S2Struts+MayaaのArchetypeをリリースしました。 Archetype作るのって難しくはないけど、結構手間がかかるので協力者募集中。 出来れば代わりにリーダーをやってくれると最高です。

Mayaa+WebWork2+S2XWork+Seasarのarchetype

Strutsの代わりに、WebWork2を使いたい人向け。 archetypeArtifactIdをmaven-archetype-mayaa-webwork2に変えるだけで後は同じです。 Struts2もあるけど、そもそもS2XWork2とstruts2-mayaa-pluginとstruts2-seasar-pluginをまだリリースしていないので。

Mayaa+S2Struts+Seasarのarchetype

ということでJava to Rubvに影響されて、Javaで出来ること第1弾として、 Mayaa+S2Struts+Seasarのプロジェクトの雛形を作るMaven2のarchetypeを作ってみました。 Maven2をインストール http://maven.apache.org/ archetypeを使用してプロジェクトの雛形を生…

Mavenでテスト失敗

直してもらったので、S2Containerのtrunkを持ってきてMaven2でmvn installしたけどResourceUtilTestが通らない。 どうやらJarの中のクラスの場合ResourceUtil#getBuildDir(String)でURLを使っているので取得したパスがURLEncodeされた物になってるっぽい。 …

NamingConventionImpl#addIgnorePackageName()

seasar2.4-rc-1の頃とNamingConventionImpl#addIgnorePackageName()の挙動が変わっているみたいです。 HotdeployClassLoader#isTargetClass()でignorePackageNameかどうかをチェックしていないので、 普通にnewした時とかでもHotDeployされてしまいます。 そ…

CustomizerChain

Seasarを2.4-rc-1から2.4.1に移行したらAOP関係で不可解な動きが…。 追ってみると、org.seasar.framework.container.customizer.CustomizerChainで設定したInterceptorは 追加した順番の逆から実行されるようになっている...orz。今までは追加した順番に実行…

Seasar Conference 2006 Autumn

一応まじめな感想を。 chura churaがクローズアップされていましたが、やはりフルスタックでツール付きというのは効率から見ても安心感から見てもインパクトが大きい。 MayaaやWebWork2など色々組み合わせて使っている身からみると色々考えさせられてしまう…

Seasar Conference 2006 Autumn - 2

livedoor無線LANが使えたので現地から更新中。

Seasar Conference 2006 Autumn - 1

13:30に到着。ぎりぎり間に合ったと思っていたけど開始は13:00からだった。13:30開始だと思ってた...orz ひがさんのセッションはすでにデモに入っていて肝心なところが見られてない気がする。

Seasar Conference 2006 Autumn - 3

途中ですごく眠くなって断片的にしか覚えてないです。 とりあえず普段聞かない人のセッションに行った方が面白かったかもと思いました。

DB系プロダクト

今はS2DaoMaker+S2Daoでやってるんだけど、結構選択肢が増えてきている。 今使うとしたらS2DaoMakerの代わりにDBFluteを使うのが良さそう。 でも先を見ると最近活発に開発を行われている(ように見える)Uujiが気になる。 来年以降の案件ならKuina+Uujiとか…

Seasar Conference 2006 Autumn

リリース前日なのが気になりますがなんとか参加だけはできますように。

S2Dao+MySQLでのTimestampの扱い

S2Dao+MySQLのTIMESTAMPのカラムにnullを入れようとすると現在日時が入ってしまう。どうもMySQLの仕様らしい。 TIMESTAMPのカラムにはNULLは入らないので0を入れろということらしい。 S2Daoでnullが指定された場合に0に変換する独自のValueTypeを書いて何と…

Mayaa1.1.1+Seasar2.4-rc1

Seasar2.4-rc1使ってるアプリのMayaaを1.1.1に上げたらS2の方でClassCircularityErrorが出るように…。 使ってるライブラリが競合してたりするのかな。追記: どうやらpom.xmlのexclusionで除外しているライブラリがなぜか一部入っていてそれによって誤動作し…

規約

2.4からパッケージ構成やクラスの命名規則、インスタンスのライフサイクルまでNamingConversionやCreatorで標準規約が決められるようになったわけだけど、その辺の資料が欲しいなぁ。 例えばService,LogicやDaoのライフサイクルがPROTOTYPEになってるんだけ…

HotDeploy

とりあえず色々修正していただいて、今のSVNのスナップショット版を取得すればS2XWork+S2DaoでHotDeployが出来るようになりました。 あとはS2XWorkのアノテーション読み込みのところを少し検討する必要があるかも知れません。 基本的には毎回読み込めば良い…

S2DaoでHotDeploy

修正済みということで試してみたんだけど、3回目の実行で同じエラーになる。 最初の一回しかキャッシュがクリアされていない模様。JIRAに報告済み。 https://www.seasar.org/issues/browse/DAO-17

2.4-beta4

CoolDeployが出来て大分diconの構成が変わっているなぁ。 あとはDozerは設定ファイルを毎回読み直すようにしないとIllegalArgumentExceptionが出るっぽい。

続々:HotDeployでIllegalStateException

実証しようと思ってS2Strutsのデモを色々変えてみた。 とりあえずPOJOじゃないActionクラスからPOJOじゃないActionクラスへforwardすれば起こるだろうと思ったけど、なぜかforward先のActionクラスが見つからないと言われる。 forward時にHotDeployFilterが…

続:HotDeployでIllegalStateException

普通のS2ContainerImplでは同じクラス/インターフェースを登録した場合、コンポーネントの取得時に一つのコンポーネントを要求した場合だけエラーが起きるのに、OndemandBehaviorは登録のときにエラーが起こるようになっているのが原因っぽい。

HotDeployでIllegalStateException

WebWork2でActionCreaterを使ってHotDeployしようとするとOndemandBehavior#registerMap(Object, ComponentDef)でIllegalStateExceptionが出る。 どうも同じリクエストで同じクラスかインターフェースを継承しているクラスを複数ロードすると出る様子。 WebW…

Query by Example

S2DaoMakerでQuery by Exampleっぽいメソッドを生成。 以下をdao.vmに追加するだけだけど。ただプリミティブ型を使っていると条件に含まれてしまうので、Entityのプロパティは全部オブジェクトにしておくこと。 /** * Query by Example * @return ${table.ge…