Hatena::Groupseasarproject

きむきむのSeasar日記 このページをアンテナに追加 RSSフィード

seasar.org
<< 2004/07 >>
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
 | 

2004年07月02日

[]この前のTestCase この前のTestCase - きむきむのSeasar日記 を含むブックマーク はてなブックマーク - この前のTestCase - きむきむのSeasar日記 この前のTestCase - きむきむのSeasar日記 のブックマークコメント

hsqldbのバージョンを1.7.2RC6cにしたら、

DEBUG 2004-07-02 11:33:48,985 [main] トランザクションを開始しました

DEBUG 2004-07-02 11:33:51,378 [main] 物理的なコネクションを取得しました

で止まっちゃってる。。。

なんでだ!?


調べるの大変かな~?

[]たすけて~ たすけて~ - きむきむのSeasar日記 を含むブックマーク はてなブックマーク - たすけて~ - きむきむのSeasar日記 たすけて~ - きむきむのSeasar日記 のブックマークコメント

Daoのインターフェースのメソッド

Kissable getKissable(String name);


SQL文

SELECT * FROM kissable WHERE name = /*name*/'oreju'


実行結果(抜粋)

引数(name)が見つかりません

DEBUG 2004-07-02 16:53:27,340 [main] SELECT * FROM kissable WHERE name = null


引数が渡らないので、nullが返ってくる。。。

たすけて~(;_;)


#引数ありのselect文もサンプルでやっとくんだった・・・


追記:コメント通りの落ちがつきました。

[]たすけて~Part2 たすけて~Part2 - きむきむのSeasar日記 を含むブックマーク はてなブックマーク - たすけて~Part2 - きむきむのSeasar日記 たすけて~Part2 - きむきむのSeasar日記 のブックマークコメント

落ちがついて、Kissableは、インターフェースだから、インスタンス作れねーとエラーが出たので、とりあえず、BEANの定義をBoyにした。

(diconファイルには、Boyを定義してますけど。Kissableを実装してるは、それだけ。)


そしたら、今まで、動いていた、インサートが動かなくなった・・・

いじめだよ。。。(;_;)

org.seasar.framework.exception.OgnlRuntimeException: [ESSR0073]OGNLで例外が発生しました。理由はognl.OgnlException: source is null for getProperty(null, "name")

 at org.seasar.framework.util.OgnlUtil.getValue(OgnlUtil.java:23)

 at org.seasar.dao.node.BindVariableNode.accept(BindVariableNode.java:28)

 at org.seasar.dao.node.ContainerNode.accept(ContainerNode.java:19)

 at org.seasar.dao.command.AbstractCommand.apply(AbstractCommand.java:41)

 at org.seasar.dao.command.UpdateCommand.execute(UpdateCommand.java:18)

 at org.seasar.dao.interceptors.S2DaoInterceptor.invoke(S2DaoInterceptor.java:37)

 at org.seasar.framework.aop.impl.MethodInvocationImpl.proceed(MethodInvocationImpl.java:60)

 at org.seasar.framework.aop.proxy.AopProxy.intercept(AopProxy.java:123)

分からん罠と言われたので、追記:

public static final Class BEAN = Kissable.class;

public static final Class BEAN = Boy.class;

に変更しただけで、動かなくなったのです。。。


これが動いていたコード

Kissable kissable = new Boy();

kissable.setName("かきくけこ");

dao.insertKissable(kissable);


public interface Kissable {

 public static final String TABLE = "Kissable";

 String kissedBy(Kisser kisser);

 void setName(String name);

 String getName();

}

public class Boy implements Kissable, Serializable {

で、SQL文は、

INSERT INTO kissable (name) VALUES(/*kissable.name*/'oreju')


です。

トラックバック - http://seasarproject.g.hatena.ne.jp/skimura/20040702
 | 
日記内検索(ヘッダまで戻らなくていいから、便利?)

このコンテンツは、投げ銭を受けつています。
@payの後払い