2011-02-02 1 views
1

Java/Hibernate/MySQLバックエンドを使用するように書かれた典型的なFlexベースのアプリケーションがあります。クライアントは要件を変更しました。今では、インストールやネットワーク接続なしでアプリを実行できるCDに配布したいと考えています。既存のFlex/Java/Hibernate/MySQLアプリケーションをポータブルディストリビューションのCDに移行するには最適なパスですか?

この状況で推奨される移行パスは何ですか?

これを行うには、私は確かにWebサーバーとデータベースサーバーを排除し、CD/DVDに収まるスタンドアロンアプリケーションにアプリケーションを(できるだけ少ない変更で)適応させる必要があります。

私はデータをXMLにエクスポートしてFlexに読み込むことができましたが、FlexでHibernateデータ構造を再作成する方法があるかどうか疑問に思っています。それに失敗した場合、既存のJava/HibernateをFlexコードの外部に保持する方法はありますか?Apache TomcatまたはMySQLをインストールせずに取り出せますか?その他の選択肢は何ですか?

答えて

3

これをチェックしてください、あなたはおそらくAIR手段に切り替えるため、サービス層(すなわちJavaの/休止状態/ MySQLを)維持したいですFlexのロジックを再度書き直す必要があります。 Jettyをクライアントマシン上で直接実行することをお勧めします(Javaを使用することを前提としています)。バッキングデータストアとしてHSQLDBを使用することをお勧めします。Jettyからもフラッシュファイルを提供し、クライアントのブラウザをローカルURLで指定します。さらに便利なのは、組み込みブラウザを含む単純なJavaアプリケーションを用意して、ユーザーがアプリケーションを閉じるときにjettyインスタンスが強制終了されるようにすることです。

Javaエンドのすべてを設定するだけでなく、書き換えられるコードの量も最小限に抑える必要があります。

参照:

+0

これは有望そうです。 – HuckIt

0

スタンドアロンアプリケーションの場合は、FlexではなくAIRアプリケーションとしてコンパイルします。
私の提案:

  • あなたが読むためにファイルシステムへのアクセスを持っていますAIRに多くの調整今
  • を必要はありません、新しいAIRプロジェクト
  • コピーを作成し、あなたのロジックのほとんどを貼り付けますXMLは、/ SQLからのCSVデータは

    protected function file_select(event:Event):void 
    { 
        file = (event.target as File); 
        file.addEventListener(Event.COMPLETE, file_completeHandler); 
        file.load(); 
    } 
    
    protected function file_completeHandler(event:Event):void 
    { 
        var xmlList:XMLList = XML(event.result); 
        //Now do your thing with the XML (You will most likely want to change the line above(
    } 
    
+0

ありがとうございましたが、私はすでにSQLエクスポートは、Flexに読み込ま持っている - それは問題ではありません。 FlexのXMLオブジェクトをJavaのHibernateオブジェクトのように動作させたいそして私は他の理由でAIRを使用することはできませんが、それは何かを妨げるものではありません。 – HuckIt

+0

なぜAIRを使用できないのですか?ブラウザに読み込まれたばかりの場合よりもいいでしょうか? –

+0

AIRエンジンを含む、ユーザーのコンピュータにアプリケーションをインストールすることはできません。 – HuckIt

1

は、私はまた、AIRアプリケーションを使用したいと考えてエクスポートします。 SQLiteデータベースを使用します。私はそれをいくつかのプロジェクトにも使用し、うまく動作します。 mysqlからsqlite(meastro)へのインポートツールがあり、Googleへの私の検索が正しければ、hibernateのsqlite用の方言があります。

だから、あなたはバックエンドを守ることができると思います。

=======

アップは、申し訳ありませんが、今、私はあなたが空気エンジンをインストールすることはできませんことを、お読みください。だから私の考えは悪いです。

========

しかし、私は理解できないことである:そのコンテンツを表示するには、FlashPlayerをインストールしてすることができますが、その空気Playerをインストールすることはできません。どこがどこですか?また、フラッシュプレイヤーがないと世界中に多くのコンピュータがあります。 fpが最初にインストールされたと仮定することはできません。その後何が起こるのですか?

======

もう1つのアイデアは、exeファイルです。

私はそれを試したことがないが、あなたがこの作品を作るための最も簡単な方法をしたい場合はlink

+0

世界各国のコンピュータではなく、特定のクライアント向けです。だから私は、フラッシュプレーヤーがインストールされていると仮定することができます。 – HuckIt

+0

Air2Exeソリューションはかなり良いようですが、Airが何でもできるFlashは何もできない理由はまだありません。私はこれが私の問題を解決するのか分からない。 SQLiteしかし、答えがあります。 – HuckIt

+0

大丈夫、あなたが知っていることは、あなたのウェブコンテンツをCDに配布するソリューションが必要だということです。だから私たちには2つの問題があります。まず、コンテンツを表示できるplattformが必要です。ブラウザは配布可能ではなく、AIRをインストールできないため、オプションはありません。だから私の考えは、EXEでAIRを変換することです。だから誰もインストールする必要はありません。もう一つは、バックエンドをローカルリソースに移動する必要があるということです。したがって、AIRとSQLiteはオプションになります。 – Frank

関連する問題