何か設定ファイルをいじると良いと言うのもあったが、面倒なのでこのままFireFoxでやる。コメントは受け付けていません。grandline僕はFlexでデータベースを扱う場合、これまで実稼動の場合、PostgreSQLしか扱ってこなかった。これまでは、DB関係はオリジナルのDBサービスを利用してPHPOBJECTやWEBORBを使っていたが、今回、FlashBuilderとZendAMFへサービスを切り替えるために色々試行錯誤している。一つは、ZendFrameworkを利用する事で、DBだけでなく他のコンポーネントも利用出来ると言う事。一つはFlashBuilderのデータとサービス機能を利用して、データベースアクセス関係のコンポーネントを自動作成させて開発効率を上げたいと言う事なのだが、問題はこのZendAMFによる接続データベースが標準がMySQLだということ。MySQLはPostgreSQLと共に人気のあるFreeのデータベースなのだが、日本語の文字化け問題があれこれ発生する。これが嫌でこれまでこのMySQLを利用してこなかったのだが、仕方ない。今回も、取り敢えずローカル上へインストールしたXampp上のMySQLへFlashBuilderのデータとサービスで作ったデータアクセスコンポーネントで接続しているのだが、例によって日本語が文字化けする。一般的な文字化けの話はすぐに見つかるのだが、このFlashBuilder関連のものは情報が少ない。発見したのが、これだ。付け加えると言うもの。後は、これを実稼動サーバへデプロイするのはどうしたら良いかって事だが、これも情報が殆ど無い。コメントは受け付けていません。grandlineAIRやFLEXと言うのはコンパイラ系のアプリケーションと異なりできないことが多い。ハードウエアに関わることは得意では無い。工業系の仕事では時々、シーケンサー(PLC)との通信が必要となる場合がある。このような場合、大抵、RS232c(COM)と言われる昔ながらのシリアル通信をする事になるが、デスクトップアプリケーションと言う事になっているAIRでもこれは出来ない。serial_proxyと言ったProxyサーバを通じて行う必要がある。今回検討した案件は、ネットワーク上のPCでアプリケーションが同期しながら(つまり、現場のPC含めて、ネットワーク上のどのPCで操作しても動作する様にしたいと言う事)、現場にあるシーケンサー(PLC)の制御を行う必要がある為、現場にローカルサーバを立ててそのサバー内でFlexによるWEBアプリケーションを動かして、RED5で同期を取ると言う方法を考えたが、肝心のFlexからRS232Cをどうやって制御するかで悩んだ。現場のローカルサーバでAIRアプリケーションを立てて、他のFlexアプリケーションとRED5で同期を取りながら、serial_proxyを通じて通信すると言う案を最初に考えたが、これはどうもスマートではない。一つは、以前やったが特定のPLCとシリアル通信が出来るコンポーネントを積んだExcelアプリケーションをProxyサーバとして、MySQLデータベースを経由してAIRと通信すると言う方法。データベースへパラメータ用のテーブルを作り、そこへパラメータやフラグをセット、リセットしながら、Excelと同期を取ると言う訳だ。この場合、Excelアプリケーションに色々仕込めるのだが、これもWEBアプリケーション直接では無いので、スマートではない。結果的にPHPにシリアル通信を行う拡張モジュールがあると言う事を知り、それをインストールして、FlexからPHPへWEBORB経由で接続してこれを利用すると言うアイデアを思いついた。これならPHPはFlexのクラスオブジェクトとして利用できるので、シンプルだ。Flex系の物は割り込みなどが利用できないので、PLCからの受信データなどは基本ポーリングで読み込む必要があり面倒だが、これなら、特定のProxyサーバを立ち上げること無く、Webアプリケーションでシリアル通信が可能となる筈だ。内容からすると土台無理な話なんだが。このアイデアは他の機会に使えるかもしれないので、暇な時に実験しておきたい。サーバ環境やモジュール等はインストールしたが、モジュールの読み込みなどは問題ない様だ。コメントは受け付けていません。grandlineドラッグ&ドロップが容易に出来るのがFLEXの良いところなのだが、何故か、ドロップ出来る時と出来ない時がある。処理に問題があるのか悩んだが、結局、ドラッグをスタートしたリストを表示しているパネルを自由に移動(ドラッグ)出来るようにしていたのだが、相手先のリストと距離が近い場合、ドラッグ中のアイテムが両方に重なった場合に、ドラッグ元のリストでドロップ禁止しているとその影響を受けるらしい。アイテムの項目が長いと両方にかかってる場合が発生して、ドロップできない状態となっていた様だ。考えたが、結局、ドラッグスタートのイベントで、ドラッグ元のパネルを小さくするエフェクトを入れて、ドラッグ元へ掛からない様にした。ドロップ後に元のサイズへ戻すことで、結果的にドラッグ中のウインドウの可視範囲も広がると言う一石二鳥となった。コメントは受け付けていません。grandlineFlexなどのACTIONSCRIPT系の言語をやってると意外な事が出来ない事に困惑する。今日から一週間分のカレンダーを作ると言う時、今日の日付はわかるが、明日は、二日後は何日?と言うのをすぐに計算する関数が無い。Adobeの日付に関するページを読むと方法が書いてあった。結局、こういう定数を一旦設定してそれを加算して利用するらしい。コメントは受け付けていません。grandlineFlexの様な便利なツールで開発をしていると、つい基本的な事を忘れてしまう。先日、ArrayCollectionを参照するAdvancedDataGridを扱っていて、ArrayCollectionの値を更新して反映させると言う事をやっていた。AdvancedDataGridの側ではAdvancedDataGridRendererProviderのrendererに対して、ClassFactoryを使って独自のDataRendererを当てると言う微妙に複雑なことをやっていたのだが、更新した筈なのに、更新する都度何故か同じデータで全てが更新されてしまう。これは開発中のシステムなので、全く違う例えで説明するが、例えば、既にAさんの出身地に福岡県と言う情報がある場合、Bさんの情報に対して佐賀県という出身地を追加して更新すると言う感じだ。この時に、Bさんは当然佐賀県となるのだが、Aさんも佐賀県と設定されてしまっている。更新対象の検索に関する部分を調べたがバグは無さそうなので、DataRenderer辺りにバグがあるのかと思い調べていたがこちらもバグらしいものは無くハマっていた。結局、原因は、追加しているオブジェクトにあった。Object()をやって初期化していなかったのだ。内容はAさんBさんの都度変更していても、元のオブジェクト(箱)が同じなので、後から変更される情報に全て変更されてしまう筈だ。Object()はしていても、内容を変更する時にはやってなかった。僕はてっきり、Aさんの情報を保存するオブジェクトとBさんの情報を保存するオブジェクトはそれぞれ異なる宣言をしている(異なる箱を確保している)ので、単にそこにデータを追加しても、その時点で縁が切れる(出身地などの情報がコピーされて、その箱に入る)絶対アドレスだと思っていたが、そうでは無く、最終的に追加する為のオブジェクトを参照している相対アドレスだと言う事を知らなかった。出身地などの情報が入る箱は一つで、Aさんの情報を保存している箱の中にはその箱の場所だけが入っていたと言う事だ。それなら、参照している情報は1つしか無いので参照先も情報も変わる筈だ。こんな事はCなんかやっていた時は常に意識していた事なのだが、今更初歩的なバグで恥ずかしい限りだった。コメントは受け付けていません。grandline先日、このプレリリース版であるBURRITOのライセンス期限が切れて起動しなくなった。製品版がリリースされたからであろう。FlexベースのWEBアプリケーション開発と言う看板を上げている以上、製品のリリースには付いていかないといけないので、4.0からアップグレードした。4.0で製作したアプリの移設とかしかやってないが、これで、本格的にAndroid端末アプリとその他の製品制作の一元管理ができそうだ。コメントは受け付けていません。grandlineチルダと言うのは「~」と言う記号だが、インターネット黎明期では、プロバイダの中にユーザホームと言う場所を作ってそこでWEBサイトを作ることが主流だった。その時に、ユーザホームとして使われていたのがこのチルダ「~」だ。最近ではこのチルダを堂々と使うケースが少なくなって来ていて無い場合も多い他、レンタルサーバなどの場合、マルチドメインと言う複数のWEBサイトを管理できるサービスが可能な場合、逆にこのチルダが使えない場合もある。このWEBサイトを新たに置いたレンタルサーバも同様で、僕のノートPCで運用していた石川滋氏のサイトの場合は、このチルダが有っても無くてもアクセスできる様にしていたが、これが出来なくなり、チルダ無しのみとなってしまった。404の場合に転送ページなどを自由に作成して設置出来ない様なので、とりあえず、このドメインのトップに当たるここの場所のブロックへ紹介を載せることにした。コメントは受け付けていません。ノートPCサーバもそろそろ寿命が来そうな予感だった。独立当初自宅で仕事をしていた頃は夏場もそれなりに温度管理は出来ていたが、今は仕事場を外へ移してからは、夏場の気温の高い時期になると動きが怪しくなるし音も相当うるさくなる。だいたいこう言う物は、仕事が忙しい時に限って倒れたりするのが相場なので、丁度仕事が一段落した時を狙って思い切って移設することにした。場所に関しては、以前から利用しているレンタルサーバがマルチドメイン対応で、空きが随分あるので、grandline.orgをまるごと移設することにして、ついでに独立してから初めてと言うくらいまともな?HPを立ち上げた。WordPress等も利用出来たので、初めて使ってみたがWordPressでWEBサイトを構築してみた。多少楽になったものの、WEBサイトの構築と言うのはやはり面倒だ。プログラムのソースを書いてる方がよほど楽だと思うがどうだろうか。コメントは受け付けていません。石川滋氏のWEBサイトはこちらです。WordPress.。