title: Converting docx to pdf via JODConverter and LibreOffice causes error
body: <p>I have 1000 .docx files that I want to convert to pdf so I have written a program to do this, but I can never get through all 1000 files before an error is thrown. I start a headless version of LibreOffice using <code>soffice --headless --accept="socket,host=127.0.0.1,port=2002;urp;"</code>. I am using LibreOffice 4.2.0.4 and JODConverter 2.2.2. This is my conversion code (prior to this I just iterate all the .docx files in a directory):</p>
  
  <pre class="lang-java prettyprint-override"><code>try {
          File inputFile = new File(sourceFile);
          if (!inputFile.exists()) {
              return -1;
          }
  
          File outputFile = new File(destFile);
          OpenOfficeConnection connection = new SocketOpenOfficeConnection(host_Str, 
              Integer.parseInt(port_Str));
          connection.connect();
          DocumentConverter converter = new OpenOfficeDocumentConverter(connection);
          converter.convert(inputFile, outputFile);
  
          connection.disconnect();
  
          return 0;
      }
  
      catch (ConnectException e) {
          System.out.println("Openoffice listener exception!");
          return 1;
      }
  </code></pre>
  
  <p>I can always convert at least 50 files or so before an error is thrown; this is one of the errors I have had:</p>
  
  <pre class="lang-java prettyprint-override"><code>Exception in thread "main" com.artofsolving.jodconverter.openoffice.connection.OpenOfficeException: 
      conversion failed: could not save output document; OOo errorCode: 3088
  at com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter.loadAndExport(OpenOfficeDocumentConverter.java:142)
  at com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter.convertInternal(OpenOfficeDocumentConverter.java:120)
  at com.artofsolving.jodconverter.openoffice.converter.AbstractOpenOfficeDocumentConverter.convert(AbstractOpenOfficeDocumentConverter.java:104)
  at com.artofsolving.jodconverter.openoffice.converter.AbstractOpenOfficeDocumentConverter.convert(AbstractOpenOfficeDocumentConverter.java:74)
  at com.artofsolving.jodconverter.openoffice.converter.AbstractOpenOfficeDocumentConverter.convert(AbstractOpenOfficeDocumentConverter.java:70)
  at previews.ConvertToPdfJOD.office2PDF(ConvertToPdfJOD.java:119)
  at previews.ConvertToPdfJOD.beginConvert(ConvertToPdfJOD.java:91)
  at previews.ConvertToPdfJOD.main(ConvertToPdfJOD.java:177)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:606)
  at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
  
  Caused by: com.sun.star.task.ErrorCodeIOException: SfxBaseModel::impl_store &lt;file:///C:/dev/testFiles/docx/newsletter_t3w7-2012.docx.pdf&gt; failed: 0xc10
  at com.sun.star.lib.uno.environments.remote.Job.remoteUnoRequestRaisedException(Job.java:182)
  at com.sun.star.lib.uno.environments.remote.Job.execute(Job.java:148)
  at com.sun.star.lib.uno.environments.remote.JobQueue.enter(JobQueue.java:344)
  at com.sun.star.lib.uno.environments.remote.JobQueue.enter(JobQueue.java:313)
  at com.sun.star.lib.uno.environments.remote.JavaThreadPool.enter(JavaThreadPool.java:101)
  at com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge.sendRequest(java_remote_bridge.java:652)
  at com.sun.star.lib.uno.bridges.java_remote.ProxyFactory$Handler.request(ProxyFactory.java:154)
  at com.sun.star.lib.uno.bridges.java_remote.ProxyFactory$Handler.invoke(ProxyFactory.java:136)
  at com.sun.proxy.$Proxy8.storeToURL(Unknown Source)
  at com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter.storeDocument(OpenOfficeDocumentConverter.java:156)
  at com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter.loadAndExport(OpenOfficeDocumentConverter.java:140)
  ... 12 more
  </code></pre>
  
  <p>Other error examples include:</p>
  
  <pre class="lang-java prettyprint-override"><code>Exception in thread "main" com.artofsolving.jodconverter.openoffice.connection.OpenOfficeException: 
      conversion failed: could not save output document
  
  Caused by: com.sun.star.uno.RuntimeException: [msci_uno bridge error] 
      UNO type of C++ exception unknown: "std.bad_alloc", RTTI-name=".?AVbad_alloc@std@@"!
  </code></pre>
  
  <p>and</p>
  
  <pre class="lang-java prettyprint-override"><code>Exception in thread "main" com.artofsolving.jodconverter.openoffice.connection.OpenOfficeException: 
      conversion failed: could not save output document; OOo errorCode: 283
  
  Caused by: com.sun.star.task.ErrorCodeIOException: SfxBaseModel::impl_store 
      &lt;file:///R:/document%20preview%20DY/speedTests/doc/cm9draftfinallist.doc.pdf&gt; failed: 0x11b
  </code></pre>
  
  <p>and</p>
  
  <pre class="lang-java prettyprint-override"><code>Exception in thread "main" com.artofsolving.jodconverter.openoffice.connection.OpenOfficeException: 
      conversion failed: could not load input document
  </code></pre>
  
  <p>and </p>
  
  <pre class="lang-java prettyprint-override"><code>Exception in thread "main" com.artofsolving.jodconverter.openoffice.connection.OpenOfficeException: 
      conversion failed: could not save output document; OOo errorCode: 3088
  
  Caused by: com.sun.star.task.ErrorCodeIOException: SfxBaseModel::impl_store 
      &lt;file:///C:/dev/testFiles/docx/newsletter_t3w7-2012.docx.pdf&gt; failed: 0xc10
  </code></pre>
  
  <p>In every situation (so far), I have been able to retry the conversion on the docx file where the error occurred and the conversion has been successful.</p>
  
  <p>I have looked at similar questions on this site but most them are for situations where an error is thrown the first time a conversion is attempted, whereas in my case there are always some successful conversions before a failure. I have also tried using OpenOffice with the same results. I have tried googling error messages but to no avail.</p>
  
  <p>My question is why are these errors occurring, and what can I do to convert all 1000 docx files? Also I am aware of <a href="http://www.docx4java.org/trac/docx4j" rel="noreferrer">docx4j</a> but I need to be able to convert .doc files as well which this does not support.</p>