code: public Object execute(RequestWrapper request) throws Exception {
  		ContainerWrapper cw = containerCallback.getContainerWrapper();
  		if (!cw.isStart()) {
  			Debug.logError("JdonFramework not yet started, please try later ", module);
  			return null;
  		}
  		SessionContextSetup sessionContextSetup = (SessionContextSetup) cw.lookup(ComponentKeys.SESSIONCONTEXT_SETUP);
  
  		TargetMetaRequest targetMetaRequest = targetMetaRequestsHolder.getTargetMetaRequest();
  		ComponentVisitor componentVisitor = targetMetaRequest.getComponentVisitor();
  		targetMetaRequest.setVisitableName(ComponentKeys.SESSIONCONTEXT_FACTORY);
  		// create sessionContext and save sessionContext into HttpSession hold
  		// it
  		SessionContext sessionContext = (SessionContext) componentVisitor.createSessionContext();
  		// save sesssionConext in targetMetaRequest
  		targetMetaRequest.setSessionContext(sessionContext);
  		// save remote IP or login account into this sesssionConext
  		// * SessionContextInterceptor will get the SessionContext into
  		// targetObject implements SessionAcceptable
  		sessionContextSetup.setup(sessionContext, request);
  		return serviceAccessor.executeService(cw);
  	}
docs: /*
  1. create a SessionContext object in httpsession 2. save the principle
  name in the session context. the principle name the
  request.getPrincipleNme you can save more attribute in the SessionContext
  object by replcaing this class in container.xml *
  SessionContextInterceptor will get the SessionContext into targetObject
  implements SessionAcceptable