[s2container-php5:113] Re: S2Dao が利用できません

yonekawa [E-MAIL ADDRESS DELETED]
2008年 1月 8日 (火) 15:22:54 JST


g_kufさん
はじめまして、yonekawaと申します。

>$container = S2ContainerFactory::create(PDO_DICON);
>$dao = $container->getComponent('UsrmstDao');

こちらのコードですと、pdo.diconの中からUsrmstDaoを探していると思います。
pdo.diconはS2Daoのデータベース接続情報が書かれた設定ファイルですので、
基本はこれにコンポーネントを登録することはないです。

>S2Baseコマンドにdiconファイル作成がありませんでしたので、
>自分で作成してみたのですが、それでも同じエラーが発生しました。
恐らくここで作ったdiconファイルにUsrmstDaoを登録してあると思います。
なので、

$container = S2ContainerFactory::create("作成したdiconのパス");

という風にすれば、UsrmstDaoのコンポーネントを取得できるのではないでしょうか。
ご確認ください。

On 1/7/08, [E-MAIL ADDRESS DELETED] <[E-MAIL ADDRESS DELETED]> wrote:
> こんにちはS2Base with Symfonyを利用しています。
> 画面が表示できるようになったのですが、S2Daoが利用できません。
>
> 設定は下記のページを参考にしました。
> http://s2base.php5.sandbox.seasar.org/2.0/withSymfony-setup.html
>
> S2Baseコマンドにdiconファイル作成がありませんでしたので、
> 自分で作成してみたのですが、それでも同じエラーが発生しました。
>
> 実行しているコードは以下になります。
>
>        $container = S2ContainerFactory::create(PDO_DICON);
>        $dao = $container->getComponent('UsrmstDao');
>
> エラーは以下の内容です。
>
> [S2Container_ComponentNotFoundRuntimeException]
> Component[UsrmstDao] not found
> stack trace
> at ()
> in SF_ROOT_DIR\lib\S2Container\s2container.core.classes.php line 206 ...
>
>        }
>        $cd = $this->_internalGetComponentDef($key);
>        if ($cd == null) {
>            throw new S2Container_ComponentNotFoundRuntimeException($key);
>        }
>        return $cd;
>    }
>
> よろしくお願いいたします。
> _______________________________________________
> S2Container-PHP5 mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/s2container-php5
>


-- 
--
yonekawa <[E-MAIL ADDRESS DELETED]>
twitter:http://twitter.com/yonekawa
--


S2Container-PHP5 メーリングリストの案内