Uploaded image for project: 'Gateway'
  1. Gateway
  2. GTWY-1315

NPE after deleting datasets

XMLWordPrintable

      It seems like deleting a dataset, at least with the publisher, may cause problems when viewing the parent. This is what I have done:

      Published a NARCCAP dataset with two subdatsets, everything went ok:

      INFO 2010-03-09 16:11:21,570 Adding file info to database
      INFO 2010-03-09 16:11:24,300 Aggregating variables
      Tue Mar 9 16:11:28 MST 2010
      start publishing to Gateway
      INFO 2010-03-09 16:11:28,829 Writing THREDDS catalog /datazone/esg/datanode/vetswebdev/tds_content/thredds/esgcet/11/narccap.rcm3.cgcm3-current.table1.v1.xml
      INFO 2010-03-09 16:11:29,741 Writing THREDDS catalog /datazone/esg/datanode/vetswebdev/tds_content/thredds/esgcet/11/narccap.rcm3.cgcm3-current.table2.v1.xml
      INFO 2010-03-09 16:11:31,566 Writing THREDDS ESG master catalog /datazone/esg/datanode/vetswebdev/tds_content/thredds/esgcet/catalog.xml
      INFO 2010-03-09 16:11:31,586 Reinitializing THREDDS server
      INFO 2010-03-09 16:11:51,886 Publishing: narccap.rcm3.cgcm3-current.table1, parent = narccap.rcm3.output.cgm3
      INFO 2010-03-09 16:11:54,718 Result: SUCCESSFUL
      INFO 2010-03-09 16:11:54,718 Publishing: narccap.rcm3.cgcm3-current.table2, parent = narccap.rcm3.output.cgm3
      INFO 2010-03-09 16:11:57,471 Result: SUCCESSFUL
      done
      Tue Mar 9 16:11:57 MST 2010

      Deleted one of the child datasets via the publisher, everything went ok:

      [luca@vetscomm NARCCAP]$ esgunpublish --no-republish --database-delete narccap.rcm3.cgcm3-current.table1
      INFO 2010-03-09 17:40:08,359 Deleting narccap.rcm3.cgcm3-current.table1
      INFO 2010-03-09 17:40:09,662 Result: SUCCESSFUL
      INFO 2010-03-09 17:40:09,671 Deleting THREDDS catalog: /datazone/esg/datanode/vetswebdev/tds_content/thredds/esgcet/11/narccap.rcm3.cgcm3-current.table1.v1.xml
      INFO 2010-03-09 17:40:09,677 Writing THREDDS ESG master catalog /datazone/esg/datanode/vetswebdev/tds_content/thredds/esgcet/catalog.xml
      INFO 2010-03-09 17:40:09,736 Reinitializing THREDDS server
      INFO 2010-03-09 17:40:31,938 Deleting existing dataset: narccap.rcm3.cgcm3-current.table1
      [luca@vetscomm NARCCAP]$


      But when viewing the browsing page for the parent, this is what I got:

      2010-03-09 17:44:22,988 eske.service.messaging.impl.handler.LoggingExceptionHandler [ERROR]: An exception occured.
      eske.exceptions.UnhandledException: org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/views/jsp/browse/view-dataset.jsp at line 61

      58: </ul>
      59: <div class="yui-content" >
      60: <div class="tab_panel" id="summaryTab">
      61: <browse:dataset-summary-tab-content dataset="${dataset}" />
      62: </div>
      63: <c:if test="${dataset.geophysicalDataset }">
      64: <div class="tab_panel" id="detailsTab">


      Stacktrace:
      at eske.web.filters.exception.UnhandledExceptionFilter.setupExceptionDetails(Unknown Source)
      at eske.web.filters.exception.UnhandledExceptionFilter.reportException(Unknown Source)
      at eske.web.filters.exception.UnhandledExceptionFilter.doHandleException(Unknown Source)
      at eske.web.filters.exception.UnhandledExceptionFilter.handleException(Unknown Source)
      at eske.web.filters.exception.UnhandledExceptionFilter.doFilter(Unknown Source)
      at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
      at java.lang.Thread.run(Thread.java:619)
      Caused by: org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/views/jsp/browse/view-dataset.jsp at line 61

      58: </ul>
      59: <div class="yui-content" >
      60: <div class="tab_panel" id="summaryTab">
      61: <browse:dataset-summary-tab-content dataset="${dataset}" />
      62: </div>
      63: <c:if test="${dataset.geophysicalDataset }">
      64: <div class="tab_panel" id="detailsTab">


      Stacktrace:
      at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:398)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
      at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:236)
      at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:257)
      at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1183)
      at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:902)
      at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:807)
      at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
      at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:501)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at eske.web.filters.metrics.ClickstreamFilter.doFilter(Unknown Source)
      at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at eske.web.filters.metrics.UserAgentFilter.doFilter(Unknown Source)
      at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
      at org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
      at org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101)
      at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at org.springframework.security.providers.anonymous.AnonymousProcessingFilter.doFilterHttp(AnonymousProcessingFilter.java:105)
      at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at eske.web.filters.security.OpenidProviderIntegrationFilter.doFilterHttp(Unknown Source)
      at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at org.springframework.security.ui.rememberme.RememberMeProcessingFilter.doFilterHttp(RememberMeProcessingFilter.java:109)
      at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at eske.web.filters.security.OpenidConsumerSessionFilter.doFilterHttp(Unknown Source)
      at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at org.springframework.security.ui.rememberme.RememberMeProcessingFilter.doFilterHttp(RememberMeProcessingFilter.java:109)
      at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter.doFilterHttp(SecurityContextHolderAwareRequestFilter.java:91)
      at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:278)
      at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:278)
      at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFilter.java:89)
      at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:235)
      at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at org.springframework.security.securechannel.ChannelProcessingFilter.doFilterHttp(ChannelProcessingFilter.java:116)
      at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
      at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
      at org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:175)
      at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
      at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      ... 16 more
      Caused by: javax.servlet.ServletException: javax.servlet.jsp.JspException: javax.el.ELException: Problems calling function 'fn:length'
      at org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:848)
      at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
      at org.apache.jsp.WEB_002dINF.views.jsp.browse.view_002ddataset_jsp._jspService(view_002ddataset_jsp.java:129)
      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
      ... 95 more
      Caused by: javax.el.ELException: Problems calling function 'fn:length'
      at org.apache.el.parser.AstFunction.getValue(AstFunction.java:105)
      at org.apache.el.parser.AstGreaterThan.getValue(AstGreaterThan.java:37)
      at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
      at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:925)
      at org.apache.jsp.tag.web.browse.dataset_002dsummary_002dtab_002dcontent_tag._jspx_meth_c_005fif_005f26(dataset_002dsummary_002dtab_002dcontent_tag.java:4233)
      at org.apache.jsp.tag.web.browse.dataset_002dsummary_002dtab_002dcontent_tag.doTag(dataset_002dsummary_002dtab_002dcontent_tag.java:369)
      at org.apache.jsp.WEB_002dINF.views.jsp.browse.view_002ddataset_jsp._jspx_meth_browse_005fdataset_002dsummary_002dtab_002dcontent_005f0(view_002ddataset_jsp.java:560)
      at org.apache.jsp.WEB_002dINF.views.jsp.browse.view_002ddataset_jsp._jspx_meth_tiles_005fputAttribute_005f3(view_002ddataset_jsp.java:346)
      at org.apache.jsp.WEB_002dINF.views.jsp.browse.view_002ddataset_jsp._jspx_meth_tiles_005finsertDefinition_005f0(view_002ddataset_jsp.java:168)
      at org.apache.jsp.WEB_002dINF.views.jsp.browse.view_002ddataset_jsp._jspService(view_002ddataset_jsp.java:122)
      ... 98 more
      Caused by: javax.el.ELException: Problems calling function 'eske:filterPublished'
      at org.apache.el.parser.AstFunction.getValue(AstFunction.java:115)
      at org.apache.el.parser.AstFunction.getValue(AstFunction.java:101)
      ... 107 more
      Caused by: java.lang.NullPointerException
      at eske.model.metadata.DatasetFilterImpl.filter(Unknown Source)
      at eske.model.metadata.DatasetFilterImpl.published(Unknown Source)
      at sun.reflect.GeneratedMethodAccessor262.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.apache.el.parser.AstFunction.getValue(AstFunction.java:110)
      ... 108 more

              nhook Nathan Hook
              luca Luca Cinquini (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: