flex 整合 struts 的一個簡單示例(使用Httpservice)

關於在Eclipse下 flex整合java的配置請參考: http://aaacd.blog.hexun.com/15758049_d.html
這裏是一個flex整合struts的一個基本的例子
1. testFlex10.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
    layout="absolute"
    backgroundColor="#FFFFFF"
    backgroundAlpha="0" horizontalCenter="true" >
<mx:HTTPService id="info" url="test.do">
<mx:request>
<username>
    {userId.text}
</username>
<userpwd>
    {password.text}
</userpwd>
</mx:request>
</mx:HTTPService>   
<mx:TitleWindow id ="loginWindow" xmlns:mx="http://www.adobe.com/2006/mxml" title="Logon" x="350" y="80">
<mx:Form>
<mx:FormItem label="LUserId" required="true">
<mx:TextInput id="userId" width="150">
</mx:TextInput>
</mx:FormItem>
<mx:FormItem label="LPassword" required="true">
<mx:TextInput id="password"  width="150"/>
</mx:FormItem>
<mx:FormItem>
<mx:HBox horizontalGap="30">
<mx:Button label="Logon" click="info.send();" />
<mx:Button label="Cancel" click="info.send();"/>
</mx:HBox>
</mx:FormItem>
</mx:Form>
</mx:TitleWindow>
<mx:DataGrid dataProvider="{info.lastResult.userinfo.user}" width="60%" x="160" y="300" >
<mx:columns>
<mx:Array>
<mx:DataGridColumn headerText="姓名" dataField="username"/>
<mx:DataGridColumn headerText="密碼" dataField="userpwd"/>
<mx:DataGridColumn headerText="郵件" dataField="useremail"/>
<mx:DataGridColumn headerText="年齡" dataField="userage"/>
</mx:Array>
</mx:columns>
</mx:DataGrid>
</mx:Application>
核心代碼:
<mx:HTTPService id="info" url="test.do">
<mx:request>
<username>
    {userId.text}
</username>
<userpwd>
    {password.text}
</userpwd>
</mx:request>
</mx:HTTPService>   
以及 
 dataProvider="{info.lastResult.userinfo.user}"
2.struts.config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">
<struts-config>
  <data-sources />
  <form-beans >
    <form-bean name="testForm" type="com.yourcompany.struts.form.TestForm" />
  </form-beans>
  <global-exceptions />
  <global-forwards />
  <action-mappings >
    <action
      attribute="testForm"
      input="/form/test.jsp"
      name="testForm"
      path="/test"
      scope="request"
      type="com.yourcompany.struts.action.TestAction" >
      <forward name="success" path="/MyJsp.jsp"></forward>
</action>
  </action-mappings>
  <message-resources parameter="com.yourcompany.struts.ApplicationResources" />
</struts-config>
3.Action: TestAction.java

package com.yourcompany.struts.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.yourcompany.struts.form.TestForm;
public class TestAction extends Action {
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response) {
  TestForm testForm = (TestForm) form;// TODO Auto-generated method stub
  String name = testForm.getUsername();
  System.out.println("fadf : " + name);
  return (mapping.findForward("success"));
 }
}
4. MyJsp.jsp
<%@page import="
                java.util.List"%>
<%
response.setContentType("text/xml");
out.println("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
out.println("<userinfo>");
        out.println("<user userId=\""+3123+"\">");       
        out.println("<username>"+42314+"</username>");
        out.println("<userpwd>"+3123+"</userpwd>");
        out.println("<useremail>"+4231+"</useremail>");
        out.println("<userage>"+2+"</userage>");
        out.println("<regdate>"+4231+"</regdate>");
        out.println("</user>");
out.println("</userinfo>");
%>
 
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/adriano86426/archive/2009/02/24/3928454.aspx
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章