Flex2でRemoteObjectを使うには、Flex Compilerの設定で"flex-services.xml"のファイルを指定します。
プロジェクトを選択してproperties >Flex Compilerの"Additional compiler arguments:に以下の様に記述します。
--services=C:\CFusionMX7\wwwroot\WEB-INF\flex\flex-services.xml
この指定は、CFAdapterのサンプルでもJavaAdapterを使うプロジェクトでも同じ様に設定する必要があります。
Flex Builder 2 Alpha 1のうちStandAlone版ではうまくコンパイルできるのですがPlugin版だと--servicesをmxmlcのパラメータに指定するとエラーになってしまいます。
具体的には、RuntimeExceptionと表示されて org/apache/xpath/CachedXPathAPIとメッセージに表示され正常にswfを生成できません。
これを解消するにはxalanというXSLTプロセッサのライブラリをコピーする必要があります。
1.Flex Framework 2に付属のxalan.jarをコピー
Flex Builder 2のStandAlone版に付いているxalan.jarをコピーします。 Flex Frame work 2のライブラリディレクトリにあるものを使います。C:\Program Files\Macromedia\Flex Builder 2 Alpha 1\Flex Framework 2 Alpha 1\lib\xalan.jar
2.EclipseのPluginにコピー
Flex Builder 2のPlugin版をインストールしているEclipseにコピー${eclipse_installdir}\plugins\zorn.flex_2.0.197\lib
コピー後はEclipseを再起動すればコンパイルエラーにならなくなります。
これで、RemoteObject側(Java)とFlex2のアプリケーションを同じアプリケーションで開発できるようになりました。
これまでは、StandAlone版とJava側のEclipseを2つ同時に起動していて非効率だったのですが、これでplugin版ひとつ起動しておけばJava側とFlex2アプリケーションともに開発できるようになりました。
これで少しはメモリ不足が解消できるかな。
Xalan-Java Version 2.7.0
http://xml.apache.org/xalan-j/
この記事に対するコメント