一个Flex发送XML到Servlet,Servlet返回XML给Flex的过程示例(顺带了获取List选中值的获取示例)。
Flex主要代码:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.controls.*;
private var xx:XML = <lists>
<list>
<tag><title>曲目一</title></tag>
<tag><title>曲目二</title></tag>
<tag><title>曲目三</title></tag>
</list></lists>;
private function selectVideo():void
{
Alert.show("当前选择的是第"+video_list.selectedIndex+"个选项,内容为:"+video_list.selectedItem.title);
//以下是测试flex端向servlet发送XML数据的例子
var loginXML:XML =
<users>
<user>
<userid>3.95</userid>
<username>中文会乱码,解决方法见 http://yinm.blogdriver.com/yinm/574004.html</username>
<emailaddress>email@email.com</emailaddress>
</user>
</users>;
//employeeSrv.send();
employeeSrv.send(loginXML);
/**
* 服务器端:
SAXBuilder builder = new SAXBuilder();
Document doc = builder.build( request.getInputStream() );
System.out.println(doc.getRootElement().getChildren().size());//.getChild("item").getChildText("price").toString() );
response.setContentType("text/xml") ;
PrintWriter out = response.getWriter();
String str = "<?xml version='1.0' encoding='utf-8'?><users>";
str = str + "<user>";
str = str + "<userid>1</userid>";
str = str + "<username>" + "我靠" + "</username>";
str = str + "<emailaddress>" + "邮件" + "</emailaddress>";
str = str + "</user>";
str = str + "</users>";
out.print(str);
//以下这行在servlet中必写,jsp中不用写
out.flush();
或者这样去解析:
response.setCharacterEncoding("UTF-8");
String o= request.getRequestURL().toString();
BufferedReader br = new BufferedReader(new InputStreamReader(
(ServletInputStream) request.getInputStream()));
String line = null;
StringBuilder sb = new StringBuilder();
while ((line = br.readLine()) != null) {
System.out.println(sb.append(line));
}
PrintWriter out = response.getWriter();
out.println(sb.toString());
out.flush();
*/
}
function getMsg(event:Object):void
{
Alert.show(employeeSrv.lastResult.users.user.username);
}
]]>
</mx:Script>
<mx:List id="video_list" x="0" y="0" width="230" height="390"
dataProvider="{xx.list.tag}" labelField="title"
change="selectVideo();">
</mx:List>
<mx:HTTPService id="employeeSrv" contentType="application/xml" method="get" result="getMsg(event.result);" url="http://localhost:8088/szeln/report.do?method=selectTrain" showBusyCursor="true"/>
<mx:DataGrid id="dgUserRequest1" x="320" y="227" dataProvider="{employeeSrv.lastResult.users.user}" width="240">
<mx:columns>
<mx:DataGridColumn headerText="用户编号" dataField="userid" />
<mx:DataGridColumn headerText="用户名称" dataField="username" />
<mx:DataGridColumn headerText="邮件地址" dataField="emailaddress" />
</mx:columns>
</mx:DataGrid>
</mx:Application>
分享到:
相关推荐
c# 随记.docx
NULL 博文链接:https://lobin.iteye.com/blog/2365756
互联网公司实习日记随记参考.pdf互联网公司实习日记随记参考.pdf互联网公司实习日记随记参考.pdf互联网公司实习日记随记参考.pdf互联网公司实习日记随记参考.pdf互联网公司实习日记随记参考.pdf
java随记
网络原理随记.pdf
linux net 管理随记,留着个人备忘
学习c++过程中的一些知识点随记,我感觉重要的就稍微记了一下,比较简略,但是快速的阅读的话可以提醒自己想起那一部分的知识点。在复习c++知识点的时候,有些帮助。
Unity 随记1
JSP PDF打印 随记 复杂模板设计
面试随记???随时更新
git随记 git
重点小学生寒假记随记大全.doc
会计事务所毕业实习日记随记.docx
公司法务实习日记随记三篇.pdf
会计专业毕业实习日记随记篇.pdf
重点小学生母亲节日记随记大全.doc
HL_Letter个人随记
数据分级存储及访问方式设计方案研究随记.docx数据分级存储及访问方式设计方案研究随记.docx
VC++2010游戏开发随记之十三.pdf