用于查看请求和响应以及会话内容的JSP代码

时间:2010-12-03 14:39:21

标签: java jsp

我正在尝试调试一个问题,即HTTP会话被丢弃或者浏览器没有发回cookie。由于我们必须处理的安全约束,我需要一个JSP,我可以放在服务器上,它将显示请求,响应和HTTP会话内容的内容。

有没有人有任何代码可以执行此操作?它应该是一个自包含的JSP,我可以将其放入现有的WAR文件中(假设我只能访问默认的Sun Java库)。

1 个答案:

答案 0 :(得分:2)

将以下内容放入jsp文件中,您将获得所需的所有信息

<%

out.println("<h1>application scope</h1>");
java.util.Enumeration e=application.getAttributeNames();
out.println("<table border='3' width='1000px'>");
while(e.hasMoreElements())
    {
        String name=(String)e.nextElement();

        Object value=application.getAttribute(name);
        if(value==null)
        {
        value="NONE";
        }
        System.out.println(name+":"+value);
        if(!name.contains("ibm") && !name.contains("myfaces")       )
        {
            if(value!=null && value.getClass().toString().contains("versata"))
            {
                out.println("<tr style='font-weight:bold;color:red;'>");        
            }
            else
            {
                out.println("<tr>");    
            }
                out.println("<td>");        
                out.println("Name: "+name);
                out.println("</td>");       
                out.println("<td>");        
                out.println("Value: "+value);
                out.println("</td>");       
                if(value!=null)
                {
                out.println("<td>");        
                out.println("Class: "+value.getClass());
                out.println("</td>");       
                }
                out.println("</tr>");       
        }
    }
out.println("</table>");
out.println("<h1>session scope</h1>");

e=session.getAttributeNames();
out.println("<table border='3' width='1000px'>");
while(e.hasMoreElements())
    {
        String name=(String)e.nextElement();

        Object value=application.getAttribute(name);
        if(value==null)
        {
        value="NONE";
        }
        System.out.println(name+":"+value);
        if(!name.contains("ibm") && !name.contains("myfaces")       )
        {
            if(value!=null && value.getClass().toString().contains("versata"))
            {
                out.println("<tr style='font-weight:bold;color:red;'>");        
            }
            else
            {
                out.println("<tr>");    
            }
                out.println("<td>");        
                out.println("Name: "+name);
                out.println("</td>");       
                out.println("<td>");        
                out.println("Value: "+value);
                out.println("</td>");       
                if(value!=null)
                {
                out.println("<td>");        
                out.println("Class: "+value.getClass());
                out.println("</td>");       
                }
                out.println("</tr>");       
        }
    }
out.println("</table>");

out.println("<h1>request scope</h1>");

e=request.getAttributeNames();
out.println("<table border='3' width='1000px'>");
while(e.hasMoreElements())
    {
        String name=(String)e.nextElement();

        Object value=application.getAttribute(name);
        if(value==null)
        {
        value="NONE";
        }
        System.out.println(name+":"+value);
        if(!name.contains("ibm") && !name.contains("myfaces")       )
        {
            if(value!=null && value.getClass().toString().contains("versata"))
            {
                out.println("<tr style='font-weight:bold;color:red;'>");        
            }
            else
            {
                out.println("<tr>");    
            }
                out.println("<td>");        
                out.println("Name: "+name);
                out.println("</td>");       
                out.println("<td>");        
                out.println("Value: "+value);
                out.println("</td>");       
                if(value!=null)
                {
                out.println("<td>");        
                out.println("Class: "+value.getClass());
                out.println("</td>");       
                }
                out.println("</tr>");       
        }
    }
out.println("</table>");

%>