remote-config.xml中的配置文件:
<!-- 获取session 示例 -->
<destination id="sessionBiz">
<properties>
<source>com.my.test.GetSession</source>
<scope>application</scope>
</properties>
</destination>
服务器端代码:
public class GetSession {
/**
* 设置session
* @param name session ID
* @param value session值
*/
public void setSession(String name, String value){
FlexContext.getFlexSession().setAttribute(name, value);
}
/**
* 获得session
* @param name session ID
* @return session对应值
*/
public String getSession(String name){
String userrid = (String) FlexContext.getFlexSession().getAttribute(name);
return userrid;
}
}
客户端代码:
<?xml version="1.0" encoding="utf-8"?>
<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"
initialize="application1_initializeHandler(event)">
<fx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.FlexEvent;
import mx.rpc.events.ResultEvent;
private function sessionHandler(event:ResultEvent):void
{
var usercode:String = String(event.result);
Alert.show(usercode);
}
protected function application1_initializeHandler(event:FlexEvent):void
{
sBiz.setSession("老婆", "艳儿");
sBiz.getSession("老婆");
}
]]>
</fx:Script>
<fx:Declarations>
<!-- 定义remoteObject对象 -->
<s:RemoteObject id="sBiz" destination="sessionBiz" showBusyCursor="true">
<s:method name="setSession"/>
<s:method name="getSession" result="sessionHandler(event)"/>
</s:RemoteObject>
</fx:Declarations>
</s:Application>
以下设置的timeout都是30分钟,不同的设置方法有不同的参数时间单位,请大家小心。
用代码对flex的session_timeout设置: //时间单位为“毫秒”
FlexContext.getFlexSession().setTimeoutPeriod(30*60*1000);
用代码对flex的flexclient_timeout设置: //时间单位为“毫秒”
FlexContext.getFlexClient().setTimeoutPeriod(30*60*1000);
用代码对http的session_timeout设置: //时间单位为“秒”
http_session.setMaxInactiveInterval(30*60);
对某个项目的session_timeout设置在servler.xml或context.xml文件中: //时间单位为“分钟”
<Context path="/test" docBase="/test" defaultSessionTimeOut="30"/>
对服务器的session_timeout设置在web.xml文件中: //时间单位为“分钟”
<session-config>
<session-timeout>30</session-timeout>
</session-config>
转自:http://blog.csdn.net/xyylchq/article/details/6265487