getContext

j2eeLib.getContext() システム関数は、コードが j2eeLib ライブラリー関数を呼び出す、コンテキストに固有の詳細を保持するオブジェクトを返します。 このコンテキストは、JavaServer Faces、REST-RPC サービス、または SOAP サービスなどです。 SOAP サービス内では、コンテキストは JAX-RPC と JAX-WS とで異なります。

外部型を定義して戻り値をその型にキャストする必要があります。このトピックにある例を参照してください。

構文

  j2eeLib.getContext()
  returns (context Object)
context
環境に応じて、この関数は以下のコンテキスト・オブジェクトのいずれかを戻します。
javax.faces.context.ExternalContext
呼び出しは JSF アプリケーション内から行われます。
javax.servlet.http.HttpServletRequest
呼び出しは EGL REST-RPC サービス内から行われます。
javax.xml.rpc.server.ServletEndpointContext
呼び出しは、JAX-RPC を使用する EGL SOAP サービス内から行われます。
javax.xml.ws.WebServiceContext
呼び出しは、JAX-WS を使用する EGL SOAP サービス内から行われます。

次のコードは、EGL REST-RPC サービスから呼び出されるプログラムの一部です。
  context Object = j2eelib.getContext();
  if(context isa HttpServletRequest)
    writestdout("----------this is an EGL REST-RPC service");
    session HttpSession = (context as HttpServletRequest).getSession();
    writestdout("----------http   sessionid:" + session.getId());
  end
HttpServletRequest タイプを ExternalType として定義する必要があります。
externalType HttpServletRequest type JavaObject {packageName = "javax.servlet.http"}
  function getSession() returns(HttpSession);
end
その定義は、HttpSession ExternalType の定義を必要とします。
externalType HttpSession type JavaObject {packageName = "javax.servlet.http"}
  function getId() returns(STRING);
end

フィードバック