2011-02-15 112 views
1

我試圖通過BlazeDS集成Flex應用程序來訪問Rest服務(使用Jersey)。我能夠得到Rest + Jersey的工作(我猜想很簡單),並且我能夠配置Flex + BlazeDS。我正在尋求幫助,根據指定的註釋(例如我的休息服務類中的@Path)從Flex UI調用其餘服務(不同的方法)。REST -Jersey + BlazeDS + Flex集成

有人可以提供一些指針/示例來配置Flex -BlazeDS來調用其餘服務嗎?

感謝,
RJ

回答

0

首先,如果你使用BlazeDS和只會有Flex客戶端,您應該設置BlazeDS的遠程對象,而不是REST服務。您可以使用amf通道併發送對象而不是xml/json/text。

這就是說,你用的是什麼版本的flex?我只使用Flex 4(和ActionScript 3)使用的URLRequest和URLLoader(或的HTTPRequest)做到了這一點
例子:

var dataRequest:URLRequest; 
var dataLoader:URLLoader; 

dataRequest = new URLRequest("http://localhost:8080/Path/to/webservice"); 
//using post in this case, you can also acess GET 
dataRequest.method = URLRequestMethod.POST; 
var variables:URLVariables = new URLVariables(); 

variables.xmlCoords = xml; 

dataRequest.data = variables; 
dataRequest.contentType = "application/xml"; 
dataRequest.requestHeaders.push(new URLRequestHeader("accept", "application/xml")); 

dataLoader.load(dataRequest); 

Is it feasible to create a REST client with Flex?這個話題已經有一些很好的指針這裏討論,我想你應該看看。

希望這可以幫助你一些/點你在正確的方向。

+0

謝謝邁克。需要提到的一點很重要,其餘服務需要從Flex用戶界面和外部用戶都調用(即服務需要以Restful和非休息方式調用)。推薦的方法是什麼? Blaze Ds打電話給休息(從用戶界面),並有暴露的服務從外部調用?任何意見/建議?我仍然試圖得到一個休息模式的懸念,需要一些輸入。謝謝,RJ – 2011-02-16 11:25:44