本文出自:http://wenku.baidu.com/view/c00791cd05087632311212b1.html
本人有改动
MXML代码
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
import mx.rpc.events.FaultEvent;
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
import mx.rpc.events.FaultEvent;
import mx.rpc.Fault;
private function call():void{
jspServlet.request.param = "hello"; //向request中赋上一个名为param的属性,值是hello
jspServlet.send();
}
private function resultHandler(event:ResultEvent):void{
txt1.text = event.result as String;
}
private function faultHandler(event:FaultEvent):void{
var fault:Fault = event.fault;
var s : String = (fault.faultDetail != null)? fault.faultDetail : fault.faultString;
Alert.show(s);
}
]]>
</mx:Script>
<mx:HTTPService id="jspServlet" method="POST" useProxy="false" resultFormat="text" url="./jspServlet"
fault="faultHandler(event)"
result="resultHandler(event)"
showBusyCursor="true"/>
<mx:Button x="27" y="28" useHandCursor="true" buttonMode="true" label="Load" click="call()"/>
<mx:TextArea x="27" y="58" width="450" height="143" id="txt1"/>
</mx:Application>
servlet代码:
package com;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class JspServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
response.setContentType("text/html");
//取出Flex页面传过来的param
String param = (String)request.getParameter("param");
String filename = new String(param.getBytes("ISO8859-1"), "utf-8"); //编码转换
PrintWriter out = response.getWriter();
out.print(param); //返回Flex
out.flush();
out.close();
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
this.doGet(request, response);
}
}
web.xml配置文件:
<servlet>
<servlet-name>JspServlet</servlet-name>
<servlet-class>com.JspServlet</servlet-class><!--类文件-->
</servlet>
<servlet-mapping>
<servlet-name>JspServlet</servlet-name>
<url-pattern>/jspServlet</url-pattern><!--与MXML文件对应-->
</servlet-mapping>
out.print(param); //返回Flex
out.flush();
out.close();
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
this.doGet(request, response);
}
}
web.xml配置文件:
<servlet>
<servlet-name>JspServlet</servlet-name>
<servlet-class>com.JspServlet</servlet-class><!--类文件-->
</servlet>
<servlet-mapping>
<servlet-name>JspServlet</servlet-name>
<url-pattern>/jspServlet</url-pattern><!--与MXML文件对应-->
</servlet-mapping>