サーバサイドでのインスタンスの保持とAIRのViewStack
相変わらず初心者的なつまずきばかりだけども、同じような境遇の人に役立つかもしれないから書いておく!!(プラス思考)
・サーバサイドのインスタンスの保持
AIRというか、Flex開発したものからTomcatへアクセスする場合、WEB-INFのflexに入ってるremoting-config.xmlにおいて
と書いてあげればサーバサイドのjavaのメソッドにアクセス出来ると書いたけども、このままだと処理を行うたびにクラスをインスタンス化し直してしまう。
(インスタンスの生存期間が1リクエストの間だけ)
これを防ぐためには
を追加してあげることで、生存期間を調整できる。
○○をsessionにしてあげればセッション保持中はインスタンスが生存する。
他にもapplicationとかあるっぽい。
サーバをよくいじる人やネットワーク使うソフト組む人にとっては当たり前な、こんなしょうもないところでつまずきます…orz
・ViewStackの注意事項
AIR(Flex開発)のViewStackを使う上で気をつけること。
ViewStackは便利なコンポーネントだけども、デフォルトではスタック上に配置した子コンポーネントはそのスタックがvisibleになった瞬間に生成される。
(要は1番上のスタック上のコンポーネントは起動時に生成されるけども、2番目、3番目のスタック上のコンポーネントはスタックが見えるまで生成されない)
なので、これを知らずにソースを書いてるといざ実行した時にスタック上のコンポーネントがnullでエラーになることがある。
これを防ぐにはViewStackの「creationPolicy」を「all」にしてあげる。
こうすれば、ViewStackが生成されると同時に全てのスタックとその上のコンポーネントが生成されるようになる。
まあ、どっちも超初心者向け&自分の覚え書きだなww