フォームに入力された値を検証するのに Validator というコンポーネントを使ってみた。半角のみ受け入れるフォームには正規表現を使って検証する RegExpValidator というコンポーネントを、誕生日には DateValidator を用いた。電話番号にも PhoneNumberValidator というバリデータコンポーネントが用意されているのだけど、この仕様が、”0-9,#,*" が OK という DoCoMo の QRコード仕様にあわなかったので、カスタムバリデータを作ってみた。

カスタムバリデータを作るにあたってカスタムコンポーネントのコンパイルの仕方も調べる必要があった。コンポーネントのコンパイラは compc を使う。そして、コンパイル用の xml ファイルを用意して、

compc -load-config+=myValidators-config.xml

とすれば OK。compc は load-config を指定するとシステムデフォルトのコンフィグファイルが読み込まれないので、設定を上書きするという意味で += でファイルを指定する必要がある。これにハマってしまった。そして mxmlc で swc ファイルをリンクするためには、compc で作成したカスタムコンポーネントの swc ファイルのあるパスを library-path で指定すればリンクしてくれます。mxmlc の config ファイルはファイル名を {mxml ファイル名}-config.xml とすれば、コマンドライン引数で指定しなくても mxmlc が勝手に読み込んでくれる。

compc を使わない、つまりカスタムコンポーネントを個別にコンパイルせずに mxmlc で一発コンパイルとリンクをする場合は mxmlc のコンフィグで必要なソースファイルのあるディレクトリを source-path で指定すれば、OK。
参考までに compc の confi ファイル(myValidators-config.xml ) と mxmlc の config ファイル(QRcode-config.xml) へリンクを張っておく。

「Flex アプリケーションの構築と展開」を読んでいると mxmlc 自体にインクリメンタルコンパイルという必要なファイルだけコンパイルするという Make みたいなことをやって機能があるようで、これを使えば開発者が意図的に分割コンパイルする必要はないみたいだ。でもカ、スタムコンポーネントを別のアプリケーションで使い回す場合やソースを公開せずに swc だけを誰かに提供する場合なんかは compc で swc を作る意味があるのかも。

今回は、もう Makefile も書いてしまったので、今後不都合がでないかぎりは compc + mxmlc の 2 段構えでいく。

トラックバック(0)

このブログ記事を参照しているブログ一覧: flex2 アプリを作ろう(2) - カスタムバリデータ, compc -

このブログ記事に対するトラックバックURL: http://tsuyuguchi.com/mt/mt-tb.cgi/260

最近の画像

Zero History - ギブスンの新作が 9 月に発売 -
虐殺器官
ドミニオンのランダマイザアプリ、dominion minion が日本語対応!
ハイペリオンの没落 ~ 完結...でもまだ続く~
ハイペリオンの没落 ~ 完結...でもまだ続く~
ハイペリオン - 長大な叙事詩 SF のスタート -
ハイペリオン - 長大な叙事詩 SF のスタート -
「都市と星」 - 10億年と言われてもよく分からない -
「星を継ぐもの」 - 良い Sci-Fi -
トールサイズのニューロマンサーを買った
虎よ、虎よ! - 主人公フォイルの執念の物語 -

私の本棚

 

自転車走行距離

自転車走行距離

Flickr Photos

FlickrPhotos

なかのひと

Y!ログール

このサイトについて

2015年2月

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28

アーカイブ

My Update

  • Loading...

その他

あわせて読みたいブログパーツ