2011-02-15 51 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