Uploaded image for project: 'Tuigwaa'
  1. Tuigwaa
  2. TUIGWAA-113

tgw_plugin 系のエンティティの情報が model.ecore に保存されない

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.9.1
    • Fix Version/s: 1.0.1
    • Component/s: controller, model, plugin
    • Labels:
      None

      Description

      tgw_plugin_comment,tgw_plugin_trackback
      などのエンティティ情報が、model.ecore に記述されない。

      再起動時にはテーブル一覧に出力されない。
      いずれかのページでコメントプラグインを利用すればテーブル一覧に出現し、
      前回の内容も閲覧可能である(当然DBにはデータが残っているので)

      どうやら、メモリ上には設定が記述されているが、moder.ecore には記述されない模様。

      同時に、前回作成したフィルタ等が利用できないなどの問題が発生しているので、こちらも確認されたし。

      1. 新しくデプロイしたサイトを用意
      2. tgw_plugin_comment と、同テーブルに対するフィルタを含む tgwar をアップロード
      この時点で、テーブル一覧に tgw_plugin_comment は出力されない
      3. コメントを含むページにアクセス
      この時点で、テーブル一覧に tgw_plugin_comment が出力される
      しかし、model.ecore への出力は行われていない
      以前作成したフィルタは閲覧できない(ただし、dicon への設定は残っている)

      ということで困りました。

        Activity

        Hide
        someda someda added a comment -

        FileData への変更時に、class ファイルを利用したプラグインのデータベース情報については、model.ecore に永続化されないようになりました。

        若干タイミングの問題が残りますが、通常の Plugin の呼び出し時の initialize 処理で呼ばれる
        AbstractTgwPlugin#requireEntity メソッド内で、entity を作成した後に、dao/tgw_plugin_*.dicon
        を読みこみ、FunctionList と Controller を更新する処理を差込ました。

        これで、そのプラグインを読み込んだ後については、フィルタ、カスタムフォームなどを利用する
        ことができます。

        問題点としては、該当の View を担当するプラグインが読まれる前に、そのテーブルに対する
        カスタムフォームや検索フォームが呼ばれるといった、通常のテーブルの利用方法が呼び出されると
        その時点では、Function が存在しないので、エラーとなってしまいます。

        dao/tgw_plugin_*.dicon の読み込みタイミングについては要検討。

        Show
        someda someda added a comment - FileData への変更時に、class ファイルを利用したプラグインのデータベース情報については、model.ecore に永続化されないようになりました。 若干タイミングの問題が残りますが、通常の Plugin の呼び出し時の initialize 処理で呼ばれる AbstractTgwPlugin#requireEntity メソッド内で、entity を作成した後に、dao/tgw_plugin_*.dicon を読みこみ、FunctionList と Controller を更新する処理を差込ました。 これで、そのプラグインを読み込んだ後については、フィルタ、カスタムフォームなどを利用する ことができます。 問題点としては、該当の View を担当するプラグインが読まれる前に、そのテーブルに対する カスタムフォームや検索フォームが呼ばれるといった、通常のテーブルの利用方法が呼び出されると その時点では、Function が存在しないので、エラーとなってしまいます。 dao/tgw_plugin_*.dicon の読み込みタイミングについては要検討。
        Hide
        someda someda added a comment -

        サイトアップロードの際に、プラグイン用のデータベースのバックアップがとられていても、
        サイト構築時には該当のドメイン設定内にプラグインのテーブルが含まれない為、リストアされない。

        ワークアラウンドとしては、

        • サイト上で、該当のプラグインを表示 (該当ドメインにプラグインテーブルを追加)
        • Tuigwaa マネージャでデータのリストア

        となる。

        やはり、プラグインテーブルの初期化はサイト構築時に行った方がスムーズのように思われる。

        Show
        someda someda added a comment - サイトアップロードの際に、プラグイン用のデータベースのバックアップがとられていても、 サイト構築時には該当のドメイン設定内にプラグインのテーブルが含まれない為、リストアされない。 ワークアラウンドとしては、 サイト上で、該当のプラグインを表示 (該当ドメインにプラグインテーブルを追加) Tuigwaa マネージャでデータのリストア となる。 やはり、プラグインテーブルの初期化はサイト構築時に行った方がスムーズのように思われる。
        Hide
        nishioka nishioka added a comment -

        ファイルのバイナリーデータ入力用テーブル以外は
        plugin 用テーブルは保存するように戻しました。

        Show
        nishioka nishioka added a comment - ファイルのバイナリーデータ入力用テーブル以外は plugin 用テーブルは保存するように戻しました。

          People

          • Assignee:
            nishioka nishioka
            Reporter:
            takishita takishita
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development