2012-04-01 18 views
0

私のサーブレットからセッションを確立してアクセスしようとしていますが、動作させることができません。サーブレットからJSPセッションにアクセス

すべてのチュートリアルでは、単にrequest.getSession(true)を呼び出します。私はセッションオブジェクトの "要求を解決することはできません"取得します。

私は純粋にtaglibsで動作する必要があります.jspページでロジックはありません。

どのようにセッションデータにアクセスできますか? ありがとう!

package controller; 

import java.io.*; 
import javax.servlet.*; 
import javax.servlet.jsp.*; 
import javax.servlet.http.*; 
import javax.servlet.jsp.tagext.*; 

public class Initialize extends BodyTagSupport 
{ 
    public int doEndTag() throws JspTagException 
    { 
     try 
     { 
      // Implementation 
      JspWriter out = pageContext.getOut(); 
      HttpSession session = request.getSession(true); 
      out.println(session.getId()); 
      return SKIP_BODY; 
     } 
     catch(IOException error) 
     { 
      throw new JspTagException(error); 
     } 
    } 
} 
+0

[OK]を、私はそれを考え出しました。 私はHttpSessionセッション= pageContext.getSession()を使用しなければなりませんでした。 pageディレクティブにはsession = "true"が含まれている必要があります。 –

+0

pageディレクティブはsession = "true"ディレクティブをデフォルト動作として必要としません。明示的にsession = "false"を指定しない限り、JSPページごとにセッションが作成されます。 – reevesy

答えて

0

のtaglibからセッション・データ・アクセスのための右の例はあったであろう:

package controller; 

import java.io.*; 
import javax.servlet.*; 
import javax.servlet.jsp.*; 
import javax.servlet.http.*; 
import javax.servlet.jsp.tagext.*; 

public class Initialize extends BodyTagSupport 
{ 
    public int doEndTag() throws JspTagException 
    { 
     try 
     { 
      // Implementation 
      JspWriter out = pageContext.getOut(); 
      HttpSession session = pageContext.getSession(true); 
      out.println(session.getId()); 
      return SKIP_BODY; 
     } 
     catch(IOException error) 
     { 
      throw new JspTagException(error); 
     } 
    } 
} 
関連する問題