org.apache.poi.xwpf.converter.core.XWPFConverterException:java.lang.NullPointerException在从DOCX转换为PDF时
我遇到了Apache POI的转换问题 这是我的方法org.apache.poi.xwpf.converter.core.XWPFConverterException:java.lang.NullPointerException在从DOCX转换为PDF时,java,apache,pdf,nullpointerexception,apache-poi,Java,Apache,Pdf,Nullpointerexception,Apache Poi,我遇到了Apache POI的转换问题 这是我的方法 private GeneratePdfDtoResponse savePdfFile(XWPFDocument xwpfDocument, String pdfFileName) { OutputStream out = null; try { String pdfFilePath = PDF_FILES_PATH + removeExtension(pdfFileName) + PDF
private GeneratePdfDtoResponse savePdfFile(XWPFDocument xwpfDocument, String pdfFileName) {
OutputStream out = null;
try {
String pdfFilePath = PDF_FILES_PATH + removeExtension(pdfFileName) + PDF_EXTENSION;
PdfOptions options = PdfOptions.create();
out = new FileOutputStream(new File(pdfFilePath));
PdfConverter.getInstance().convert(xwpfDocument, out, options);
return new GeneratePdfDtoResponse(new File(PDF_FILES_PATH));
} catch (IOException e) {
LOG.error(e.getMessage());
return new GeneratePdfDtoResponse(null);
}finally {
closeOutputStream(out);
}
}`
我还有下一个例外
但昨天它运行良好,我只更改了docx文件
PdfConverter.getInstance().convert(xwpfDocument,out,options)代码>这行
这里是stacktrace:
org.apache.poi.xwpf.converter.core.XWPFConverterException:java.lang.NullPointerException
位于org.apache.poi.xwpf.converter.pdf.PdfConverter.doConvert(PdfConverter.java:70)
位于org.apache.poi.xwpf.converter.pdf.PdfConverter.doConvert(PdfConverter.java:38)
位于org.apache.poi.xwpf.converter.core.AbstractXWPFConverter.convert(AbstractXWPFConverter.java:45)
位于pl.amw.emr.service.impl.TemplateHandlerServiceImpl.SavePdfile(TemplateHandlerServiceImpl.java:341)
位于pl.amw.emr.service.impl.TemplateHandlerServiceImpl.generatePdf(TemplateHandlerServiceImpl.java:99)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:498)
位于org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
位于org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:157)上
在org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.procedure(MethodInvocationProceedingJoinPoint.java:85)上
位于pl.amw.emr.aop.LoggingAspect.logAround(LoggingAspect.java:85)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:498)
位于org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:629)
位于org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:618)
位于org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:179)上
位于org.springframework.aop.aspectj.aspectjafthrowingadvice.invoke(aspectjafthrowingadvice.java:62)
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:179)上
位于org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
位于org.springframework.transaction.interceptor.TransactionSpectSupport.invokeWithinTransaction(TransactionSpectSupport.java:282)
位于org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:179)上
位于org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:179)上
位于org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
位于com.sun.proxy.$Proxy166.generatePdf(未知来源)
位于pl.amw.emr.web.rest.template.TemplateGeneratorController.PostGeneratePDFromDoctTemplate(TemplateGeneratorController.java:57)
位于pl.amw.emr.web.rest.template.TemplateGeneratorController$$FastClassBySpringCGLIB$$902d3628.invoke()
位于org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
位于org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:738)
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:157)上
在org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.procedure(MethodInvocationProceedingJoinPoint.java:85)上
位于pl.amw.emr.aop.LoggingAspect.logAround(LoggingAspect.java:85)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:498)
位于org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:629)
位于org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:618)
位于org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:179)上
位于org.springframework.aop.aspectj.aspectjafthrowingadvice.invoke(aspectjafthrowingadvice.java:62)
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:179)上
位于org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:179)上
位于org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:673)
在pl.amw.emr.web.rest.template.TemplateGeneratorController$$EnhancerBySpringCGLIB$$91241e2c.PostGeneratePDFromDoctTemplate()上
在sun.reflect.Na