ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • BlazeDS 설치
    Flex/Silverlight 2009. 12. 13. 00:28
    반응형

    BlazeDS 셋팅 법!

     

    LCDS도 마찬가지지만 FlexProject 따로 ServerSetting(FDS 서버) 따로 하는 방법이 있고

    FlexProject ServerSetting이 같이 붙어 있는 경우도 있습니다

     

    1번째 경우는 WAS가 구동 되어있는 환경이 따로 있고

    mxml파일을 컴파일을 하면 WAS의 해당경로(Client가 볼 수 있는 경로) swf 파일 및 html 파일들을 생성 시키는 경우 입니다

     

    2번째 경우는 FlexProject WAS가 같이 있는 경우 입니다

     

    BlazeDS 셋팅은 2번째 경우에 대해서 나눠진 경우 입니다

    (Flex3 이클립스 플러그인이 깔려져 있다는 가정하에 생성)

     

     

    1. BlazeDS를 다운 받는다

    http://opensource.adobe.com/wiki/display/blazeds/BlazeDS

     

    2. 다운 받은 압축 파일을 풀면 blazed.war 파일이 있는걸 확인

     

    3. Flex3 이클립스 플러그인 빌더에서 FlexProject를 생성한다

     

    4. Project 셋팅 한다

    Project name : BlazeDS_Hello

    Use default location : 체크

    Application type

    Web application(runs in Flash Player) : 체크

    Server technology

    Application server type : J2EE 설정

    Use remote object access service : 체크

    LiveCylce Data Service : 체크

    Create Combined Java/Flex project using WTP : 체크

    Java Source folder : src

     

     

    Next 버튼 클릭

    5. J2EE Server 셋팅한다 (Tomcat 버전은 5.5)

     

    Target runtime : new 버튼 클릭 후

    Installed Runtimes 버튼 클릭

     

    ADD 버튼 클릭

     

    Apache Tomcat v5.5 선택 후 Next 클릭

     

    Browse.. 버튼 클릭 후 자신의 Tomcat 홈을 잡아 준다!

    다시 J2EE 셋팅 으로 와서

    Target runtime : Apache Tomcat v5.5 으로 맞춰준다

    Context root : BlazeDS_Hello

    Content folder : WebContent

    Flex WAR file : 내가 다운 받은 blazed.war 파일로 설정 한다

     

    Compile option

    Compile application locally in Flex Builder : 체크

     

    Output folder : bin-debug

     

    Next

     

     

    6.  Web Root Main Application 파일들을 확인 한다

    드디어 셋팅 끝 Finish 버튼 클릭

     

    7. BlazeDS_Hello/src/test JAVA 파일 생성

     

    package test;

     

    public class Test {

     

           public String getStr(){

                 return "Welcome BlazeDS 성공!";

           }

    }

     

    8. WebContent/WEB-INF/flex/remote-config.xml 파일 수정

    <?xml version="1.0" encoding="UTF-8"?>

    <service id="remoting-service"

        class="flex.messaging.services.RemotingService">

     

        <adapters>

            <adapter-definition id="java-object" class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/>

        </adapters>

     

        <default-channels>

            <channel ref="my-amf"/>

        </default-channels>

       

        <!-- 이부분이 추가 되었습니다 -->

        <destination id="blaze">

            <properties>

                  <source>test.Test</source>

            </properties>

        </destination>

     

    </service>

     

    9. BlazeDS_Hello.mxml 파일 수정

     

    <?xml version="1.0" encoding="utf-8"?>

    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

           <mx:RemoteObject id="ro" destination="blaze" fault="faultHandler(event)">

                 <mx:method name="getStr" result="resultHandler(event)"/>

           </mx:RemoteObject> 

           <mx:Script>

                 <![CDATA[

                        import mx.rpc.remoting.mxml.RemoteObject;

                        import mx.controls.Alert;

                        import mx.rpc.events.ResultEvent;

                        import mx.rpc.events.FaultEvent;

                       

                        /**

                         * 에러가 났을 경우 이벤트 발생

                         * */

                        private function faultHandler(event:FaultEvent):void{

                               Alert.show(event.message.toString());

                        }

                       

                        /**

                         * 제대로 실행 되었을 경우 이벤트 발생

                         * */

                        private function resultHandler(event:ResultEvent):void{

                               Alert.show(event.result.toString());

                        }

                       

                        /**

                         * 버튼 클릭 RemoteObject Call

                         * */

                        private function remote_object_call():void{

                               // remoteObjecc에서 java method call

                               ro.getStr();

                        }

                 ]]>

           </mx:Script>

           <mx:Button label="서비스 시작" click="remote_object_call()"/>

    </mx:Application>

     

    10. Flex Server에서 Context root 변경

    BlazeDS_Hello Project에서 마우스 오른쪽 클릭/ Properties 선택

    이부분에서 Context root /BlazeDS_Hello 로 변경

     

     

     

     

     

     

     

     

     

     

     

     

     

    11. Tomcat 구동

    이클립스에서 도구 모음의 Window/show view/other 클릭

     

    Server/Servers 선택

    Servers 창에서 Server 추가(마우스 오른쪽 클릭 New > Servers 클릭)

    내가 아까 J2EE에서 Server를 만든 것을 추가 한다 Next

     

     

    BlazeDS_Hello 를 오른쪽으로 이동 Finish

     이런 버튼들이 있다 둘중 하나 클릭

    벌래모양은 Debug > 이런 모양은 Run

     

     

    12. BlazeDS_Hello.mxml 파일을 컴파일 한다

     

     

     

    13. 실행화면에서 서비스 시작 버튼 클릭

     

    이런 화면이 나오면 성공!

     

     

    후기 : BlazeDS LCDS와는 다르게 자동 빌딩이 되지 않습니다

    추천으로는 ANT-FlexTask 를 쓰는걸 추천 하지만

    FlexTask를 안쓴다고 하면 mxml 파일을 수정 할 경우 12번과 같은 방법으로 컴파일 해야 합니다!

     

     

    반응형
Designed by Tistory.