久保です。先ほどは誤って送信ボタンを押してしまいました。
katarou さんは書きました:
> 現在flowMappingsの機能を使用して、複数フローの対応を行おうとしています。
> サンプルでフローは2フローあるのですが、
> 'The flow ID [ /authenticate.php ] not found in the flow definitions.
> とエラーが表示され設定がうまくいきません。
> どこかに問題があると思うのですが、いまだに原因がつかめずにいます。
> サンプルなどあれば参照したいのですが、可能でしょうか?
ご迷惑をお掛けしております。
flowMappings の設定例として、現在準備中のサンプルアプリケーションのも
のを示します。
- name: Dispatcher_Continuation
point:
- name: actionDirectory
type: configuration
value: ../webapp/actions
- name: cacheDirectory
type: configuration
value: ../webapp/cache/flows
- name: useFlowMappings
type: configuration
value: true
- name: configDirectory
type: configuration
value: ../webapp/config/flows
- name: flowMappings
type: configuration
value:
- url: /entry/list.php
flowName: Entry_List
isExclusive: false
- url: /entry/new.php
flowName: Entry_New
isExclusive: false
- url: /entry/edit.php
flowName: Entry_Edit
isExclusive: false
また、1.3.0 リリースには「リバースプロキシ環境でflowMappingsを使ったア
プリケーションが動作しない」(Ticket #93) という不具合が含まれていまし
た。
http://trac.piece-framework.com/piece-unity/ticket/93
この不具合は先ほど修正しました。すぐに修正済みのリリース (1.3.1) を行
う予定です。修正内容を下記を参照ください。
> また、Intercepter_Authenticationで質問なのですが、フローが複数ある場合、それぞれのフローで認証の状態は取得が可能で
> しょうか?
下記のように Authentication サービスを使ってログインを行っている場合、
$authentication = new Piece_Unity_Service_Authentication();
$authentication->login();
アクションクラス中で、
$authentication = new Piece_Unity_Service_Authentication();
if ($authentication->isAuthenticated()) {
// 認証済みの場合
}
とすることで認証状態を取得可能です。
> ついでの質問ですが、Piece_IDEにてフローデザイナの各ステートの位置(座標)が保持されない場合があるようですが、保持する方法があれば教え
> てください。(再現方法はまだつかめていません。申し訳ないです)
フローデザイナーで編集中のフロー定義ファイルを Eclipse 上で移動した時
に、レイアウトを保持しているファイルが同時に移動されないことによってレ
イアウトが失われる現象は認識しており、対応を検討中です。それに該当する
場合は、Eclipse のプロジェクト設定ディレクトリ以下にある対象のファイル
をフロー定義ファイルと同じように移動することでレイアウトを維持すること
ができます。
フロー定義ファイル:
old: web/webapp/config/flows/Foo.flow
new: web/webapp/config/flows/Bar/Baz.flow
レイアウトを保持するファイル:
old: .settings/flow/ProjectName/web/webapp/config/flows/Foo.flow_obj
new: .settings/flow/ProjectName/web/webapp/config/flows/Bar/Baz.flow_obj
以上、よろしくお願いいたします。
--
KUBO Atsuhiro e-mail: ku...@iteman.jp
katarou さんは書きました:
久保です。
katarou さんは書きました:
> FlowMappingの件は解決しました。
> 最初に表示されるビューステートで、イベントハンドラが未定義の場合、
>
> Notice: Undefined index: _default in C:\PHP\PEAR\Piece\Flow\Action
> \Factory.php on line 146 (以下略)
> のエラーが発生するようです。
>
> 定義をしたところ動作するようになりました。
ご迷惑をお掛けしました。その修正を含む Piece_Flow 1.15.1 をリリースし
ましたのでご確認ください。
http://trac.piece-framework.com/piece-flow/wiki/ja/ReleaseNotes/1.15.1
おかげさまで不具合を修正することができました。ありがとうございます。
また、flowMappings については Dispatcher_Continuation プラグインのマニ
ュアルを記述しましたので、そちらを参照ください。
> ※設定を行っていて感じたのですが、piece-unity-config.yamlの設定項目の一覧があると、大変わかりやすいなと思います。
> あと、エントリポイントについて、もう少し詳しいドキュメントがあると助かります。
ご意見ありがとうございます。こちらについても、徐々にではありますがマニ
ュアルの強化によって対応したいと思います。
あと、マニュアルを書いてくださる方も随時募集中です。
> フローデザインの件は了解しました。あわよくば、印刷して資料にできるかもと考えていたところだったので、助かります。
印刷やクリップボードへのコピー等については、今後の実装を検討したいと思
いますので、気長にお待ち頂ければ幸いです。それまでは、お手数ですがスク
リーンショットで対応願います。
> Eclipse+PDT+Piece-IDEでプロジェクトを新規作成した際、PDTのコード補完がうまく行えないようですので、
> .projectファイルの設定内容を添付しておきます。
>
> <?xml version="1.0" encoding="UTF-8"?>
> <projectDescription>
> <name>tara</name>
> <comment></comment>
> <projects>
> </projects>
> <buildSpec>
> <buildCommand>
> <name>org.eclipse.php.core.PhpIncrementalProjectBuilder</name>
> <arguments>
> </arguments>
> </buildCommand>
>
> </buildSpec>
> <natures>
> <nature>org.eclipse.php.core.PHPNature</nature>
> </natures>
> </projectDescription>
>
> Piece-Projectを作成した時に、BuildSpecとnaturesのタグの中身が空になっていたので、コード補完がうまく
> できなかったようです。
こちらについては、次回か次々回のリリースに含めたいと思います。
以上、貴重なご意見を頂けて感謝しております。ありがとうございました。