Why does the Export Form Email Tool cause a java.lang.NullPointerException error?
Confluence User - 08 Aug, 2018
Hello, I'm trying to send a form in an email but it's causing an error.
I've used the Export Form Email Tool before and it works. I've tried sending another simple form that only has one field and it works, so apparently, certain forms are causing the error. (the email tool with no form-exporting works as well)
Here's the log for the email sending:
INFO 08 Aug 2018 05:56:18 org.joget.plugin.enterprise.ExportFormEmailTool - ExportFormEmailTool: Generate PDF start.
ERROR 08 Aug 2018 05:56:18 org.joget.apps.form.service.FormPdfUtil - org.xml.sax.SAXParseException; lineNumber: 80; columnNumber: 580; The content of elements must consist of well-formed character data or markup.
org.xml.sax.SAXParseException; lineNumber: 80; columnNumber: 580; The content of elements must consist of well-formed character data or markup.
at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:121)
at org.joget.apps.form.service.FormPdfUtil.createPdf(FormPdfUtil.java:108)
at org.joget.plugin.enterprise.ExportFormEmailTool.createPdf_aroundBody14(ExportFormEmailTool.java:95)
at org.joget.plugin.enterprise.ExportFormEmailTool.createPdf_aroundBody15$advice(ExportFormEmailTool.java:95)
at org.joget.plugin.enterprise.ExportFormEmailTool.createPdf(ExportFormEmailTool.java:1)
at org.joget.plugin.enterprise.ExportFormEmailTool.sendEmail_aroundBody18(ExportFormEmailTool.java:198)
at org.joget.plugin.enterprise.ExportFormEmailTool.sendEmail_aroundBody19$advice(ExportFormEmailTool.java:95)
at org.joget.plugin.enterprise.ExportFormEmailTool.sendEmail(ExportFormEmailTool.java:1)
at org.joget.plugin.enterprise.ExportFormEmailTool.execute_aroundBody12(ExportFormEmailTool.java:55)
at org.joget.plugin.enterprise.ExportFormEmailTool.execute_aroundBody13$advice(ExportFormEmailTool.java:95)
at org.joget.plugin.enterprise.ExportFormEmailTool.execute(ExportFormEmailTool.java:1)
at org.joget.apps.app.service.AppWorkflowHelper.executeTool(AppWorkflowHelper.java:125)
at org.joget.workflow.shark.WorkflowToolActivityHandler.executeActivity(WorkflowToolActivityHandler.java:69)
at org.enhydra.shark.WfActivityImpl.runTool(WfActivityImpl.java:1487)
at org.enhydra.shark.WfActivityImpl.startActivity(WfActivityImpl.java:1419)
at org.enhydra.shark.WfActivityImpl.activate(WfActivityImpl.java:261)
at org.enhydra.shark.WfProcessImpl.startActivity(WfProcessImpl.java:918)
at org.enhydra.shark.WfProcessImpl.queueNext(WfProcessImpl.java:1134)
at org.enhydra.shark.WfProcessImpl.run(WfProcessImpl.java:750)
at org.enhydra.shark.WfProcessImpl.activity_complete(WfProcessImpl.java:969)
at org.enhydra.shark.WfActivityImpl.finish(WfActivityImpl.java:441)
at org.enhydra.shark.WfActivityImpl.complete(WfActivityImpl.java:366)
at org.enhydra.shark.WfActivityWrapper.complete(WfActivityWrapper.java:230)
at org.joget.workflow.model.service.WorkflowManagerImpl.assignmentComplete(WorkflowManagerImpl.java:4241)
at org.joget.workflow.model.service.WorkflowManagerImpl.assignmentComplete(WorkflowManagerImpl.java:4264)
at sun.reflect.GeneratedMethodAccessor446.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.joget.apps.app.service.AuditTrailInterceptor.invoke(AuditTrailInterceptor.java:17)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.joget.apps.app.service.SqlFilterAspect.invoke(SqlFilterAspect.java:36)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
at com.sun.proxy.$Proxy26.assignmentComplete(Unknown Source)
at org.joget.apps.app.service.AppServiceImpl.completeAssignmentForm(AppServiceImpl.java:403)
at sun.reflect.GeneratedMethodAccessor444.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
at com.sun.proxy.$Proxy57.completeAssignmentForm(Unknown Source)
at org.joget.apps.userview.lib.RunProcess.assignmentSubmit_aroundBody28(RunProcess.java:466)
at org.joget.apps.userview.lib.RunProcess.assignmentSubmit_aroundBody29$advice(RunProcess.java:95)
at org.joget.apps.userview.lib.RunProcess.assignmentSubmit(RunProcess.java:1)
at org.joget.apps.userview.lib.RunProcess.getJspPage_aroundBody20(RunProcess.java:206)
at org.joget.apps.userview.lib.RunProcess.getJspPage_aroundBody21$advice(RunProcess.java:95)
at org.joget.apps.userview.lib.RunProcess.getJspPage(RunProcess.java:1)
at org.joget.apps.userview.model.UserviewMenu.getReadyJspPage_aroundBody12(UserviewMenu.java:132)
at org.joget.apps.userview.model.UserviewMenu.getReadyJspPage_aroundBody13$advice(UserviewMenu.java:95)
at org.joget.apps.userview.model.UserviewMenu.getReadyJspPage(UserviewMenu.java:1)
at org.joget.apps.userview.service.UserviewUtil.getUserviewMenuHtml(UserviewUtil.java:94)
at org.joget.apps.userview.service.UserviewThemeProcesser.getContent(UserviewThemeProcesser.java:593)
at org.joget.apps.userview.service.UserviewThemeProcesser.getHtml(UserviewThemeProcesser.java:168)
at sun.reflect.GeneratedMethodAccessor276.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at javax.el.BeanELResolver.getValue(BeanELResolver.java:94)
at org.apache.jasper.el.JasperELResolver.getValue(JasperELResolver.java:110)
at org.apache.el.parser.AstValue.getValue(AstValue.java:169)
at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
at org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:115)
at org.apache.jsp.WEB_002dINF.jsp.ubuilder.v5view_jsp._jspx_meth_c_005fset_005f0(v5view_jsp.java:250)
at org.apache.jsp.WEB_002dINF.jsp.ubuilder.v5view_jsp._jspx_meth_c_005fif_005f0(v5view_jsp.java:207)
at org.apache.jsp.WEB_002dINF.jsp.ubuilder.v5view_jsp._jspService(v5view_jsp.java:158)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:443)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:728)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:467)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:392)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:311)
at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:168)
at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:303)
at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1257)
at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1037)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:980)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:661)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.joget.commons.util.AnalyzerFilter.doFilter_aroundBody0(AnalyzerFilter.java:17)
at org.joget.commons.util.AnalyzerFilter.doFilter_aroundBody1$advice(AnalyzerFilter.java:54)
at org.joget.commons.util.AnalyzerFilter.doFilter(AnalyzerFilter.java:1)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.owasp.csrfguard.CsrfGuardFilter.doFilter(CsrfGuardFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:317)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:115)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200)
at org.joget.apps.workflow.security.WorkflowHttpAuthProcessingFilter.doFilter(WorkflowHttpAuthProcessingFilter.java:85)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:121)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:66)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:331)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:214)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:177)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.joget.commons.spring.web.CustomDelegatingFilterProxy.doFilter(CustomDelegatingFilterProxy.java:31)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.joget.apps.app.web.ExpireFilter.doFilter(ExpireFilter.java:44)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1459)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
INFO 08 Aug 2018 05:56:18 org.joget.plugin.enterprise.ExportFormEmailTool - ExportFormEmailTool: Generate PDF finish.
ERROR 08 Aug 2018 05:56:18 org.joget.plugin.enterprise.ExportFormEmailTool - java.lang.NullPointerException
java.lang.NullPointerException
at java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:106)
at org.joget.plugin.enterprise.ByteArrayDataSource.getInputStream(ByteArrayDataSource.java:22)
at org.apache.commons.mail.MultiPartEmail.attach(MultiPartEmail.java:421)
at org.joget.plugin.enterprise.ExportFormEmailTool$1.run(ExportFormEmailTool.java:212)
at java.lang.Thread.run(Thread.java:748)
at org.joget.commons.util.PluginThread.run(PluginThread.java:22)
ERROR 08 Aug 2018 05:56:18 Shark - Process [key=2338_driverRequestProcess_driverRequest,mgrname=driverRequestProcess#40#driverRequest] will try to finish after [Process Id=2338_driverRequestProcess_driverRequest, Id=5127_2338_driverRequestProcess_driverRequest_notifyFleetOfRequesterApproval, ba=null, ActDefId=notifyFleetOfRequesterApproval] is executed because kernel is configured not to allow hanging and not to rollback
INFO 08 Aug 2018 05:56:22 org.joget.apps.workflow.security.WorkflowAuthenticationProvider - Authentication for user admin (172.31.15.126) : true
nullpointerexception;error;export-form-email;email-tool