Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The conversion finished unsuccessful #47

Closed
marekzzz opened this issue Oct 11, 2017 · 9 comments
Closed

The conversion finished unsuccessful #47

marekzzz opened this issue Oct 11, 2017 · 9 comments
Assignees
Labels
Milestone

Comments

@marekzzz
Copy link

Hello
I wrote my own app that provide rest service to convert docx to pdf.
In back I use lib documents4j.

When I started tomcat from startup.bat script everything is OK.
But.
When I started tomcat as service i recieve error during conversion:

2017-10-11 09:29:26,098 TRACE [http-nio-8080-exec-1] c.d.c.m.MicrosoftWordBridge [AbstractExternalConverter.java:64] Execute no-argument script c:\mnt\jobs\temp_files\WordConvertToPDFSufix\word_start360973979.vbs
2017-10-11 09:29:26,504 INFO [http-nio-8080-exec-1] c.d.c.m.MicrosoftWordBridge [MicrosoftWordBridge.java:45] From-Microsoft-Word-Converter was started successfully
2017-10-11 09:29:26,504 INFO [http-nio-8080-exec-1] c.d.j.LocalConverter [LocalConverter.java:54] The documents4j local converter has started successfully
2017-10-11 09:29:26,504 INFO [http-nio-8080-exec-1] p.g.s.c.c.WordConvertToPDFImpl [WordConvertToPDFImpl.java:85] createConverter() end return=com.documents4j.job.LocalConverter@5c0aab12 437ms
2017-10-11 09:29:26,504 INFO [http-nio-8080-exec-1] p.g.s.c.s.ConverterServiceImpl [ConverterServiceImpl.java:66] convertDocxToPdf(fileIn=File[ name: file size: 62563 originalFilename: 88-121_AEGZ_Wn_oswiadczenie_UNI3_OBB_2017111_73824615_1484751.docx contentType: application/vnd.openxmlformats-officedocument.wordprocessingml.document]) File [c:/mnt/jobs/temp_files/WordConvertToPDFSufix/61c8a7c2-87c9-4b7c-9641-07dfbe6a87d8.docx] size: 62 563
2017-10-11 09:29:26,504 INFO [http-nio-8080-exec-1] p.g.s.c.c.WordConvertToPDFImpl [WordConvertToPDFImpl.java:94] convertMsWordToPdf(converter=com.documents4j.job.LocalConverter@5c0aab12, srcPath=c:/mnt/jobs/temp_files/WordConvertToPDFSufix/61c8a7c2-87c9-4b7c-9641-07dfbe6a87d8.docx, dstPath=c:/mnt/jobs/temp_files/WordConvertToPDFSufix/17a62ca9-1536-4a6c-9bf9-acd2cf188928.pdf) begin
2017-10-11 09:29:26,520 TRACE [pool-3-thread-1] c.d.j.LocalFutureWrappingPriorityFuture [AbstractFutureWrappingPriorityFuture.java:53] Attempt to execute conversion
2017-10-11 09:29:26,520 TRACE [pool-3-thread-1] c.d.j.LocalFutureWrappingPriorityFuture [AbstractFutureWrappingPriorityFuture.java:60] Source fetched: c:\mnt\jobs\temp_files\WordConvertToPDFSufix\61c8a7c2-87c9-4b7c-9641-07dfbe6a87d8.docx
2017-10-11 09:29:26,520 TRACE [pool-3-thread-1] c.d.j.LocalFutureWrappingPriorityFuture [AbstractFutureWrappingPriorityFuture.java:66] Run method locked wrapped future for source c:\mnt\jobs\temp_files\WordConvertToPDFSufix\61c8a7c2-87c9-4b7c-9641-07dfbe6a87d8.docx
2017-10-11 09:29:26,520 INFO [pool-3-thread-1] c.d.c.m.MicrosoftWordBridge [AbstractMicrosoftOfficeBridge.java:63] Requested conversion from c:\mnt\jobs\temp_files\WordConvertToPDFSufix\61c8a7c2-87c9-4b7c-9641-07dfbe6a87d8.docx (application/vnd.com.documents4j.any-msword) to c:\mnt\jobs\temp_files\WordConvertToPDFSufix\17a62ca9-1536-4a6c-9bf9-acd2cf188928.pdf (application/pdf)
2017-10-11 09:29:26,535 TRACE [pool-3-thread-1] c.d.j.LocalFutureWrappingPriorityFuture [AbstractFutureWrappingPriorityFuture.java:71] Context fetched for source c:\mnt\jobs\temp_files\WordConvertToPDFSufix\61c8a7c2-87c9-4b7c-9641-07dfbe6a87d8.docx: com.documents4j.job.LocalConversionContext@2c683b57
2017-10-11 09:29:26,535 TRACE [pool-3-thread-1] c.d.j.LocalFutureWrappingPriorityFuture [AbstractFutureWrappingPriorityFuture.java:73] Underlying future created for source c:\mnt\jobs\temp_files\WordConvertToPDFSufix\61c8a7c2-87c9-4b7c-9641-07dfbe6a87d8.docx: com.documents4j.conversion.ProcessFutureWrapper@400f50c3
2017-10-11 09:29:26,535 TRACE [pool-3-thread-1] c.d.j.LocalFutureWrappingPriorityFuture [AbstractFutureWrappingPriorityFuture.java:77] Blocking during external conversion for source c:\mnt\jobs\temp_files\WordConvertToPDFSufix\61c8a7c2-87c9-4b7c-9641-07dfbe6a87d8.docx: com.documents4j.conversion.ProcessFutureWrapper@400f50c3
2017-10-11 09:29:26,785 TRACE [pool-3-thread-1] c.d.j.LocalFutureWrappingPriorityFuture [AbstractFutureWrappingPriorityFuture.java:108] Conversion caused an error
com.documents4j.throwables.ConversionInputException: The input file seems to be corrupt
	at com.documents4j.util.Reaction$ConversionInputExceptionBuilder.make(Reaction.java:159)
	at com.documents4j.util.Reaction$ExceptionalReaction.apply(Reaction.java:75)
	at com.documents4j.conversion.ExternalConverterScriptResult.resolve(ExternalConverterScriptResult.java:70)
	at com.documents4j.conversion.ProcessFutureWrapper.evaluateExitValue(ProcessFutureWrapper.java:48)
	... 6 common frames omitted
Wrapped by: java.util.concurrent.ExecutionException: The conversion finished unsuccessful
	at com.documents4j.conversion.ProcessFutureWrapper.evaluateExitValue(ProcessFutureWrapper.java:50)
	at com.documents4j.conversion.ProcessFutureWrapper.get(ProcessFutureWrapper.java:36)
	at com.documents4j.conversion.ProcessFutureWrapper.get(ProcessFutureWrapper.java:11)
	at com.documents4j.job.AbstractFutureWrappingPriorityFuture.run(AbstractFutureWrappingPriorityFuture.java:78)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
2017-10-11 09:29:26,785 TRACE [pool-3-thread-1] c.d.j.LocalFutureWrappingPriorityFuture [AbstractFutureWrappingPriorityFuture.java:128] Release locks for FailedConversionFuture{exception=com.documents4j.throwables.ConversionInputException, message=The input file seems to be corrupt}
2017-10-11 09:29:26,785 TRACE [pool-3-thread-1] c.d.j.LocalFutureWrappingPriorityFuture [AbstractFutureWrappingPriorityFuture.java:130] Locks for FailedConversionFuture{exception=com.documents4j.throwables.ConversionInputException, message=The input file seems to be corrupt} are released
2017-10-11 09:29:26,801 ERROR [http-nio-8080-exec-1] p.g.s.c.c.WordConvertToPDFImpl [WordConvertToPDFImpl.java:105] convertMsWordToPdf(converter=com.documents4j.job.LocalConverter@5c0aab12, srcPath=c:/mnt/jobs/temp_files/WordConvertToPDFSufix/61c8a7c2-87c9-4b7c-9641-07dfbe6a87d8.docx, dstPath=c:/mnt/jobs/temp_files/WordConvertToPDFSufix/17a62ca9-1536-4a6c-9bf9-acd2cf188928.pdf) Could not complete conversion
com.documents4j.throwables.ConversionInputException: The input file seems to be corrupt
	at com.documents4j.util.Reaction$ConversionInputExceptionBuilder.make(Reaction.java:159)
	at com.documents4j.util.Reaction$ExceptionalReaction.apply(Reaction.java:75)
	at com.documents4j.conversion.ExternalConverterScriptResult.resolve(ExternalConverterScriptResult.java:70)
	at com.documents4j.conversion.ProcessFutureWrapper.evaluateExitValue(ProcessFutureWrapper.java:48)
	at com.documents4j.conversion.ProcessFutureWrapper.get(ProcessFutureWrapper.java:36)
	at com.documents4j.conversion.ProcessFutureWrapper.get(ProcessFutureWrapper.java:11)
	at com.documents4j.job.AbstractFutureWrappingPriorityFuture.run(AbstractFutureWrappingPriorityFuture.java:78)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	... 1 common frames omitted
Wrapped by: java.util.concurrent.ExecutionException: Could not complete conversion
	at com.documents4j.job.FailedConversionFuture.get(FailedConversionFuture.java:35)
	at com.documents4j.job.FailedConversionFuture.get(FailedConversionFuture.java:10)
	at com.documents4j.job.AbstractFutureWrappingPriorityFuture.get(AbstractFutureWrappingPriorityFuture.java:205)
	at com.documents4j.job.AbstractFutureWrappingPriorityFuture.get(AbstractFutureWrappingPriorityFuture.java:10)
	at pl.gb.server.converter.component.WordConvertToPDFImpl.convertMsWordToPdf(WordConvertToPDFImpl.java:103)
	at pl.gb.server.converter.service.ConverterServiceImpl.convertDocxToPdf(ConverterServiceImpl.java:68)
	at pl.gb.server.converter.controllers.ConverterController.convertDocxToPdf(ConverterController.java:64)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)
	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 pl.gb.server.converter.base.CorsFilter.doFilter(CorsFilter.java:20)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	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.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
	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:80)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
	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:799)
	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:1457)
	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)

Maybe it will help if error message will be more detailed.
Furthermore there is no error number with what vbs script ends.

Can you help?
Best regards Marek

@marekzzz
Copy link
Author

Hello:
additional info for abouve issue:
If I execute builtin scrip in a service run app
script and with code: -2
And after I added:
WScript.Echo Err.Number & " Srce: " & Err.Source & " Desc: " & Err.Description
Result is:
424 Srce: Microsoft VBScript runtime error Desc: Object required

@marekzzz
Copy link
Author

https://social.msdn.microsoft.com/Forums/en-US/b81a3c4e-62db-488b-af06-44421818ef91/excel-2007-automation-on-top-of-a-windows-server-2008-x64?forum=innovateonoffice

This solution is ...

・Windows 2008 Server x64

  Please make this folder.

  C:\Windows\SysWOW64\config\systemprofile\Desktop

・Windows 2008 Server x86

  Please make this folder.

  C:\Windows\System32\config\systemprofile\Desktop

@raphw raphw self-assigned this Oct 21, 2017
@raphw raphw added the question label Oct 21, 2017
@raphw raphw added this to the 0.2 milestone Oct 21, 2017
@raphw
Copy link
Contributor

raphw commented Oct 21, 2017

Glad you figured it out, this is mentioned in the docs, too.

@raphw raphw closed this as completed Oct 21, 2017
@prinkalmavani
Copy link

Hello Sir,

I am doing to convert in Java, And i have added all required Jar file.
While converting from RTF to PDF, i am getting below error.

tack Trace
java.util.concurrent.ExecutionException: Could not complete conversion
at com.documents4j.job.FailedConversionFuture.get(FailedConversionFuture.java:35)
at com.documents4j.job.FailedConversionFuture.get(FailedConversionFuture.java:10)
at com.documents4j.job.AbstractFutureWrappingPriorityFuture.get(AbstractFutureWrappingPriorityFuture.java:205)
at com.documents4j.job.AbstractFutureWrappingPriorityFuture.get(AbstractFutureWrappingPriorityFuture.java:10)
at beans.WebRTFPrescriptionDetail.GenerateRTFDoc(WebRTFPrescriptionDetail.java:231)
at beans.PrescriptionManager.viewRtfByDetailId(PrescriptionManager.java:3102)
at PrescriptionController.viewRTFFileMultiple(PrescriptionController.java:2980)
at PrescriptionController.doPost(PrescriptionController.java:263)
at PrescriptionController.doGet(PrescriptionController.java:181)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:324)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:242)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:181)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:88)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:100)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:159)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.rewrite.RewriteValve.invoke(RewriteValve.java:273)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.jboss.web.tomcat.service.request.ActiveRequestResponseCacheValve.invoke(ActiveRequestResponseCacheValve.java:53)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:362)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:654)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:951)
at java.lang.Thread.run(Thread.java:745)
Caused by: com.documents4j.throwables.ConverterAccessException: The converter seems to be shut down
at com.documents4j.util.Reaction$ConverterAccessExceptionBuilder.make(Reaction.java:117)
at com.documents4j.util.Reaction$ExceptionalReaction.apply(Reaction.java:75)
at com.documents4j.conversion.ExternalConverterScriptResult.resolve(ExternalConverterScriptResult.java:70)
at com.documents4j.conversion.ProcessFutureWrapper.evaluateExitValue(ProcessFutureWrapper.java:48)
at com.documents4j.conversion.ProcessFutureWrapper.get(ProcessFutureWrapper.java:36)
at com.documents4j.conversion.ProcessFutureWrapper.get(ProcessFutureWrapper.java:11)
at com.documents4j.job.AbstractFutureWrappingPriorityFuture.run(AbstractFutureWrappingPriorityFuture.java:78)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
... 1 more

So can you please help me out on it?

@raphw
Copy link
Contributor

raphw commented Jul 9, 2019

The converter seems to be shut down. Did the conversion work before? Maybe the MS Word process was killed by a background process?

@prinkalmavani
Copy link

Yes,
Previously it was work.
But when i have uploaded same jar file and code then it gave me above error.

ByteArrayOutputStream bo = new ByteArrayOutputStream();
InputStream in = new BufferedInputStream(new FileInputStream(File path and File name with .rtf extension));
IConverter converter = LocalConverter.builder()
.baseFolder(new File(File Path))
.workerPool(20, 25, 2, TimeUnit.SECONDS)
.processTimeout(5, TimeUnit.SECONDS)
.build();

    Future<Boolean> conversion = converter
            .convert(in).as(DocumentType.RTF)
            .to(bo).as(DocumentType.PDF)
            .prioritizeWith(1000) // optional
            .schedule();
    conversion.get();
    try (OutputStream outputStream = new FileOutputStream(File path and File name with .pdf extension)) {
        bo.writeTo(outputStream);
    }
    in.close();
    bo.close();

Is it correct?
If any changes please suggest me.

@raphw
Copy link
Contributor

raphw commented Jul 12, 2019

The code is correct but it is perfectly possible that the converter crashes. In such a case, you would need to restart the conversion server unfortunately. Ideally, you check if a server is broken for a few conversions and automate the restart.

@prinkalmavani
Copy link

prinkalmavani commented Jul 16, 2019

How to restart the conversion server via code?

I did the same what suggest in below link,
https://www.oipapio.com/cn/article-7241556

But still getting same error.

@raphw
Copy link
Contributor

raphw commented Jul 20, 2019

You cannot, you would need to implement your own server or write a wrapper process.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants