code: public SipApplicationSession getApplicationSessionByKey(String applicationSessionKey,
  			boolean create, boolean isContainerManaged) {
  		if(logger.isDebugEnabled()) {
  			logger.debug("getApplicationSessionByKey - applicationSessionKey=" + applicationSessionKey);
  		}
  		
  		if(applicationSessionKey == null) {
  			throw new NullPointerException("the given key is null !");
  		}
  		SipApplicationSessionKey sipApplicationSessionKey = new SipApplicationSessionKey(null, sipContext.getApplicationName(), applicationSessionKey);
  		
  		MobicentsSipApplicationSession sipApplicationSession = sipContext.getSipManager().getSipApplicationSession(sipApplicationSessionKey, create);
  		if(sipApplicationSession == null) {
  			return null;
  		} else {
  			// make sure to acquire this app session and add it to the set of app sessions we monitor in the context of the application
  			// to release them all when we exit application code
  			sipContext.enterSipApp(sipApplicationSession, null, true, isContainerManaged);
  			return sipApplicationSession.getFacade();
  		}
  	}
docs: /*
  (non-Javadoc)
  @see org.mobicents.javax.servlet.sip.SipSessionsUtilExt#getApplicationSessionByKey(java.lang.String, boolean, boolean)