Uploaded image for project: 'Struts 1'
  1. Struts 1
  2. STR-138

logic:match not robust against cookies blocked by firewall

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: Nightly Build
    • Fix Version/s: 1.0.0
    • Component/s: Example Applications
    • Labels:
      None
    • Environment:
      Operating System: All
      Platform: PC
    • Bugzilla Id:
      1381

      Description

      Trying out struts-exercise-taglib example from nightly build 20010416.
      Running standalone Tomcat 3.2.1 and 3.2.2b3 (identical behavior) in Win2K sp1

      When invoking the Match tags (logic-match.jsp) through a firewall which
      blocks cookies line 35 (invoking logic:match) does always result in

      2001-04-18 05:30:53 - Ctx( /struts-exercise-taglib ): Exception in: R( /struts-exercise-taglib + /logic-match.jsp + null) - javax.servlet.ServletException: Cannot compare null variable to value 0
      at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:459)
      at _0002flogic_0002dmatch_0002ejsplogic_0002dmatch_jsp_0._jspService(_0002flogic_0002dmatch_0002ejsplogic_0002dmatch_jsp_0.java:1470)
      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:177)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
      at org.apache.tomcat.core.Handler.service(Handler.java:286)
      at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
      at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
      at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
      at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:210)
      at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
      at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
      at java.lang.Thread.run(Thread.java:484)
      Root cause:
      javax.servlet.jsp.JspException: Cannot compare null variable to value 0
      at org.apache.struts.taglib.logic.MatchTag.condition(MatchTag.java:195)
      at org.apache.struts.taglib.logic.MatchTag.condition(MatchTag.java:146)
      at org.apache.struts.taglib.logic.ConditionalTagBase.doStartTag(ConditionalTagBase.java:218)
      at _0002flogic_0002dmatch_0002ejsplogic_0002dmatch_jsp_0._jspService(_0002flogic_0002dmatch_0002ejsplogic_0002dmatch_jsp_0.java:223)
      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:177)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
      at org.apache.tomcat.core.Handler.service(Handler.java:286)
      at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
      at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
      at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
      at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:210)
      at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
      at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
      at java.lang.Thread.run(Thread.java:484)

      Setting noCookies="true" in server.xml of the Tomcat SessionInterceptor
      does not change this behavior.

      Possibly in MatchTag.java method condition(boolean desired) there should
      be made provision for cookies being disabled.

      Best,
      Michael

        Attachments

          Activity

            People

            • Assignee:
              craigmcc Craig R. McClanahan
              Reporter:
              mgd@technosis.de Michael Gerdau
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: