© Erick Costanio
Persiapan
Flex Builder
Netbeans
Mysql Server
apache-tomcat-6.0.18.zip
blazeds.war
ibatis-2.3.3.720.jar
mysql-connector-java-5.0.8-bin.jar
dibawah :
Mengaktifkan Apache Tomcat(3)
Pastikan tampilan start up tomcat seperti
screen dibawah ini (Tomcat is running..)
Deploy Blazeds ke Tomcat
Rename blazeds.war menjadi flexjava.war
Buka http://localhost:8080/manager/html
Finish
Pastikan Struktur project seperti ini :
Create Flex Project
Buka Flex Builder 3 New flex project Isi nama
project : MyContact
Pilih Application server type : J2EE next
<sqlMap namespace="Contact">
<!--- Showing all data of table -->
<select id="selectAll" resultClass="Contact">
select * from contact
</select>
</sqlMap>
SqlMapConfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig
PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<settings useStatementNamespaces="true"/>
<transactionManager type="JDBC">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="com.mysql.jdbc.Driver"/>
<property name="JDBC.ConnectionURL"
value="jdbc:mysql://localhost:3306/dbContact"/>
<property name="JDBC.Username" value="root"/>
<property name="JDBC.Password" value=""/>
</dataSource>
</transactionManager>
<sqlMap resource="Contact.xml"/>
</sqlMapConfig>
SqlMapService.java
import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
import java.io.Reader;
<destination id="contactService">
<properties>
<source>ContactService</source>
</properties>
</destination>
Terakhir kembali ke myContact (Flex Project)
Buka file MyContact.mxml. Ganti dengan source berikut :
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
[Bindable]
private var arr:ArrayCollection;
package
{
[Bindable]
[RemoteClass(alias="Contact")]
public class Contact
{
public var id:uint;
public var firstName:String;
public var lastName:String;
public var email:String;
}
}
Insert Contact (5)
Terakhir ubah MyContact.mxml dengan kode berikut :
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="horizontal" xmlns:local="*">
<mx:Script>
<![CDATA[
import mx.rpc.events.FaultEvent;
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
[Bindable]
private var arr:ArrayCollection;
private function resultSelectAll(event:ResultEvent):void{
arr = event.result as ArrayCollection;
}
private function resultInsert(event:ResultEvent):void{
roContact.selectAll();
}
private function faultInsert(f:String):void{
Alert.show(f);
}
private function insert():void{
var c:Contact = new Contact();
c.id = uint(Number(tiId.text));
c.firstName = tiFirstName.text;
c.lastName = tiLastName.text;
c.email = tiEmail.text;
roContact.insert(c);
}
]]>
</mx:Script>
Insert Contact (5) Cont..
<mx:RemoteObject id="roContact" destination="contactService">
<mx:method name="selectAll" result="resultSelectAll(event)"/>
<mx:method name="insert" result="resultInsert(event)" fault="faultInsert(event.fault.faultString)"/>
</mx:RemoteObject>
<mx:DataGrid id="dataGrid" dataProvider="{arr}" creationComplete="roContact.selectAll()"/>
<mx:VBox>
<mx:Form defaultButton="{insertButton}">
<mx:FormItem label="ID">
<mx:TextInput id="tiId" text="{dataGrid.selectedItem.id}"/>
</mx:FormItem>
<mx:FormItem label="FIRST NAME">
<mx:TextInput id="tiFirstName" text="{dataGrid.selectedItem.firstName}"/>
</mx:FormItem>
<mx:FormItem label="LAST NAME">
<mx:TextInput id="tiLastName" text="{dataGrid.selectedItem.lastName}"/>
</mx:FormItem>
<mx:FormItem label="EMAIL">
<mx:TextInput id="tiEmail" text="{dataGrid.selectedItem.email}"/>
</mx:FormItem>
</mx:Form>
<mx:HBox width="100%" horizontalAlign="right">
<mx:Button id="insertButton" label="insert" />
<mx:Button id="updateButton" label="update" />
<mx:Button id="deleteButton" label="delete" />
</mx:HBox>
</mx:VBox>
if(cs.remove(3) != 0){
System.out.println("Delete Berhasil");
}
Jalankan TestClient, Jika sudah berhasil lakukan copy file class dan xml seperti
pada slide 22.
Update & Delete Contact (4)
Buka MyContact.mxml
Tambahkan method update dan remove di <mx:RemoteObject>
Run
appication