Java开发者如何测试Flex
【IT168 技术文档】
样例1:使用HTTPService访问数据
运行样例:
访问http://localhost:8080/testdrive/sample1/SampleXML.mxml
在这个测试中,你会注意到在你第一次访问一个应用时会有一个延迟。这是因为第一次访问应用时我们使用的web编译器要将你的应用编译成字节码(和JSP编译模型相类似)。在此之后的请求会更快,因为这个应用已经被编译过了。在一个产品环境中,你应当部署你的预编译应用。
注意:根据你的配置不同,你可能需要增加你的应用服务器的JVM的堆容量,以便使用web编辑器。在产品环境中不会需要这样做,因为你不使用web编辑器。如果你在尝试第一次访问一个样例时,获得一个java.lang.OutOfMemoryError例外,那么你必须增加堆容量。
点击"Get Data":DataGrid控件被填充catalog.jsp文件返回的XML数据,也要注意到一些内置的DataGrid控件的特点:列可以排序(点击列标题头),列可以移动(点击列标题头,按下鼠标按钮,将列移到一个新的位置)在代码编辑器中打开下面的文件:
testdrive/sample1/SampleXML.mxml
testdrive/sample1/catalog.jsp
使用HTTPService,你能够发送HTTP请求到服务器,然后处理响应。虽然HTTPService能用来处理不同的响应类型,但是处理XML是更为特色的。你可以利用任何种类的服务器端技术来使用HTTPService:JSP, Servlet, ASP, Ruby on Rails, PHP等等。你可以在HTTPService的url属性里指定目标服务。
Flex提供了精致的数据绑定性能。你可以将一个属性值绑定到另一个属性值上,或到一个通用表达式上。在这个例子中,DataGrid控件的dataProvider属性被绑定到了HTTPService的lastResult属性上。
HTTPService调用是异步的。在客户端应用获得数据时,导致HTTPService上的结果事件被触发。如果在服务器端一个错误发生,或网络出现错误,那么错误事件被触发。(参见例5,一个代码结果与错误事件处理器的例子)默认地,从服务器获得的XML文档被无序地放入一个目标图表中。这允许你使用点符号操纵数据。你也可以通过在HTTPService上指定resultFormat="e4x"做为一个XML文档获取结果。在那样的情况下,你可以使用E4X (ECMAScript for XML)解析文档。
更多信息HTTP和HTTPS都得到支持:
取代使用url属性指定一个hardcoded URL,你能够在目的属性中指定一个逻辑名称。然后你可以将这个逻辑名称映射到WEB-INF\flex\proxy-config.xml文件中的一个确切的URL上。在这个例子中,你可以用destination="catalog"替换url="catalog.jsp"(打开WEB-INF\flex\proxy-config.xml查看catalog destination是如何配置的)。另一个例子,你可以指定destination="news" 然后改变DataGrid的数据绑定到dataProvider="{srv.
lastResult.rss.channel.item}",就可以从纽约时报上获得标题。