Uploaded image for project: 'Magnolia UI'
  1. Magnolia UI
  2. MGNLUI-2779

Search box in admin central falls on complex string

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: Minor Minor
    • None
    • 5.2.2
    • user interaction
    • None

      When I input in search box of Admincentral in Pages section a complex string (e.g. "[if (IE 7 | IE 8)"). I get the internal error with next stack trace:

      2014-03-28 20:42:41,847 WARN gnolia.ui.workbench.container.AbstractJcrContainer: Could not update size with statement: select * from [nt:base] as t where (([jcr:primaryType] = 'mgnl:page') and (lower(localname()) LIKE '%5Bif (ie 7 %7C ie 8)%' or t.['%5Bif (IE 7 %7C IE 8)'] IS NOT NULL or contains(t.*, '[if (IE 7 | IE 8)')) ): javax.jcr.RepositoryException: Invalid full text search expression: [if (IE 7 | IE 8)
      2014-03-28 20:42:41,849 WARN gnolia.ui.workbench.container.AbstractJcrContainer: Cannot get Page with statement: select * from [nt:base] as t where (([jcr:primaryType] = 'mgnl:page') and (lower(localname()) LIKE '%5Bif (ie 7 %7C ie 8)%' or t.['%5Bif (IE 7 %7C IE 8)'] IS NOT NULL or contains(t.*, '[if (IE 7 | IE 8)')) ) order by score(t) desc: javax.jcr.RepositoryException: Invalid full text search expression: [if (IE 7 | IE 8)
      2014-03-28 20:42:41,850 WARN gnolia.ui.workbench.container.AbstractJcrContainer: Cannot get Page with statement: select * from [nt:base] as t where (([jcr:primaryType] = 'mgnl:page') and (lower(localname()) LIKE '%5Bif (ie 7 %7C ie 8)%' or t.['%5Bif (IE 7 %7C IE 8)'] IS NOT NULL or contains(t.*, '[if (IE 7 | IE 8)')) ) order by score(t) desc: javax.jcr.RepositoryException: Invalid full text search expression: [if (IE 7 | IE 8)
      2014-03-28 20:42:41,850 WARN info.magnolia.event.SimpleEventBus : Exception caught when dispatching a class info.magnolia.ui.workbench.event.SearchEvent event with class info.magnolia.ui.contentapp.browser.BrowserPresenter$4 eventHandler.
      java.lang.RuntimeException: Unable to get item id for index: 0 from container using Container.Indexed#getIdByIndex() even though container.size() > endIndex. Returned item id was null. Check your container implementation!
      at com.vaadin.data.ContainerHelpers.getItemIdsUsingGetIdByIndex(ContainerHelpers.java:90)
      at info.magnolia.ui.workbench.container.AbstractJcrContainer.getItemIds(AbstractJcrContainer.java:674)
      at com.vaadin.ui.Table.getItemIds(Table.java:2219)
      at com.vaadin.ui.Table.getVisibleCellsNoCache(Table.java:2169)
      at com.vaadin.ui.Table.refreshRenderedCells(Table.java:1694)
      at com.vaadin.ui.Table.refreshRowCache(Table.java:2639)
      at com.vaadin.ui.Table.containerItemSetChange(Table.java:4445)
      at info.magnolia.ui.workbench.container.AbstractJcrContainer.fireItemSetChange(AbstractJcrContainer.java:197)
      at info.magnolia.ui.workbench.list.ListPresenter.refresh(ListPresenter.java:110)
      at info.magnolia.ui.workbench.search.SearchPresenter.search(SearchPresenter.java:64)
      at info.magnolia.ui.workbench.WorkbenchPresenter.doSearch(WorkbenchPresenter.java:297)
      at info.magnolia.ui.contentapp.browser.BrowserPresenter$4.onSearch(BrowserPresenter.java:202)
      at info.magnolia.ui.workbench.event.SearchEvent.dispatch(SearchEvent.java:64)
      at info.magnolia.ui.workbench.event.SearchEvent.dispatch(SearchEvent.java:42)
      at info.magnolia.event.SimpleEventBus.fireEvent(SimpleEventBus.java:78)
      at info.magnolia.ui.workbench.WorkbenchPresenter.onSearch(WorkbenchPresenter.java:170)
      at info.magnolia.ui.workbench.WorkbenchViewImpl$1.valueChange(WorkbenchViewImpl.java:105)
      at sun.reflect.GeneratedMethodAccessor480.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:601)
      at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:508)
      at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:167)
      at com.vaadin.server.AbstractClientConnector.fireEvent(AbstractClientConnector.java:969)
      at com.vaadin.ui.AbstractField.fireValueChange(AbstractField.java:1126)
      at com.vaadin.ui.AbstractField.setValue(AbstractField.java:542)
      at com.vaadin.ui.AbstractTextField.changeVariables(AbstractTextField.java:181)
      at com.vaadin.server.communication.ServerRpcHandler.changeVariables(ServerRpcHandler.java:403)
      at com.vaadin.server.communication.ServerRpcHandler.handleBurst(ServerRpcHandler.java:228)
      at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:111)
      at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:91)
      at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:37)
      at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1371)
      at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:238)
      at info.magnolia.ui.admincentral.AdmincentralVaadinServlet.service(AdmincentralVaadinServlet.java:131)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
      at info.magnolia.cms.filters.ServletDispatchingFilter.doFilter(ServletDispatchingFilter.java:126)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
      at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.VirtualUriFilter.doFilter(VirtualUriFilter.java:68)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.module.cache.executor.Bypass.processCacheRequest(Bypass.java:58)
      at info.magnolia.module.cache.executor.CompositeExecutor.processCacheRequest(CompositeExecutor.java:66)
      at info.magnolia.module.cache.filter.CacheFilter.doFilter(CacheFilter.java:153)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:58)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:73)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.RangeSupportFilter.doFilter(RangeSupportFilter.java:84)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:57)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.security.SecurityCallbackFilter.doFilter(SecurityCallbackFilter.java:83)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:58)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:93)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:58)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.module.templatingkit.filters.SiteMergeFilter.doFilter(SiteMergeFilter.java:106)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.MultiChannelFilter.doFilter(MultiChannelFilter.java:82)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:58)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.module.cache.filter.GZipFilter.doFilter(GZipFilter.java:73)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:58)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
      at info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:104)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.UnicodeNormalizationFilter.doFilter(UnicodeNormalizationFilter.java:87)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
      at info.magnolia.module.devicedetection.filter.DeviceDetectionFilter.doFilter(DeviceDetectionFilter.java:71)
      at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:58)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:103)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:129)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
      at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
      at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65)
      at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
      at info.magnolia.cms.filters.SafeDestroyMgnlFilterWrapper.doFilter(SafeDestroyMgnlFilterWrapper.java:106)
      at info.magnolia.cms.filters.MgnlFilterDispatcher.doDispatch(MgnlFilterDispatcher.java:66)
      at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:107)
      at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:93)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
      at org.apache.catalina.core.StandardContextValve.__invoke(StandardContextValve.java:123)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
      at org.apache.catalina.core.StandardHostValve.__invoke(StandardHostValve.java:171)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
      at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
      at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
      at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
      at java.lang.Thread.run(Thread.java:722)
      2014-03-28 20:42:41,859 WARN gnolia.ui.workbench.container.AbstractJcrContainer: Cannot get Page with statement: select * from [nt:base] as t where (([jcr:primaryType] = 'mgnl:page') and (lower(localname()) LIKE '%5Bif (ie 7 %7C ie 8)%' or t.['%5Bif (IE 7 %7C IE 8)'] IS NOT NULL or contains(t.*, '[if (IE 7 | IE 8)')) ) order by score(t) desc: javax.jcr.RepositoryException: Invalid full text search expression: [if (IE 7 | IE 8)

        Acceptance criteria

              Unassigned Unassigned
              petrvx Petr Vasiliev
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Bug DoR
                  Task DoD