データレコード (関数パラメーター) を受け取り、データベースに挿入する Java プログラムを開発しましたが、flex からこの Java メソッドにパラメーターを渡す方法がわかりません。
2 に答える
0
Flex と Java の間で通信するには、さまざまな可能性があります。BlazeDS フレームワークを調べてみることをお勧めします。利用可能なチュートリアルがたくさんあります。
于 2012-08-28T09:27:45.953 に答える
0
RemoteObject コンポーネントの使用をお読みください
例えば:
<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();
于 2012-09-05T12:37:48.023 に答える