Uploaded image for project: 'OpenOLAT'
  1. OpenOLAT
  2. OO-4270

RS: cannot generate or preview certificate with some user properties

    XMLWordPrintable

    Details

      Description

      If the certificate is configured to show some special property like generic selection. It can trigger a red screen to preview the certificate.

      2019-09-24 18:30:54.276 [ajp-nio-8011-exec-3] ERROR org.olat.course.certificate.manager.CertificatePDFFormWorker - 
      java.lang.NullPointerException: null
      	at org.olat.core.util.i18n.I18nManager.getLocalizedString(I18nManager.java:260) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.util.i18n.I18nManager.getLocalizedString(I18nManager.java:203) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.translator.PackageTranslator.translate(PackageTranslator.java:163) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.translator.PackageTranslator.translate(PackageTranslator.java:123) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.translator.PackageTranslator.translate(PackageTranslator.java:118) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.translator.PackageTranslator.translate(PackageTranslator.java:113) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.user.propertyhandlers.GenericSelectionPropertyHandler.getUserPropertyAsHTML(GenericSelectionPropertyHandler.java:301) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.user.propertyhandlers.GenericSelectionPropertyHandler.getUserProperty(GenericSelectionPropertyHandler.java:212) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.course.certificate.manager.CertificatePdfServiceWorker.fillUserProperties(CertificatePdfServiceWorker.java:214) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.course.certificate.manager.CertificatePdfServiceWorker.getContext(CertificatePdfServiceWorker.java:200) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.course.certificate.manager.CertificatePdfServiceWorker.copyAndEnrichTemplate(CertificatePdfServiceWorker.java:143) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.course.certificate.manager.CertificatePdfServiceWorker.fill(CertificatePdfServiceWorker.java:111) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.course.certificate.manager.CertificatesManagerImpl.previewCertificate(CertificatesManagerImpl.java:760) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.course.certificate.ui.CertificatesOptionsController.doPreviewTemplate(CertificatesOptionsController.java:350) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.course.certificate.ui.CertificatesOptionsController.event(CertificatesOptionsController.java:298) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.control.DefaultController.dispatchEvent(DefaultController.java:206) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.AbstractComponent$1.run(AbstractComponent.java:240) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.logging.activity.ThreadLocalUserActivityLoggerInstaller.runWithUserActivityLogger(ThreadLocalUserActivityLoggerInstaller.java:108) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.AbstractComponent.fireEvent(AbstractComponent.java:238) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.link.Link.dispatch(Link.java:205) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.link.Link.doDispatchRequest(Link.java:192) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.AbstractComponent.dispatchRequest(AbstractComponent.java:193) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.Window.doDispatchToComponent(Window.java:1201) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.Window.dispatchRequest(Window.java:679) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.Window.doDispatchRequest(Window.java:282) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.AbstractComponent.dispatchRequest(AbstractComponent.java:193) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.dispatcher.AuthenticatedDispatcher.processValidDispatchURI(AuthenticatedDispatcher.java:263) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.dispatcher.AuthenticatedDispatcher.execute(AuthenticatedDispatcher.java:184) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.servlets.OpenOLATServlet.executeUserRequest(OpenOLATServlet.java:269) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.servlets.OpenOLATServlet.doGet(OpenOLATServlet.java:201) ~[classes/:14.1-SNAPSHOT]
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:635) ~[servlet-api.jar:?]
      	at org.olat.core.servlets.OpenOLATServlet.service(OpenOLATServlet.java:160) ~[classes/:14.1-SNAPSHOT]
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) ~[servlet-api.jar:?]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:728) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:591) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:527) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:380) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.StandardHostValve.throwable(StandardHostValve.java:323) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:166) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) ~[catalina.jar:8.5.40]
      	at org.apache.coyote.ajp.AjpProcessor.service(AjpProcessor.java:476) ~[tomcat-coyote.jar:8.5.40]
      	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) ~[tomcat-coyote.jar:8.5.40]
      	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:808) ~[tomcat-coyote.jar:8.5.40]
      	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1498) ~[tomcat-coyote.jar:8.5.40]
      	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-coyote.jar:8.5.40]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_192]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_192]
      	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-util.jar:8.5.40]
      	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_192]
      2019-09-24 18:30:55.438 [ajp-nio-8011-exec-3] WARN  org.olat.core.gui.exception.ExceptionWindowController - ExceptionWindowController<init>: Throwable occurred, logging the full stacktrace:
      java.lang.NullPointerException: null
      	at org.olat.course.certificate.manager.CertificatePdfServiceWorker.fill(CertificatePdfServiceWorker.java:112) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.course.certificate.manager.CertificatesManagerImpl.previewCertificate(CertificatesManagerImpl.java:760) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.course.certificate.ui.CertificatesOptionsController.doPreviewTemplate(CertificatesOptionsController.java:350) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.course.certificate.ui.CertificatesOptionsController.event(CertificatesOptionsController.java:298) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.control.DefaultController.dispatchEvent(DefaultController.java:206) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.AbstractComponent$1.run(AbstractComponent.java:240) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.logging.activity.ThreadLocalUserActivityLoggerInstaller.runWithUserActivityLogger(ThreadLocalUserActivityLoggerInstaller.java:108) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.AbstractComponent.fireEvent(AbstractComponent.java:238) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.link.Link.dispatch(Link.java:205) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.link.Link.doDispatchRequest(Link.java:192) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.AbstractComponent.dispatchRequest(AbstractComponent.java:193) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.Window.doDispatchToComponent(Window.java:1201) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.Window.dispatchRequest(Window.java:679) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.Window.doDispatchRequest(Window.java:282) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.gui.components.AbstractComponent.dispatchRequest(AbstractComponent.java:193) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.dispatcher.AuthenticatedDispatcher.processValidDispatchURI(AuthenticatedDispatcher.java:263) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.dispatcher.AuthenticatedDispatcher.execute(AuthenticatedDispatcher.java:184) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.servlets.OpenOLATServlet.executeUserRequest(OpenOLATServlet.java:269) ~[classes/:14.1-SNAPSHOT]
      	at org.olat.core.servlets.OpenOLATServlet.doGet(OpenOLATServlet.java:201) ~[classes/:14.1-SNAPSHOT]
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:635) ~[servlet-api.jar:?]
      	at org.olat.core.servlets.OpenOLATServlet.service(OpenOLATServlet.java:160) ~[classes/:14.1-SNAPSHOT]
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) ~[servlet-api.jar:?]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:728) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:591) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:527) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:380) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.StandardHostValve.throwable(StandardHostValve.java:323) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:166) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) ~[catalina.jar:8.5.40]
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) ~[catalina.jar:8.5.40]
      	at org.apache.coyote.ajp.AjpProcessor.service(AjpProcessor.java:476) ~[tomcat-coyote.jar:8.5.40]
      	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) ~[tomcat-coyote.jar:8.5.40]
      	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:808) ~[tomcat-coyote.jar:8.5.40]
      	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1498) ~[tomcat-coyote.jar:8.5.40]
      	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-coyote.jar:8.5.40]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_192]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_192]
      	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-util.jar:8.5.40]
      	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_192]
      
      

        Attachments

          Activity

            People

            Assignee:
            srosse Stéphane Rossé
            Reporter:
            srosse Stéphane Rossé
            Tester:
            Mandy Menzel
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 5 minutes
                5m