Table of Contents

Der SessionContext ist ein Objekt das ausschließlich am Server zur Verfügung steht und während der Behandlung eines Client Aufrufs den Zugriff auf Session Informationen sowie spezielle Session bezogene Objekte ermöglicht.

Anwendungsbeispiel

We haveWir haben eine Applikation erstellt, die von einem E-Mail Konto alle vorhandenen Nachrichten prüft und die Anzahl der Nachrichten anzeigt. Der Aufruf wird am Client durch einen Button angestoßen.

Der Aufruf durch den Button funktioniert wie z.B.: Client Actions, Server Actions

Die Server Action führt den Zugriff auf den Mail Server durch und für den Zugriff werden die Zugriffsdaten benötigt. Die Daten werden aus der Applikations Konfiguration ausgelesen.

Beispielcode für die Server Action

/**
 * Returns the number of mails from a preconfigured email account.
 *  
 * @return the number of mails
 */
public int getEmailCount()
{
   IConfiguration cfgSession = SessionContext.getCurrentSessionConfig();
 
   String sServer = cfgSession.getProperty("/application/email/server");
   String sPort = cfgSession.getProperty("/application/email/port");
   String sProtocol = cfgSession.getProperty("/application/email/protocol");
   String sUser = cfgSession.getProperty("/application/email/username");
   String sPwd = cfgSession.getProperty("/application/email/password");
 
   MailCheck mcheck = new MailCheck(sServer, sPort, sProtocol);
 
   return mcheck.getMails(sUser, sPwd).size();
}   

Auszug aus der Konfigurationsdatei:

  ...
  ...
 
  <email>
    <server>servername or ip</server>
    <port>110</port>
    <protocol>pop3</protocol>
    <username>username</username>
    <password>password</password>
  </email>
 
</application>

Der Lebenszyklus des SessionContext

Weitere Anwendungsfälle

Der SessionContext kann auch genutzt werden um: