Flex和JSP的交互通信

第一种方式:Flex——JSP——Flex
Flex页面,向JSP传参,JSP处理后,返回至Flex。这一种HttpService即可解决。估计网上的方式很多了,可以借鉴BladeDz的应用,当然也可以硬编码。
核心代码如下:

//Flex传参
<mx:HTTPService id="ser" url="p.jsp" resultFormat="xml">
<mx:request>
<categoryID>{categoryId}</categoryID>
</mx:request>
</mx:HTTPService>
//JSP 生成的是XML文件
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<results>
<%
//rs为javabean
out.println("<phone>");
out.println("<id>"+rs.getId()+"</id>");
out.println("<name>"+rs.getName()+"</name>");
out.println("</phone>");

%>
</results>
//Flex取结果
<mx:DataGrid id="dg">
{ser.result.results.phone}
</mx:DataGrid >


第二种方式:JSP——Servlet/JSP——Flex
JSP界面,JSP(Servlet)处理,最后跳转到Flex界面。同时Flex界面要获得JSP的某个参数值(如下username)。可以在Flex的那个html页面中处理,主要处理方式如下:
先将flex的html页面变成jsp,添加

//由servlet获得
String username =(String)request.getAttribute("username");

定义flashVars变量,然后在swfobject.embedSWF中添加"?id=<%=username%>"如下
   
<param name="flashVars" value="id=<%=username%>" />
swfobject.embedSWF(
"index.swf?id=<%=username%>", "flashContent",
"100%", "100%",
swfVersionStr, xiSwfUrlStr,
flashvars, params, attributes);

就可以在Flex界面中,通过FlexGlobals.topLevelApplication.parameters.id获得jsp所传的username了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值