아래 글은 투윙오리(happyyhj)님의 블로그에서 퍼왔음을 알려드립니다.
원본 주소 : http://blog.naver.com/happyyhj/59943609
문제가 있을시 삭제처리 하겠습니다.
===================================================================================================
Flex2에서 할려고 했었는데 BlazeDs는 Flex3에서만 된다기에 그냥 Flex3에서 함.
이클립스에서 몽땅 다 사용하기 ㅋ
예제들을 보니 거의 플렉스 빌더(flex) + 이클립스(BlazeDs) 이렇게 사용하고 있었다.
고맙게도 어떤 분께서 이렇게 좋은 자료를 올려주셔서 보면서 따라했다.
안에 내용은 중복된다. 그냥 저거 그대로 했다고 보면 된다.
친절한 설명과 함께 그림으로도 과정샷을 설명해주신 내용을 파일로 다운받을 수 있도록
해놓으셨다. 완전 감사!
http://tong.nate.com/thesunrises/45999746
[준비작업]
1. BlazeDS를 다운 받는다.
(Binary Distribution-> 꼭 필요한 파일만 있음.
샘플이랑 바로 구동해 볼 수 있는 톰캣 포함을 원하면 Turnkey)
http://opensource.adobe.com/wiki/display/blazeds/Release+Builds
2. 다운 받은 압축 파일을 풀면 blazed.war 파일이 있다. 확인해 보자.
< 시작 >
1. 이클립스 띄워서 플렉스3 프로젝트 생성(New-> FlexProject)
아래 그림과 같이 셋팅한다.
[Next]!
2. 1에서 서버타입으로 선택한 J2EE Server 셋팅작업
콤보박스 내렸을 때 기존에 내가 등록한게 있으면 그거 선택하고
없으면 [New...]버튼 클릭
3. 나는 톰캣 5.5 사용 ^^ -> [Installed Runtimes] 버튼 클릭
4. [Add...] 버튼 클릭 후
톰캣 5.5 클릭 후 [Next] 버튼 클릭
5. [Browse...] 버튼 클릭해서 내가 설치해 놓은 톰캣 폴더 경로 잡아준다.
6. 다시 2번의 창으로 돌아와서 [Browse...]버튼 클릭 해서 아까 준비작업 1에서 다운 받았던 blazed.was파일이 있는 경로를 잡아준다.
7. 그림을 참고로 자기에게 맞게 수정.
8. src 폴더에서 오른쪽 마우스 클릭(new-> Other -> java -> package)해서 test란 이름의 패키지 만들고 만든 test란 패키지에서 오른쪽 마우스 클릭(new-> Other -> )해서 java file 생성
자바파일 생성시 파일이름만 써주고 나머지는 설정 그대로 하고 마치면 됨.
----------------------------------------
-----------------------------------------------
9. 자바 내용 작성
------------------------------------------
package test;
public class helloTest {
public String
getStr(){
return "Welcome BlazeDS:
success!";
}
}
------------------------------------------------
10. WebContent/WEB-INF/flex/remote-config.xml 파일 수정
빨간색 글자가 추가된 부분임.
만약 위의 파일이 없다면 준비작업2에서 압축 푼 경로에서 import해온다.
(이유는 모르겠지만 나는 없어서...)
이클립스에서 xml여니까 트리구조로 나왔다. 오 신기 ㅡㅡ;
각 상위 태그에서 오른쪽 마우스 클릭해서 add child나 add attribute 메뉴로 아래와 같이
추가했다. 그게 어려우면 그냥 윈도우 탐색기로 경로 찾아가서 메모장이나 editplus
이용해서 수정해도 된다 ㅎㅎ
-----------------------------------------------------------------------------
<?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.helloTest</source>
</properties>
</destination>
</service>
-----------------------------------------------------------------------------
11. RemoteObject_Test.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("error:
"+event.message.toString());
}
//제대로 실행 되었을 경우 이벤트 발생
private function
resultHandler(event:ResultEvent):void
{
Alert.show("result:
"+event.result.toString());
}
//버튼 클릭 후 RemoteObject Call
private function
remote_object_call():void
{
// remoteObjecc에서 java method
call
ro.getStr();
}
]]>
</mx:Script>
<mx:Button
label="service start" click="remote_object_call()" x="159"
y="127"/>
</mx:Application>
12. RemoteObject_Test 프로젝트 선택 후 오른쪽 마우스 클릭 해서 properies클릭
context root변경 -> 프로젝트명으로
13. 이클립스 도구 모음 window -> show view -> other -> server -> server
server 창안에서 마우스 오른쪽 클릭 New-> server 클릭
3번 그림과 같이 뜬다. 3번에서는 Installed Runtimes...버튼 클릭하는데 여기서는 그냥
사용할 서버 톰캣 5.5(아까 J2EE에서 만든 server) 선택 후 finish 버튼 클릭
14. server창에 나타난 톰캣서버 선택 후 마우스 오른쪽 클릭 해서
Add and Remove Project... 선택
왼쪽 창에서 실행시킬 프로젝트 선택 후 add > 버튼 클릭 한 후 finish 버튼 클릭
15. 실행시킨다. 상단의 초록색 동그라미 모양의 재생버튼을 클릭해도 되고
최종 실행시킬 mxml파일 선택 후 마우스 오른쪽 버튼 클릭해서
Rus As-> 2.Flex Application 클릭해도 된다.
[결과 화면]