【问题标题】:Passing Parameter from Flex to Java method which accepts datarecords or parametermap将参数从 Flex 传递到接受数据记录或参数映射的 Java 方法
【发布时间】:2012-08-28 09:21:03
【问题描述】:

我已经开发了java程序,它将接受数据记录(函数参数)并将插入数据库。但是,我不知道如何将参数从flex传递给这个java方法。

【问题讨论】:

标签: java actionscript-3 apache-flex flex4.5


【解决方案1】:

flex 和 java 之间有不同的通信方式。我建议您查看 BlazeDS 框架。有很多教程可用。

【讨论】:

    【解决方案2】:

    请阅读Using RemoteObject components

    例如:

    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
            xmlns:s="library://ns.adobe.com/flex/spark" 
            xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> 
        <fx:Declarations> 
            <mx:RemoteObject 
                id="userRequest" 
                destination="ColdFusion" 
                source="flexapp.returnusers"> 
    
                <mx:method name="returnRecords" result="returnHandler(event)" 
                           fault="mx.controls.Alert.show(event.fault.faultString)"/> 
                <mx:method name="insertRecord" result="insertHandler()" 
                           fault="mx.controls.Alert.show(event.fault.faultString)"/> 
            </mx:RemoteObject> 
        </fx:Declarations> 
    
        <fx:Script> 
            <![CDATA[ 
                import mx.rpc.events.ResultEvent; 
    
                private function returnHandler(e:ResultEvent):void  
                { 
                    dgUserRequest.dataProvider = e.result; 
                } 
                private function insertHandler():void  
                { 
                    userRequest.returnRecords(); 
                } 
                private function clickHandler():void  
                { 
                    userRequest.insertRecord(username.text, emailaddress.text); 
                }  
            ]]> 
        </fx:Script> 
    
        <mx:Form x="22" y="10" width="300"> 
            <mx:FormItem> 
                <s:Label text="Username" />     
                <s:TextInput id="username"/> 
            </mx:FormItem> 
            <mx:FormItem> 
                <s:Label text="Email Address" />     
                <s:TextInput id="emailaddress"/> 
            </mx:FormItem> 
            <s:Button label="Submit" click="clickHandler()"/> 
        </mx:Form> 
    
        <mx:DataGrid id="dgUserRequest" x="22" y="200"> 
            <mx:columns> 
                <mx:DataGridColumn headerText="User ID" dataField="userid"/> 
                <mx:DataGridColumn headerText="User Name" dataField="username"/> 
            </mx:columns> 
        </mx:DataGrid> 
    </s:Application> 
    

    在返回处理程序中,您收到 e:ResultEvent 并且 e.result 包含远程方法调用的结果。

    userRequest.returnRecords();
    

    在java端将是

    public List<User> returnRecords(); 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-19
      • 1970-01-01
      • 2016-07-31
      • 2013-10-30
      • 2013-10-04
      • 1970-01-01
      相关资源
      最近更新 更多