gchq / stroom

Stroom is a highly scalable data storage, processing and analysis platform.
https://gchq.github.io/stroom-docs/
Apache License 2.0
434 stars 53 forks source link

v7.4 Email NPE when Alerting a Streaming Analytic #4463

Closed stroomdev10 closed 1 month ago

stroomdev10 commented 1 month ago
java.lang.NullPointerException: null
    at java.base/java.util.Objects.requireNonNull(Objects.java:233)
    at java.base/java.util.stream.Collectors.lambda$uniqKeysMapAccumulator$1(Collectors.java:180)
    at java.base/java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169)
    at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
    at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
    at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
    at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
    at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
    at stroom.analytics.impl.RuleEmailTemplatingService.lambda$buildContext$12(RuleEmailTemplatingService.java:125)
    at stroom.util.NullSafe.consume(NullSafe.java:701)
    at stroom.analytics.impl.RuleEmailTemplatingService.buildContext(RuleEmailTemplatingService.java:123)
    at stroom.analytics.impl.RuleEmailTemplatingService.renderAlertEmail(RuleEmailTemplatingService.java:32)
    at stroom.analytics.impl.EmailSender.send(EmailSender.java:90)
    at stroom.analytics.impl.DetectionConsumerFactory$3.accept(DetectionConsumerFactory.java:136)
    at stroom.analytics.impl.DetectionConsumerProxy.writeRecord(DetectionConsumerProxy.java:238)
    at stroom.analytics.impl.DetectionConsumerProxy.accept(DetectionConsumerProxy.java:120)
    at stroom.analytics.impl.AbstractAnalyticFieldListConsumer.acceptFieldValues(AbstractAnalyticFieldListConsumer.java:57)
    at stroom.analytics.impl.StreamingAnalyticFieldListConsumer.acceptFieldValues(StreamingAnalyticFieldListConsumer.java:13)
    at stroom.search.extraction.FieldListConsumerHolder.acceptFieldValues(FieldListConsumerHolder.java:23)
    at stroom.search.extraction.DynamicSearchResultOutputFilter.processFields(DynamicSearchResultOutputFilter.java:56)
    at stroom.search.extraction.AbstractFieldFilter.endElement(AbstractFieldFilter.java:96)
    at net.sf.saxon.event.ContentHandlerProxy.endElement(ContentHandlerProxy.java:412)
    at net.sf.saxon.event.ProxyReceiver.endElement(ProxyReceiver.java:185)
    at net.sf.saxon.event.SequenceNormalizer.endElement(SequenceNormalizer.java:230)
    at net.sf.saxon.event.NamespaceReducer.endElement(NamespaceReducer.java:235)
    at net.sf.saxon.event.ComplexContentOutputter.endElement(ComplexContentOutputter.java:559)
    at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail(ElementCreator.java:356)
    at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail(ElementCreator.java:300)
    at net.sf.saxon.expr.instruct.TemplateRule.applyLeavingTail(TemplateRule.java:352)
    at net.sf.saxon.trans.Mode.applyTemplates(Mode.java:533)
    at net.sf.saxon.expr.instruct.ApplyTemplates.apply(ApplyTemplates.java:300)
    at net.sf.saxon.expr.instruct.ApplyTemplates.processLeavingTail(ApplyTemplates.java:255)
    at net.sf.saxon.expr.instruct.Block.processLeavingTail(Block.java:735)
    at net.sf.saxon.expr.instruct.Instruction.process(Instruction.java:132)
    at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail(ElementCreator.java:353)
    at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail(ElementCreator.java:300)
    at net.sf.saxon.expr.instruct.TemplateRule.applyLeavingTail(TemplateRule.java:352)
    at net.sf.saxon.trans.Mode.applyTemplates(Mode.java:533)
    at net.sf.saxon.trans.rules.TextOnlyCopyRuleSet.process(TextOnlyCopyRuleSet.java:71)
    at net.sf.saxon.trans.Mode.applyTemplates(Mode.java:495)
    at net.sf.saxon.trans.XsltController.applyTemplates(XsltController.java:746)
    at net.sf.saxon.s9api.AbstractXsltTransformer.applyTemplatesToSource(AbstractXsltTransformer.java:347)
    at net.sf.saxon.s9api.XsltTransformer.transform(XsltTransformer.java:349)
    at net.sf.saxon.jaxp.TransformerImpl.transform(TransformerImpl.java:71)
    at net.sf.saxon.jaxp.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:173)
    at stroom.pipeline.filter.XsltFilter.endDocument(XsltFilter.java:305)
    at net.sf.saxon.event.ContentHandlerProxy.close(ContentHandlerProxy.java:295)
    at net.sf.saxon.event.ProxyReceiver.close(ProxyReceiver.java:102)
    at net.sf.saxon.event.SequenceNormalizer.close(SequenceNormalizer.java:248)
    at net.sf.saxon.event.ProxyReceiver.close(ProxyReceiver.java:102)
    at net.sf.saxon.event.ComplexContentOutputter.close(ComplexContentOutputter.java:621)
    at net.sf.saxon.trans.XsltController.applyTemplates(XsltController.java:753)
    at net.sf.saxon.s9api.AbstractXsltTransformer.applyTemplatesToSource(AbstractXsltTransformer.java:347)
    at net.sf.saxon.s9api.XsltTransformer.transform(XsltTransformer.java:349)
    at net.sf.saxon.jaxp.TransformerImpl.transform(TransformerImpl.java:71)
    at net.sf.saxon.jaxp.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:173)
    at stroom.pipeline.filter.XsltFilter.endDocument(XsltFilter.java:305)
    at net.sf.saxon.event.ContentHandlerProxy.close(ContentHandlerProxy.java:295)
    at net.sf.saxon.event.ProxyReceiver.close(ProxyReceiver.java:102)
    at net.sf.saxon.event.SequenceNormalizer.close(SequenceNormalizer.java:248)
    at net.sf.saxon.event.ProxyReceiver.close(ProxyReceiver.java:102)
    at net.sf.saxon.event.ComplexContentOutputter.close(ComplexContentOutputter.java:621)
    at net.sf.saxon.trans.XsltController.applyTemplates(XsltController.java:753)
    at net.sf.saxon.s9api.AbstractXsltTransformer.applyTemplatesToSource(AbstractXsltTransformer.java:347)
    at net.sf.saxon.s9api.XsltTransformer.transform(XsltTransformer.java:349)
    at net.sf.saxon.jaxp.TransformerImpl.transform(TransformerImpl.java:71)
    at net.sf.saxon.jaxp.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:173)
    at stroom.pipeline.filter.XsltFilter.endDocument(XsltFilter.java:305)
    at stroom.pipeline.filter.AbstractXMLFilter.endDocument(AbstractXMLFilter.java:158)
    at stroom.pipeline.filter.AbstractXMLFilter.endDocument(AbstractXMLFilter.java:158)
    at stroom.pipeline.filter.SplitFilter.fireRemainingEvents(SplitFilter.java:440)
    at stroom.pipeline.filter.SplitFilter.endDocument(SplitFilter.java:199)
    at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown Source)
    at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source)
    at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
    at org.apache.xerces.impl.XML11EntityScanner.skipSpaces(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at stroom.pipeline.parser.AbstractParser.parse(AbstractParser.java:185)
    at stroom.pipeline.parser.AbstractParser.lambda$createProcessors$0(AbstractParser.java:86)
    at stroom.pipeline.factory.PipelineImpl.process(PipelineImpl.java:129)
    at stroom.core.dataprocess.AbstractProcessorTaskExecutor.processNestedStreams(AbstractProcessorTaskExecutor.java:459)
    at stroom.core.dataprocess.AbstractProcessorTaskExecutor.process(AbstractProcessorTaskExecutor.java:340)
    at stroom.core.dataprocess.AbstractProcessorTaskExecutor.exec(AbstractProcessorTaskExecutor.java:239)
    at stroom.processor.impl.DataProcessorTaskHandler.exec(DataProcessorTaskHandler.java:164)
    at stroom.processor.impl.DataProcessorTaskHandler.lambda$exec$0(DataProcessorTaskHandler.java:92)
    at stroom.task.impl.TaskContextFactoryImpl.lambda$wrap$2(TaskContextFactoryImpl.java:253)
    at stroom.util.logging.LocationAwareLambdaLogger.logDurationIfDebugEnabled(LocationAwareLambdaLogger.java:307)
    at stroom.task.impl.TaskContextFactoryImpl.lambda$wrap$4(TaskContextFactoryImpl.java:253)
    at stroom.util.pipeline.scope.PipelineScopeRunnable.scopeResult(PipelineScopeRunnable.java:39)
    at stroom.task.impl.TaskContextFactoryImpl.lambda$wrap$5(TaskContextFactoryImpl.java:250)
    at stroom.task.impl.TaskContextFactoryImpl.lambda$wrap$6(TaskContextFactoryImpl.java:262)
    at stroom.security.impl.SecurityContextImpl.useAsReadResult(SecurityContextImpl.java:406)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
    at java.base/java.lang.reflect.Method.invoke(Method.java:580)
    at com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:50)
    at jdk.proxy2/jdk.proxy2.$Proxy122.useAsReadResult(Unknown Source)
    at stroom.task.impl.TaskContextFactoryImpl.lambda$wrap$7(TaskContextFactoryImpl.java:262)
    at stroom.security.impl.SecurityContextImpl.asUserResult(SecurityContextImpl.java:338)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
    at java.base/java.lang.reflect.Method.invoke(Method.java:580)
    at com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:50)
    at jdk.proxy2/jdk.proxy2.$Proxy122.asUserResult(Unknown Source)
    at stroom.task.impl.TaskContextFactoryImpl.lambda$wrap$11(TaskContextFactoryImpl.java:260)
    at stroom.processor.impl.DataProcessorTaskHandler.lambda$exec$1(DataProcessorTaskHandler.java:92)
    at stroom.security.impl.SecurityContextImpl.useAsReadResult(SecurityContextImpl.java:406)
    at stroom.processor.impl.DataProcessorTaskHandler.lambda$exec$2(DataProcessorTaskHandler.java:87)
    at stroom.security.impl.SecurityContextImpl.asUserResult(SecurityContextImpl.java:338)
    at stroom.processor.impl.DataProcessorTaskHandler.exec(DataProcessorTaskHandler.java:87)
    at stroom.processor.impl.DataProcessorTaskFactory$RunnableFactoryImpl.lambda$create$0(DataProcessorTaskFactory.java:166)
    at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1583)

Error sending alert email Email{
    id=<1072601236.0.1726747063489@server>
    sentDate=null
    fromRecipient=Recipient{name='Stroomy Analytics', address='someone@somewhere', type=null},
    replyToRecipients=[Recipient{name='Stroomy Analytics', address='someone@somewhere', type=null}],
    bounceToRecipient=null,
    text='null',
    textHTML='null',
    textCalendar='null (method: null)',
    contentTransferEncoding='quoted-printable',
    subject='null',
    recipients=[Recipient{name='someone@somewhere', address='someone@somewhere', type=To}]
} using user (xxxx) at server:nnnn - Failed to send email [ID: '<1072601236.0.1726747063489@server>'], reason: Third party error 
org.simplejavamail.mailer.internal.MailerException: Failed to send email [ID: '<1072601236.0.1726747063489@server>'], reason: Third party error
    at org.simplejavamail.mailer.internal.SendMailClosure.handleException(SendMailClosure.java:85)
    at org.simplejavamail.mailer.internal.SendMailClosure.executeClosure(SendMailClosure.java:72)
    at org.simplejavamail.mailer.internal.AbstractProxyServerSyncingClosure.run(AbstractProxyServerSyncingClosure.java:56)
    at org.simplejavamail.mailer.internal.MailerImpl.sendMail(MailerImpl.java:364)
    at org.simplejavamail.mailer.internal.MailerImpl.sendMail(MailerImpl.java:349)
    at stroom.analytics.impl.EmailSender.send(EmailSender.java:137)
    at stroom.analytics.impl.DetectionConsumerFactory$3.accept(DetectionConsumerFactory.java:136)
    at stroom.analytics.impl.DetectionConsumerProxy.writeRecord(DetectionConsumerProxy.java:238)
    at stroom.analytics.impl.DetectionConsumerProxy.accept(DetectionConsumerProxy.java:120)
    at stroom.analytics.impl.AbstractAnalyticFieldListConsumer.acceptFieldValues(AbstractAnalyticFieldListConsumer.java:57)
    at stroom.analytics.impl.StreamingAnalyticFieldListConsumer.acceptFieldValues(StreamingAnalyticFieldListConsumer.java:13)
    at stroom.search.extraction.FieldListConsumerHolder.acceptFieldValues(FieldListConsumerHolder.java:23)
    at stroom.search.extraction.DynamicSearchResultOutputFilter.processFields(DynamicSearchResultOutputFilter.java:56)
    at stroom.search.extraction.AbstractFieldFilter.endElement(AbstractFieldFilter.java:96)
    at net.sf.saxon.event.ContentHandlerProxy.endElement(ContentHandlerProxy.java:412)
    at net.sf.saxon.event.ProxyReceiver.endElement(ProxyReceiver.java:185)
    at net.sf.saxon.event.SequenceNormalizer.endElement(SequenceNormalizer.java:230)
    at net.sf.saxon.event.NamespaceReducer.endElement(NamespaceReducer.java:235)
    at net.sf.saxon.event.ComplexContentOutputter.endElement(ComplexContentOutputter.java:559)
    at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail(ElementCreator.java:356)
    at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail(ElementCreator.java:300)
    at net.sf.saxon.expr.instruct.TemplateRule.applyLeavingTail(TemplateRule.java:352)
    at net.sf.saxon.trans.Mode.applyTemplates(Mode.java:533)
    at net.sf.saxon.expr.instruct.ApplyTemplates.apply(ApplyTemplates.java:300)
    at net.sf.saxon.expr.instruct.ApplyTemplates.processLeavingTail(ApplyTemplates.java:255)
    at net.sf.saxon.expr.instruct.Block.processLeavingTail(Block.java:735)
    at net.sf.saxon.expr.instruct.Instruction.process(Instruction.java:132)
    at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail(ElementCreator.java:353)
    at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail(ElementCreator.java:300)
    at net.sf.saxon.expr.instruct.TemplateRule.applyLeavingTail(TemplateRule.java:352)
    at net.sf.saxon.trans.Mode.applyTemplates(Mode.java:533)
    at net.sf.saxon.trans.rules.TextOnlyCopyRuleSet.process(TextOnlyCopyRuleSet.java:71)
    at net.sf.saxon.trans.Mode.applyTemplates(Mode.java:495)
    at net.sf.saxon.trans.XsltController.applyTemplates(XsltController.java:746)
    at net.sf.saxon.s9api.AbstractXsltTransformer.applyTemplatesToSource(AbstractXsltTransformer.java:347)
    at net.sf.saxon.s9api.XsltTransformer.transform(XsltTransformer.java:349)
    at net.sf.saxon.jaxp.TransformerImpl.transform(TransformerImpl.java:71)
    at net.sf.saxon.jaxp.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:173)
    at stroom.pipeline.filter.XsltFilter.endDocument(XsltFilter.java:305)
    at net.sf.saxon.event.ContentHandlerProxy.close(ContentHandlerProxy.java:295)
    at net.sf.saxon.event.ProxyReceiver.close(ProxyReceiver.java:102)
    at net.sf.saxon.event.SequenceNormalizer.close(SequenceNormalizer.java:248)
    at net.sf.saxon.event.ProxyReceiver.close(ProxyReceiver.java:102)
    at net.sf.saxon.event.ComplexContentOutputter.close(ComplexContentOutputter.java:621)
    at net.sf.saxon.trans.XsltController.applyTemplates(XsltController.java:753)
    at net.sf.saxon.s9api.AbstractXsltTransformer.applyTemplatesToSource(AbstractXsltTransformer.java:347)
    at net.sf.saxon.s9api.XsltTransformer.transform(XsltTransformer.java:349)
    at net.sf.saxon.jaxp.TransformerImpl.transform(TransformerImpl.java:71)
    at net.sf.saxon.jaxp.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:173)
    at stroom.pipeline.filter.XsltFilter.endDocument(XsltFilter.java:305)
    at net.sf.saxon.event.ContentHandlerProxy.close(ContentHandlerProxy.java:295)
    at net.sf.saxon.event.ProxyReceiver.close(ProxyReceiver.java:102)
    at net.sf.saxon.event.SequenceNormalizer.close(SequenceNormalizer.java:248)
    at net.sf.saxon.event.ProxyReceiver.close(ProxyReceiver.java:102)
    at net.sf.saxon.event.ComplexContentOutputter.close(ComplexContentOutputter.java:621)
    at net.sf.saxon.trans.XsltController.applyTemplates(XsltController.java:753)
    at net.sf.saxon.s9api.AbstractXsltTransformer.applyTemplatesToSource(AbstractXsltTransformer.java:347)
    at net.sf.saxon.s9api.XsltTransformer.transform(XsltTransformer.java:349)
    at net.sf.saxon.jaxp.TransformerImpl.transform(TransformerImpl.java:71)
    at net.sf.saxon.jaxp.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:173)
    at stroom.pipeline.filter.XsltFilter.endDocument(XsltFilter.java:305)
    at stroom.pipeline.filter.AbstractXMLFilter.endDocument(AbstractXMLFilter.java:158)
    at stroom.pipeline.filter.AbstractXMLFilter.endDocument(AbstractXMLFilter.java:158)
    at stroom.pipeline.filter.SplitFilter.fireRemainingEvents(SplitFilter.java:440)
    at stroom.pipeline.filter.SplitFilter.endDocument(SplitFilter.java:199)
    at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown Source)
    at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source)
    at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
    at org.apache.xerces.impl.XML11EntityScanner.skipSpaces(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at stroom.pipeline.parser.AbstractParser.parse(AbstractParser.java:185)
    at stroom.pipeline.parser.AbstractParser.lambda$createProcessors$0(AbstractParser.java:86)
    at stroom.pipeline.factory.PipelineImpl.process(PipelineImpl.java:129)
    at stroom.core.dataprocess.AbstractProcessorTaskExecutor.processNestedStreams(AbstractProcessorTaskExecutor.java:459)
    at stroom.core.dataprocess.AbstractProcessorTaskExecutor.process(AbstractProcessorTaskExecutor.java:340)
    at stroom.core.dataprocess.AbstractProcessorTaskExecutor.exec(AbstractProcessorTaskExecutor.java:239)
    at stroom.processor.impl.DataProcessorTaskHandler.exec(DataProcessorTaskHandler.java:164)
    at stroom.processor.impl.DataProcessorTaskHandler.lambda$exec$0(DataProcessorTaskHandler.java:92)
    at stroom.task.impl.TaskContextFactoryImpl.lambda$wrap$2(TaskContextFactoryImpl.java:253)
    at stroom.util.logging.LocationAwareLambdaLogger.logDurationIfDebugEnabled(LocationAwareLambdaLogger.java:307)
    at stroom.task.impl.TaskContextFactoryImpl.lambda$wrap$4(TaskContextFactoryImpl.java:253)
    at stroom.util.pipeline.scope.PipelineScopeRunnable.scopeResult(PipelineScopeRunnable.java:39)
    at stroom.task.impl.TaskContextFactoryImpl.lambda$wrap$5(TaskContextFactoryImpl.java:250)
    at stroom.task.impl.TaskContextFactoryImpl.lambda$wrap$6(TaskContextFactoryImpl.java:262)
    at stroom.security.impl.SecurityContextImpl.useAsReadResult(SecurityContextImpl.java:406)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
    at java.base/java.lang.reflect.Method.invoke(Method.java:580)
    at com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:50)
    at jdk.proxy2/jdk.proxy2.$Proxy122.useAsReadResult(Unknown Source)
    at stroom.task.impl.TaskContextFactoryImpl.lambda$wrap$7(TaskContextFactoryImpl.java:262)
    at stroom.security.impl.SecurityContextImpl.asUserResult(SecurityContextImpl.java:338)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
    at java.base/java.lang.reflect.Method.invoke(Method.java:580)
    at com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:50)
    at jdk.proxy2/jdk.proxy2.$Proxy122.asUserResult(Unknown Source)
    at stroom.task.impl.TaskContextFactoryImpl.lambda$wrap$11(TaskContextFactoryImpl.java:260)
    at stroom.processor.impl.DataProcessorTaskHandler.lambda$exec$1(DataProcessorTaskHandler.java:92)
    at stroom.security.impl.SecurityContextImpl.useAsReadResult(SecurityContextImpl.java:406)
    at stroom.processor.impl.DataProcessorTaskHandler.lambda$exec$2(DataProcessorTaskHandler.java:87)
    at stroom.security.impl.SecurityContextImpl.asUserResult(SecurityContextImpl.java:338)
    at stroom.processor.impl.DataProcessorTaskHandler.exec(DataProcessorTaskHandler.java:87)
    at stroom.processor.impl.DataProcessorTaskFactory$RunnableFactoryImpl.lambda$create$0(DataProcessorTaskFactory.java:166)
    at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: jakarta.mail.MessagingException: No MimeMessage content
    at jakarta.mail.internet.MimeMessage.getContentStream(MimeMessage.java:1413)
    at jakarta.mail.internet.MimeBodyPart$MimePartDataHandler.getContentStream(MimeBodyPart.java:1717)
    at jakarta.mail.internet.MimeBodyPart.writeTo(MimeBodyPart.java:1672)
    at jakarta.mail.internet.MimeMessage.writeTo(MimeMessage.java:1911)
    at org.eclipse.angus.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:1305)
    at org.simplejavamail.mailer.internal.util.TransportRunner.lambda$sendMessage$0(TransportRunner.java:61)
    at org.simplejavamail.mailer.internal.util.TransportRunner.sendUsingConnectionPool(TransportRunner.java:92)
    at org.simplejavamail.mailer.internal.util.TransportRunner.runOnSessionTransport(TransportRunner.java:77)
    at org.simplejavamail.mailer.internal.util.TransportRunner.sendMessage(TransportRunner.java:56)
    at org.simplejavamail.mailer.internal.SendMailClosure.executeClosure(SendMailClosure.java:69)
    ... 111 common frames omitted
at055612 commented 1 month ago

Fixed in >7.4.15