环境:
1、Flash Builder4.6和MyEclipse集成。(Eclipse)也一样。
2、在MyEclipse下,试图切换到Flash,创建一个Flex项目
Java代码:
1、
UserInfo类
package cn.flex;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name="UserInfo")
public class UserInfo {
private String username;
private String password;
@Id
@Column(name="UserName")
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
@Column(name="Password")
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
2、
UserSession类
package cn.flex;
import flex.messaging.FlexContext;
public class UserSession {
public void SetUserSession(String username, String password) {
UserInfo userInfo = new UserInfo();
userInfo.setUsername(username);
userInfo.setPassword(password);
FlexContext.getFlexSession().setAttribute("username", userInfo);
}
public UserInfo GetUserSession() {
UserInfo userInfo = (UserInfo) FlexContext.getFlexSession()
.getAttribute("username");
return userInfo;
}
}
配置文件:
1、remoting-config.xml配置文件
<!--用户信息保存到session中 -->
<destination id="userSession">
<properties>
<source>cn.flex.UserSession</source>
<scope>application</scope>
</properties>
</destination>
2、在flex<fx:Declarations>中声明调用session
<s:RemoteObject id="userSession" destination="userSession"
endpoint="http://localhost:8080/FlexLogin/messagebroker/amf">
<s:method name="SetUserSession" result="setSession_resultHandler(event)"
fault="setSession_faultHandler(event)"/>
<s:method name="GetUserSession" result="getSession_resultHandler(event)"
fault="getSession_faultHandler(event)"/>
</s:RemoteObject>
protected function setSession_clickHandler(event:MouseEvent):void{userSession.SetUserSession(username.text,password.text);}protected function getSession_clickHandler(event:MouseEvent):void{userSession.GetUserSession();}
官网帮助文档链接:
1、BlazeDS 4 Java API Reference(做为flex前台和后台java的桥接)