zoukankan      html  css  js  c++  java
  • [转帖]working with session on BlazeDS

    when applying BlazeDS, you might notice that in web.xml, a listener named "flex.messaging.HttpFlexSession" should be inserted.
    It is how BlazeDS can work with session data.
    BlazeDS provide several classes which is useful for get access to the session and the HTTP pieces of the session, such as the HTTP servlet request and response. This lets you access HTTP data when you use a Flex application in the context of a larger web application where other classes, such as JSPs or Struts actions, might have stored information.

  • flex.messaging.FlexContext
  • flex.messaging.FlexSession

    The following example shows a Java class that calls FlexContext.getHttpRequest() to get an HTTPServletRequest object and calls FlexContext.getFlexSession() to get a FlexSession object. By exposing this class as a remote object, you can make it accessible to a Flex client application; you place the compiled class in the WEB_INF/classes directory

    package myROPackage;
    import flex.messaging.*;
    import java.io.*;
    import java.util.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    public class SessionRO {
    public HttpServletRequest request;
    public FlexSession session;
    public UsefulRemoteObject() {
    request = FlexContext.getHttpRequest();
    session = FlexContext.getFlexSession();
    }
    public String getSessionId() throws Exception {
    String s = new String();
    s = (String) session.getId();
    return s;
    }
    public String getHeader(String h) throws Exception {
    String s = new String();
    s = (String) request.getHeader(h);
    return h + "=" + s;
    }
    }
    

    The following example shows a Remoting Service destination definition that exposes the SessionRO class as a remote object. You add this destination definition to your Remoting Service configuration file.

    ...
    <destination id="myRODestination">
    <properties>
    <source>myROPackage.SessionRO</source>
    </properties>
    </destination>
    ...
    

    The following examples shows an ActionScript snippet for calling the remote object from a Flex client application. You place this code inside a method declaration.

    ...
    ro = new RemoteObject();
    ro.destination = "myRODestination";
    ro.getSessionId.addEventListener("result", getSessionIdResultHandler);
    ro.getSessionId();
    ...
查看全文
  • 相关阅读:
    模拟Spring的Ioc
    Java常见异常总结
    Java编码与乱码问题
    Java正则表达式入门
    观察者模式
    Java内存泄漏问题
    责任链模式
    选择排序(C++/Java实现)
    设计模式学习工厂模式
    Java验证码
  • 原文地址:https://www.cnblogs.com/toto/p/1731576.html
  • Copyright © 2011-2022 走看看