トップ «前の日記(2006-08-17 (Thu)) 最新 次の日記(2006-08-20 (Sun))» 編集

ふたつの川うるおう日記


2006-08-19 (Sat)

_ [Java][Seasar] コンストラクタを探さないでー (解決)

trunk/s2struts-exampleを見ながらHotDeploy試そうと移植してみるも、S2Directory用のDao Interfaceのコンストラクタを探そうとしてエラーになってしまい困り中。trunk/s2struts-exampleのS2DaoのDaoクラスも同じくインタフェースだけなのにこっちはちゃんと動いてるので、S2Dao自体に何か細工されたのかなとChangeLog見ても特になさそう・・・。なんだろこれ。

ERROR 2006-08-19 13:28:19,942 [http-8080-Processor24] handled exception, [ESSR0064]クラス(org.seasar.server.members.directorydao.PosixAccountDtoDao)のコンストラクタ(PosixAccountDtoDao())が見つかりません
org.seasar.framework.exception.NoSuchConstructorRuntimeException: [ESSR0064]クラス(org.seasar.server.members.directorydao.PosixAccountDtoDao)のコンストラクタ(PosixAccountDtoDao())が見つかりません
  at org.seasar.framework.util.ClassUtil.getConstructor(ClassUtil.java:135)
  at org.seasar.framework.container.assembler.AbstractConstructorAssembler.assembleDefault(AbstractConstructorAssembler.java:87)
  at org.seasar.framework.container.assembler.AutoConstructorAssembler.doAssemble(AutoConstructorAssembler.java:40)
  at org.seasar.framework.container.assembler.AbstractConstructorAssembler.assemble(AbstractConstructorAssembler.java:50)
  at org.seasar.framework.container.deployer.PrototypeComponentDeployer.deploy(PrototypeComponentDeployer.java:37)
  at org.seasar.framework.container.impl.ComponentDefImpl.getComponent(ComponentDefImpl.java:98)
  at org.seasar.framework.container.impl.S2ContainerImpl.getComponent(S2ContainerImpl.java:113)
  at org.seasar.framework.container.assembler.AbstractBindingTypeDef.bindAuto(AbstractBindingTypeDef.java:149)
  at org.seasar.framework.container.assembler.BindingTypeShouldDef.doBind(BindingTypeShouldDef.java:51)
  at org.seasar.framework.container.assembler.AbstractBindingTypeDef.bind(AbstractBindingTypeDef.java:67)
  at org.seasar.framework.container.assembler.AutoPropertyAssembler.assemble(AutoPropertyAssembler.java:63)
  at org.seasar.framework.container.deployer.PrototypeComponentDeployer.deploy(PrototypeComponentDeployer.java:38)
  at org.seasar.framework.container.impl.ComponentDefImpl.getComponent(ComponentDefImpl.java:98)
  at org.seasar.framework.container.impl.S2ContainerImpl.getComponent(S2ContainerImpl.java:113)
  at org.seasar.framework.container.assembler.AbstractBindingTypeDef.bindAuto(AbstractBindingTypeDef.java:149)
  at org.seasar.framework.container.assembler.BindingTypeShouldDef.doBind(BindingTypeShouldDef.java:51)
  at org.seasar.framework.container.assembler.AbstractBindingTypeDef.bind(AbstractBindingTypeDef.java:67)
  at org.seasar.framework.container.assembler.AutoPropertyAssembler.assemble(AutoPropertyAssembler.java:63)
  at org.seasar.framework.container.deployer.RequestComponentDeployer.deploy(RequestComponentDeployer.java:62)
  at org.seasar.framework.container.impl.ComponentDefImpl.getComponent(ComponentDefImpl.java:98)
  at org.seasar.struts.pojo.MethodBinding.invoke(MethodBinding.java:62)
  at org.seasar.struts.pojo.MethodBinding.invoke(MethodBinding.java:54)
  at org.seasar.struts.taglib.InitializeTag.doStartTag(InitializeTag.java:41)
  at org.seasar.mayaa.impl.engine.processor.JspProcessor.doStartProcess(JspProcessor.java:260)
...
public interface PosixAccountDtoDao {
  public static final Class BEAN = PosixAccountDto.class;
  public int insertPosixAccount(PosixAccountDto posixAccountDto);
  public int updatePosixAccount(PosixAccountDto posixAccountDto);
  public int deletePosixAccount(PosixAccountDto posixAccountDto);
  public PosixAccountDto getPosixAccount(PosixAccountDto posixAccountDto);
  public List getPosixAccountList();
}

[19:24追記] DirectoryDaoOndemandCreatorってCreatorのsetterをtypoしてただけでした_| ̄|○。というわけで解決しました。

| Bookmark:

_ [Seasar][Java] HotDeploy時のContext設定

reloadable="false"

じゃないとダメなんですね。どうやっても上手くいかず、trunk/s2struts-exampleにちょっとずつファイルを移植して再起動を繰り返して、ついに全部移植したのにtrunk/s2struts-exampleのプロジェクトではリロードされないので、ドットファイルを比較したら気付きました・・・。気付くのに1日掛かった(;´Д`)。

Tomcat Pluginだと「このコンテキストの再読込を可能にする」のチェックを外してコンテキストの更新をする。

| Bookmark:
本日のツッコミ(全2件) [ツッコミを入れる]
_ Skirnir (2006-08-23 (Wed) 08:38)

ども。Kvasirでもhotdeployでいろいろハマりまくりですが、そういうノウハウを蓄積するWikiとかあればいいんですけどね…。ってSeasar Wikiに書けばいいのか。^^;

_ jfut (2006-08-23 (Wed) 10:28)

ですね、まだリリースされてないのでリリースされてもう一度はまったところ全部確認してWikiに書こうと思っています。でも、よく考えると、とりあえずもう既に試している方は他にもたくさんいるかもしれないので、注意書きで「リリース前なのでまだ変わるかも」って書いてもう書いてもいいかもしれませんね。というわけで後で書こうと思います。Skirnirさんのハマったところも是非!

[]

| Return to page top | Vicuna CMS - WordPress Theme - Vicuna Ninja Style for tDiary |