Uploaded image for project: 'Jira Data Center'
  1. Jira Data Center
  2. JRASERVER-9928

Status names with apostrophes generate exceptions on *Browse Projects* page

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Medium Medium
    • 3.6.2
    • 3.5.3
    • None

      For JIRA 3.5, it was possible to use a status name with an apostrophe. Navigating to the Browse Projects page did not generate any errors.

      However, with the same data set, the following error is generated when navigating to the Browse Projects screen:

      The problem status is Won't Fix.

      The attached data set can be used to reproduce this problem - test-bk.xml

      • Username = admin
      • Password = admin
       Cause:
      java.lang.IllegalArgumentException: missing matching end quote for query: Won't Fix
      
      Stack Trace: [hide]
      
      java.lang.IllegalArgumentException: missing matching end quote for query: Won't Fix
      	at webwork.util.Query.throwIllegalArgumentException(Query.java:606)
      	at webwork.util.Query.findMatchingQuote(Query.java:573)
      	at webwork.util.Query.splitQuery(Query.java:481)
      	at webwork.util.Query.(Query.java:124)
      	at webwork.util.Query.getQuery(Query.java:34)
      	at webwork.util.ValueStack.findValue(ValueStack.java:173)
      	at webwork.view.taglib.WebWorkBodyTagSupport.findValue(WebWorkBodyTagSupport.java:61)
      	at webwork.view.taglib.ui.ComponentTag.doEndTag(ComponentTag.java:154)
      	at org.apache.jsp.includes.panels.browser.openissues_jsp._jspService(org.apache.jsp.includes.panels.browser.openissues_jsp:228)
      	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
      	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
      	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
      	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
      	at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
      	at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
      	at org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:966)
      	at org.apache.jsp.secure.views.browser.browseproject_jsp._jspService(org.apache.jsp.secure.views.browser.browseproject_jsp:568)
      	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
      	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
      	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
      	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
      	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
      	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
      	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
      	at com.atlassian.jira.web.dispatcher.JiraServletDispatcher.service(JiraServletDispatcher.java:248)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      	at com.atlassian.jira.web.filters.AccessLogFilter.doFilter(AccessLogFilter.java:51)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      	at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:119)
      	at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:55)
      	at com.atlassian.jira.web.filters.SitemeshExcludePathFilter.doFilter(SitemeshExcludePathFilter.java:38)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      	at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      	at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      	at com.atlassian.util.profiling.filters.ProfilingFilter.doFilter(ProfilingFilter.java:122)
      	at com.atlassian.jira.web.filters.ProfilingAndErrorFilter.doFilter(ProfilingAndErrorFilter.java:25)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      	at com.atlassian.jira.web.filters.ActionCleanupDelayFilter.doFilter(ActionCleanupDelayFilter.java:39)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      	at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:91)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      	at com.atlassian.jira.web.filters.gzip.GzipFilter.doFilter(GzipFilter.java:72)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      	at com.atlassian.core.filters.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:37)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
      	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
      	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
      	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
      	at java.lang.Thread.run(Thread.java:595)
      
      Referer URL: http://dogbolter:8080/secure/Dashboard.jspa
      
      Build Information:
      Uptime: 1 hour, 8 minutes, 7 seconds
      Edition: Enterprise
      Version: 3.5.3
      Build Number: 135
      Atlassian Partner: null
      
      Server Information:
      Application Server: Apache Tomcat/5.5.9
      Servlet Version: 2.4
      
      Memory Information:
      Total Memory: 127 MB
      Free Memory: 104 MB
      Used Memory: 23 MB
      
      System Information:
      System Date: Tuesday, 18 Apr 2006
      System Time: 14:16:27
      Current Working Directory: /tmp/atlassian-jira-enterprise-3.5.3-standalone/bin
      Java Version: 1.5.0_06
      Java Vendor: Sun Microsystems Inc.
      JVM Version: 1.0
      JVM Vendor: Sun Microsystems Inc.
      JVM Implementation Version: 1.5.0_06-b05
      Java Runtime: Java(TM) 2 Runtime Environment, Standard Edition
      Java VM: Java HotSpot(TM) Client VM
      User Name: keithb
      User Timezone: Australia/Sydney
      User Locale: English (United States)
      System Encoding: UTF-8
      Operating System: Linux 2.4.20-31.9smp
      OS Architecture: i386
      Application Server Container: Apache Tomcat/5.5.9
      Database type: hsql
      Database JNDI address: java:comp/env/jdbc/JiraDS
      Database version: 1.7.1
      Database driver: HSQL Database Engine Driver 1.7.1
      
      Request Information:
      Request URL: http://dogbolter:8080/500page.jsp
      - Scheme: http
      - Server: dogbolter
      - Port: 8080
      - URI: /500page.jsp
      - - Context Path:
      - - Servlet Path: /500page.jsp
      - - Path Info: null
      - - Query String:
      Request Attributes:
      - javax.servlet.forward.request_uri : /secure/BrowseProject.jspa
      - javax.servlet.forward.context_path :
      - javax.servlet.forward.servlet_path : /secure/BrowseProject.jspa
      - javax.servlet.forward.path_info : /500page.jsp
      - javax.servlet.error.message :
      - javax.servlet.error.exception : org.apache.jasper.JasperException: missing matching end quote for query: Won't Fix
      - user : webwork.dispatcher.GenericDispatcher$LazyValueHolder@167f48c
      - os_securityfilter_already_filtered : true
      - com.atlassian.jira.web.filters.ActionCleanupDelayFilter : true
      - com.atlassian.johnson.filters.JohnsonFilter_already_filtered : true
      - AllStatAccessor : com.atlassian.jira.web.bean.StatisticAccessorBean@1e81d48
      - javax.servlet.error.request_uri : /secure/BrowseProject.jspa
      - javax.servlet.error.status_code : 500
      - webwork.view_uri : /secure/views/browser/browseproject.jsp
      - __sitemesh__filterapplied : true
      - jira.webwork.cleanup : false
      - javax.servlet.error.servlet_name : action
      - com.atlassian.jira.web.filters.gzip.GzipFilter_already_filtered : true
      - atlassian.core.seraph.original.url : /secure/BrowseProject.jspa
      - loginfilter.already.filtered : true
      - webwork.result : Value stack =========== com.atlassian.jira.web.action.browser.Browser@1da691a
      [GenericEntity:Project][key,TST][assigneetype,2][counter,1][description,null][url,null][name,Test][lead,admin][id,10000] {[GenericEntity:Status][description,null][iconurl,/images/icons/status_generic.gif][name,Won't Fix][sequence,7][id,10000]=1} 
      [GenericEntity:Status][description,null][iconurl,/images/icons/status_generic.gif][name,Won't Fix][sequence,7][id,10000] ===========
      - fieldVisibility : com.atlassian.jira.web.bean.FieldVisibilityBean@2a2ae9
      - webwork.request_uri : /secure/BrowseProject.jspa
      - StatAccessor : com.atlassian.jira.web.bean.StatisticAccessorBean@673c9f
      

              Unassigned Unassigned
              keith@atlassian.com Keith Brophy
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Estimated:
                  Original Estimate - 1h
                  1h
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h
                  1h