0
最近、私は、コンテキストオブジェクトが異なるユーザーやサーブレットで変更されないことを知りました。サーブレット:異なるブラウザからアクセスされたときにコンテキストオブジェクトがnullを表示する
私はsetAttributeメソッドを使用して、コンテキストオブジェクトを設定し、私のサーブレットを実行すると、それは私が別のブラウザを使用してサーブレットを実行しようとした場合それが必要私の知識のコンテキストオブジェクトの値にnull.Accordingを見せて、正しいvalue.Butを印刷しますprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
HttpSession session=request.getSession();
String username=request.getParameter("username");
ServletContext context=request.getServletContext();
try{
if(username!=null && !username.isEmpty())
session.setAttribute("savedUserName", username);
context.setAttribute("name", username);
}
catch(NullPointerException e){
}
out.println("Request parameter has username: "+username);
out.println("Session parameter has username: "+(String)session.getAttribute("savedUserName"));
out.println("Context parameter has username: "+(String)context.getAttribute("name"));
}
すべてのサーブレットで動作します。上記のプログラムでは、URLからパラメータを取得しています。私のコードの問題は何ですか?
2つの要求の間に、サーバーを再起動したり、アプリケーションを再デプロイした可能性があります。 –