ひがやすを技術ブログ

電通国際情報サービスのプログラマ

Flex

FlexからJavaへ接続

http://www.onjava.com/pub/a/onjava/2004/12/01/flexjava.html これは、FlexからいったんBusinessDelegateを通じて、Springに接続する方式ですね。ここでいっているBusinessDelegateとは、たぶん、コンストラクタで、SpringのApplicationContextからBeanを…

Flex VS Biz/Browser

アクシスさんにBiz/Browserの説明をしてもらったので、その感想。 Bizは、CSSが使えない。 Bizは、gifが使えない。まじ?。jpeg,png,svgのみ。 デザイナにデザインしてもらうのは、ちょっと厳しい。イントラ向き。 Bizは、 サーバサイドとの連携は、HTTPのreq…

Flex本

会社の許可が取れ、出版社もほぼ決定。

配列の罠

DataGridのdataProviderに設定した配列(Array)が、サーバサイドに渡らない。 この問題に、先週からずっと悩んでいたのですが、ようやく原因が分かりました。 ArrayをdataProviderに設定すると、Flexが_haslistenersという隠しプロパティを追加するため、サー…

Flex本

Flex本を弊社から出版することを計画中。まだ、会社の了解がおりてませんが、多分大丈夫でしょう。 この本は、デザイナセクション、開発者セクション、デザイナと開発者が共同して作業をするために知らなければいけないセクションに分かれていて、デザイナと…

getter, setter付きのプロパティのバインディング

Flexは、{オブジェクト.プロパティ}の表記で、簡単にバインディングが出来るのですが、getter, setter付きのプロパティは、そのままでは、バインディングできません。クラスに直接定義されたプロパティの例 class Foo { var aaa:String; }アクセッサつきのプ…

履歴管理

Flexでは、HistoryManagerが履歴の管理をしていて、ブラウザの戻るボタンで前のページに戻ることが出来るようになっています。この機能がデフォルト働くのは、TabNavigatorとAccordionを使ったときで、historyManagement属性をfalseに変えることで、履歴管理…

Applicationの切り替え

1つのアプリケーション内でのページの切り替えは、ViewStackを使うということで、先日例を示しました。それでは、複数のアプリケーションを切り替えるにはどうすればいいのでしょうか。 それには、Loaderタグを使います。contextPath属性でswfのパスを指定し…

入力値の制限

英数値だけを受け付けるようなコンポーネントは、バリデータを作るより、restrict属性を使った方がいいです。restrict="[0-9][a-z][A-Z]"で望む動きになります。

バリデーション

入力値のバリデーションをするクラスを作成するには、mx.validators.Validatorを継承して、function doValidation(value) : Voidをオーバーライドして、バリデーションがNGなら、validateError()でエラーを報告します。 次のサンプルは、数値とアルファベッ…

ページ遷移

Flexでページ遷移を実現するにはどうしたらよいのでしょうか。ViewStackを使うのがいちばん簡単です。 ViewStackとは、コンポーネントを格納するためのコンテナで、複数コンポーネントを登録できますが、表示するのは現在選択中のものだけです。その性質を利…

Flex 1.5 Betaの候補者を追加募集

無理言ってマクロメディアにお願いしました。 マクロメディアの前向きな対応に感謝です。m(_ _)m Seasar2とFlex1.5を組み合わせた開発を体験できます。 募集期間:即日〜9月30日12時までにメール受付分 募集内容: Flex 1.5 Betaテスター増員のため、候…

FlexとJavaのやりとり

FlexとJavaを連携させるには、大きく3つの方法がありますが、すべてベースとなっているプロトコルはHTTP(HTTPS)です。HTTPの上に乗っかっているフォーマットが3種類あります。 AMF SOAP Servlet AMFはAction Message Formatの略で、Macromediaが独自に定義し…

S2Adapter

予想通り、Flex純正AMFGatewayを使って、Seasar2と接続できました。 package org.seasar.amf; ... public class S2Adapter extends JavaAdapter { public Object invokeFunction(ActionContext ctx, String name, String methodName, List argList) throws T…

log4j

Flexを使うとアプリケーションのlog4jのログが出力されなくなります。Flexのログは出力されるのに。これは恐らく、ClassLoaderのせいです。Flexのライブラリは、WEB-INF/flex/jarsで管理されているので、特殊なClassLoaderを使っているのでしょう。でも、ロ…

S2AMF

FlexでJavaBeansとデータをやり取りする場合は、つぎのように_remoteClassプロパティでJavaのクラス名を指定します。このとき、Flexの完全限定クラス名とJava側の完全限定クラス名をあわせる必要があります。 class examples.flex.Employee { var _remoteCla…

Flex入門記(6)

Flexからコンテナに登録したコンポーネントのロジックを 呼び出します。 http://d.hatena.ne.jp/higayasuo/20040729#1091088617 にもとづいて、S2OpenAMFの設定を済ませます。 ダイコンファイルにaddLogicという名前で、足し算するコンポーネント を登録しま…

FlexのS2対応

FlexからS2Containerに登録されているコンポーネントの メソッドを呼び出すには、最初にS2OpenAMFを 導入します。 次にWEB-INF/flex/flex-config.xmlの flex-config/remote-objects/amf-gatewayタグの値を {context.root}/gatewayに変えるだけです。 ここで…

Flex入門記(5)

今度はASを別ファイルにする方法。 通常はこっちが良いと思います。Add3.as function calc():Void { result.text=Number(arg1.text) + Number(arg2.text); }Add3.mxml <mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml"> <mx:Script source="Add3.as" /> <mx:HBox> <mx:TextInput id="arg1" width="100"/> <mx:Label text="+"/> </mx:label></mx:textinput></mx:hbox></mx:script></mx:application>

Flex入門記(4)

今度はScriptタグを使う方法。 <mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml"> <mx:Script> </mx:Script> <mx:HBox> <mx:TextInput id="arg1" width="100"/> <mx:Label text="+"/> </mx:label></mx:textinput></mx:hbox></mx:application>

Flex入門記(3)

HelloWorldの次はもちろん足し算です。 幾つかのバージョンを作りますが、最初は、Eventにロジックを 直接記述するタイプ。Add.mxml <mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml"> <mx:HBox> <mx:TextInput id="arg1" width="100"/> <mx:Label text="+"/> <mx:TextInput id="arg2" width="100"/> <mx:Label text="="/> <mx:Label id="result"/> </mx:label></mx:label></mx:textinput></mx:label></mx:textinput></mx:hbox></mx:application>

Flex入門記(2)

それではさっそくFlexをインストールします。 まずは、http://www.macromedia.com/software/flex/trial/ 経由で、インストラーを手に入れます。 トライアル版は簡単にダウンロードできるようにして欲しいな > Macromediaの人 flex-10-win.exeをダブルクリッ…

this

Flexでもthisは存在するみたい。 今まで読んだところに詳しい解説はないけど、 たぶん、Flashの_rootに相当するんじゃないだろうか。 コンポーネントのタグの中で、thisを呼び出すと、 コンポーネント自身を指すのかな。 それだと、_rootではなく、Flashのth…

FlexとFlashの違い(1)

いろいろありますが、Flash使いを悩ませるthisとオブジェクトの 階層構造がなくなって、*.mxml単位で、タグに付けたid属性で、 Flatに管理されてるようです。 タイムラインはなくなってるみたいですが、Effectはあるみたい。 学習途中なので、間違ったことを…

Flex入門記(1)

とりあえず、ドキュメントをダウンロードする。サイズは、11.4M。 http://download.macromedia.com/pub/documentation/en/flex/1/documentation.zip Developing Flex Applicationsを読破することにしよう。 870Pもある。ともあれ(?)PartI(94P)を印刷して電車…

FlexのWSADのplugin、WSADじゃないと動かないんだと。 かなり苗。 http://www.alphaworks.ibm.com/forum/wsadflex.nsf/current/3ACEDA3AB780B34B85256E3000502567?OpenDocument

Partridge

Flexで開発するためのEclipseのPluginの開発コード名は Partridgeのようです。 http://www.macromedia.com/software/flex/productinfo/faq/#item-14 Dreamweaver版は、Bradyです。 Flexのベータプログラムを申し込んでみました。

FlexでFlash Remoting

http://www.markme.com/cc/archives/004130.cfm Flexもやっぱり、Flash Remotingで鯖に接続するんですね。

ブラウザのナビゲーションとの連携

http://www.markme.com/cc/archives/004072.cfm Flexでブラウザのナビゲーション機能を使うという記事。 Seasar版PetMarketではセキュリティとの絡みが よく見えていなくて、まだ未実装です。 #オリジナルにはあるんだけど。