1

We are facing a problem in our SAP PI (7.40) environment. We get invoices (XML, CSV, PDF) from different interfaces and during the process we have to send a TIFF file (converted from PDF via pdfbox/icafe4j) to OCR provider.

The PDF could be:

  1. an incoming PDF
  2. a generated PDF by our own (via pdfbox, from XML or CSV input).

The conversion is implemented in external Java classes. It works fine for most of the PDF files. There are only a few PDF files where we get an exception in our SAP PI environment which runs on Linux(!!). And the same conversion runs fine without any error in local Windows(!!) environment.

Part of the exception from Linux environment:

<?xml version="1.0" encoding="ISO-8859-1"?>
<ErrorHandling>
<ExceptionType>class java.lang.IndexOutOfBoundsException</ExceptionType
<ExceptionLocalizedMsg>Index: 0, Size: 0</ExceptionLocalizedMsg>
...

Excerpt from Java implementation:

// pDoc is the PDDocument object, returns byte[]
bTiff = tiffFromPdf.createMultipageTIFF(pDoc);
sTiffBase64 = DatatypeConverter.printBase64Binary(bTiff);
this.fireTrace(1, "Content of sTiffBase64 -> [" + sTiffBase64 + "]");

// Trace 'normally' contains:
<Trace type="T" level="1">Content of sTiffBase64 -> [base64-encoded tiff data] </Trace>

// In createMultipageTIFF the exception occurs in this line
TIFFTweaker.writeMultipageTIFF(rout, param, images);

After we have found the following regarding an update to the TIFFTweaker class, we implemented the update and after that the exception is not thrown but as mentioned in the link it is swallowed.

https://github.com/dragon66/icafe/issues/63

// Trace of byte[] then is emtpy:
<Trace type="T" level="1">Content of sTiffBase64 -> [] </Trace>

That is not very helpful as we must have the TIFF file for OCR.

We also had a look to the internals of PDF byte stream and found that there are some special parts handling with fonts/encoding:

TrueType font and "/Encoding /Identity-H" ... all PDF files which do not run under our Linux system contain this "Identity-H".

Does anyone has similar experience/error in doing this conversion on Linux?

Any idea what we can do in addition to our tries?

Maybe some libraries are missing under Linux or something else!?

Please also have a look at this conversion (maybe helpful for understanding):

https://www.mail-archive.com/users@pdfbox.apache.org/msg09569.html

I start my initial entry for this question without any more code or affected PDF file but provide it if required.

Stack Trace:

RuntimeException during appliction Java mapping com/covestro/eai/cov/x01/apb/CheckAndPrepareEmailPDF
Thrown:
java.lang.RuntimeException: com.bbs.eai.bay0.x01.interfaces.MappingError: <?xml version="1.0" encoding="ISO-8859-1"?>
<ErrorHandling>
<ExceptionType>class java.lang.IndexOutOfBoundsException</ExceptionType>
<CauseInfo>CheckAndPrepareEmailPDF: Check EmailPDF problem</CauseInfo>
<ExceptionCause>null</ExceptionCause>
<ExceptionMsg>Index: 0, Size: 0</ExceptionMsg>
<ExceptionLocalizedMsg>Index: 0, Size: 0</ExceptionLocalizedMsg>
<ExceptionStackTrace>
<Trace> at java.util.ArrayList.RangeCheck Line 547</Trace>
<Trace> at java.util.ArrayList.get Line 322</Trace>
<Trace> at com.icafe4j.image.tiff.TIFFTweaker.writeMultipageTIFF Line 3154</Trace>
<Trace> at com.covestro.eai.cov.x01.apb.pdf.CreateMultiTIFFFromPDF.createMultipageTIFF Line 113</Trace>
<Trace> at com.covestro.eai.cov.x01.apb.CheckAndPrepareEmailPDF.transformStreamMapping Line 234</Trace>
<Trace> at com.bbs.eai.bay0.x01.templates.JavaMappingTemplateV2.transform Line 731</Trace>
<Trace> at com.sap.aii.ib.server.mapping.execution.JavaMapping.executeStep Line 112</Trace>
<Trace> at com.sap.aii.ib.server.mapping.execution.Mapping.execute Line 60</Trace>
<Trace> at com.sap.aii.ib.server.mapping.execution.SequenceMapping.executeStep Line 40</Trace>
<Trace> at com.sap.aii.ib.server.mapping.execution.Mapping.execute Line 60</Trace>
<Trace> at com.sap.aii.ib.server.mapping.execution.MappingHandler.map Line 87</Trace>
<Trace> at com.sap.aii.ib.server.mapping.execution.MappingHandler.map Line 71</Trace>
<Trace> at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest Line 123</Trace>
<Trace> at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest Line 73</Trace>
<Trace> at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction Line 79</Trace>
<Trace> at sun.reflect.GeneratedMethodAccessor406.invoke Line -1</Trace>
<Trace> at sun.reflect.DelegatingMethodAccessorImpl.invoke Line 25</Trace>
<Trace> at java.lang.reflect.Method.invoke Line 597</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal Line 47</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 166</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke Line 19</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke Line 50</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute Line 37</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke Line 21</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_MethodRetry.invoke Line 46</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 191</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke Line 23</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke Line 25</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke Line 17</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain Line 138</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke Line 172</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke Line 99</Trace>
<Trace> at com.sun.proxy.$Proxy645.processFunction Line -1</Trace>
<Trace> at sun.reflect.NativeMethodAccessorImpl.invoke0 Line -2</Trace>
<Trace> at sun.reflect.NativeMethodAccessorImpl.invoke Line 39</Trace>
<Trace> at sun.reflect.DelegatingMethodAccessorImpl.invoke Line 25</Trace>
<Trace> at java.lang.reflect.Method.invoke Line 597</Trace>
<Trace> at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest Line 183</Trace>
<Trace> at com.sap.engine.services.rfcengine.RFCJCOServer$J2EEApplicationRunnable.run Line 267</Trace>
<Trace> at com.sap.engine.core.thread.impl3.ActionObject.run Line 37</Trace>
<Trace> at java.security.AccessController.doPrivileged Line -2</Trace>
<Trace> at com.sap.engine.core.thread.impl3.SingleThread.execute Line 185</Trace>
<Trace> at com.sap.engine.core.thread.impl3.SingleThread.run Line 302</Trace>
</ExceptionStackTrace>
</ErrorHandling>

at com.bbs.eai.bay0.x01.templates.JavaMappingTemplateV2.transform(JavaMappingTemplateV2.java:740)
at com.sap.aii.ib.server.mapping.execution.JavaMapping.executeStep(JavaMapping.java:112)
at com.sap.aii.ib.server.mapping.execution.Mapping.execute(Mapping.java:60)
at com.sap.aii.ib.server.mapping.execution.SequenceMapping.executeStep(SequenceMapping.java:40)
at com.sap.aii.ib.server.mapping.execution.Mapping.execute(Mapping.java:60)
at com.sap.aii.ib.server.mapping.execution.MappingHandler.map(MappingHandler.java:87)
at com.sap.aii.ib.server.mapping.execution.MappingHandler.map(MappingHandler.java:71)
at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:123)
at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:73)
at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79)
at sun.reflect.GeneratedMethodAccessor406.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:47)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:50)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:37)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:21)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_MethodRetry.invoke(Interceptors_MethodRetry.java:46)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:191)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:23)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:25)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)
at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:17)
at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:179)
at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:138)
at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:172)
at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:99)
at com.sun.proxy.$Proxy645.processFunction(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:183)
at com.sap.engine.services.rfcengine.RFCJCOServer$J2EEApplicationRunnable.run(RFCJCOServer.java:267)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:185)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:302)
Caused by: com.bbs.eai.bay0.x01.interfaces.MappingError: <?xml version="1.0" encoding="ISO-8859-1"?>
<ErrorHandling>
<ExceptionType>class java.lang.IndexOutOfBoundsException</ExceptionType>
<CauseInfo>CheckAndPrepareEmailPDF: Check EmailPDF problem</CauseInfo>
<ExceptionCause>null</ExceptionCause>
<ExceptionMsg>Index: 0, Size: 0</ExceptionMsg>
<ExceptionLocalizedMsg>Index: 0, Size: 0</ExceptionLocalizedMsg>
<ExceptionStackTrace>
<Trace> at java.util.ArrayList.RangeCheck Line 547</Trace>
<Trace> at java.util.ArrayList.get Line 322</Trace>
<Trace> at com.icafe4j.image.tiff.TIFFTweaker.writeMultipageTIFF Line 3154</Trace>
<Trace> at com.covestro.eai.cov.x01.apb.pdf.CreateMultiTIFFFromPDF.createMultipageTIFF Line 113</Trace>
<Trace> at com.covestro.eai.cov.x01.apb.CheckAndPrepareEmailPDF.transformStreamMapping Line 234</Trace>
<Trace> at com.bbs.eai.bay0.x01.templates.JavaMappingTemplateV2.transform Line 731</Trace>
<Trace> at com.sap.aii.ib.server.mapping.execution.JavaMapping.executeStep Line 112</Trace>
<Trace> at com.sap.aii.ib.server.mapping.execution.Mapping.execute Line 60</Trace>
<Trace> at com.sap.aii.ib.server.mapping.execution.SequenceMapping.executeStep Line 40</Trace>
<Trace> at com.sap.aii.ib.server.mapping.execution.Mapping.execute Line 60</Trace>
<Trace> at com.sap.aii.ib.server.mapping.execution.MappingHandler.map Line 87</Trace>
<Trace> at com.sap.aii.ib.server.mapping.execution.MappingHandler.map Line 71</Trace>
<Trace> at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest Line 123</Trace>
<Trace> at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest Line 73</Trace>
<Trace> at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction Line 79</Trace>
<Trace> at sun.reflect.GeneratedMethodAccessor406.invoke Line -1</Trace>
<Trace> at sun.reflect.DelegatingMethodAccessorImpl.invoke Line 25</Trace>
<Trace> at java.lang.reflect.Method.invoke Line 597</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal Line 47</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 166</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke Line 19</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke Line 50</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute Line 37</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke Line 21</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_MethodRetry.invoke Line 46</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 191</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke Line 23</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke Line 25</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke Line 17</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed Line 179</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain Line 138</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke Line 172</Trace>
<Trace> at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke Line 99</Trace>
<Trace> at com.sun.proxy.$Proxy645.processFunction Line -1</Trace>
<Trace> at sun.reflect.NativeMethodAccessorImpl.invoke0 Line -2</Trace>
<Trace> at sun.reflect.NativeMethodAccessorImpl.invoke Line 39</Trace>
<Trace> at sun.reflect.DelegatingMethodAccessorImpl.invoke Line 25</Trace>
<Trace> at java.lang.reflect.Method.invoke Line 597</Trace>
<Trace> at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest Line 183</Trace>
<Trace> at com.sap.engine.services.rfcengine.RFCJCOServer$J2EEApplicationRunnable.run Line 267</Trace>
<Trace> at com.sap.engine.core.thread.impl3.ActionObject.run Line 37</Trace>
<Trace> at java.security.AccessController.doPrivileged Line -2</Trace>
<Trace> at com.sap.engine.core.thread.impl3.SingleThread.execute Line 185</Trace>
<Trace> at com.sap.engine.core.thread.impl3.SingleThread.run Line 302</Trace>
</ExceptionStackTrace>
</ErrorHandling>

at com.bbs.eai.bay0.x01.templates.JavaMappingTemplateV2.makeAndLogMappingError(JavaMappingTemplateV2.java:717)
at com.covestro.eai.cov.x01.apb.CheckAndPrepareEmailPDF.transformStreamMapping(CheckAndPrepareEmailPDF.java:351)
at com.bbs.eai.bay0.x01.templates.JavaMappingTemplateV2.transform(JavaMappingTemplateV2.java:731)
... 44 more
Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.RangeCheck(ArrayList.java:547)
at java.util.ArrayList.get(ArrayList.java:322)
at com.icafe4j.image.tiff.TIFFTweaker.writeMultipageTIFF(TIFFTweaker.java:3154)
at com.covestro.eai.cov.x01.apb.pdf.CreateMultiTIFFFromPDF.createMultipageTIFF(CreateMultiTIFFFromPDF.java:113)
at com.covestro.eai.cov.x01.apb.CheckAndPrepareEmailPDF.transformStreamMapping(CheckAndPrepareEmailPDF.java:234)
... 45 more
Sandra Rossi
  • 11,934
  • 5
  • 22
  • 48
TomP
  • 11
  • 2
  • Heh heh, I remember that one. You should provide the full stack trace (it is in your logs), or at least as full as possible without giving away corporate details. IIRC the problem is that icafe fails to write a page (for an unknown reason) and swallows that. This isn't a PDFBox problem. I still recommend my advice from the link - use a different product than icafe. Do the multipage tiff conversion with this code https://stackoverflow.com/a/31974376/535646 or with something else (e.g. twelvemonkeys, the people there are excellent). – Tilman Hausherr Dec 06 '17 at 15:15
  • Thx for feedback.At first I want to say that I only mentioned pdfbox in order to give a complete picture of our environment and what we have in use. The second point is that we have already tried the conversion you've mentioned via link but with ImageIO it also runs fine only under Windows, we did not get it without errors under Linux. While trying to get the stack trace we'll check alternative products in parallel. – TomP Dec 06 '17 at 15:49
  • I looked at the current version of TIFFTweaker, the number 3154 from your stack trace doesn't match, so maybe they changed something else since then. So you have two options: try to fix TIFFTweaker yourself to find the real reason why IndexOutOfBoundsException is occuring; or investigate the "linux only" error you had when using other code. Can you run the tool on the linux server outside of SAP with tons of PDFs? That would make it easier to "hit" the error. – Tilman Hausherr Dec 06 '17 at 16:38
  • We used two versions of TIFFTweaker: Older version from "04Mar2017" which leads to IndexOutOfBoundsException and the newer version from "09Sep2017" which throws no Exception but also does not create a tiff :-( ... for further investigation we will now try (your suggestion) to get access to linux server outside SAP PI. – TomP Dec 07 '17 at 06:30
  • @dragon66 but icafe gets an array of bufferedimages. In the java code the bufferedimages are never null. So icafe gets that array. However... – Tilman Hausherr Dec 12 '17 at 06:28
  • @TomP I looked at the original code. It has `ImageParam[] param = new ImageParam[1];`. So that array is always 1 but icafe expects this to be same as bufferedimage count??? Btw I just woke up so maybe all I write now is useless :-) – Tilman Hausherr Dec 12 '17 at 06:29
  • @dragon66 1) oops indeed, my remark from this morning was useless. 2) I mean the code he posted to the pdfbox mailing list. He does `new BufferedImage` and then fills that one by getting a graphics device. So it's never null. – Tilman Hausherr Dec 12 '17 at 14:40
  • @dragon66 I'm not the developer, TomP is. – Tilman Hausherr Dec 12 '17 at 14:41
  • @dragon66 my remark from the issue 63 still stands... you're swallowing an exception because "it's better than nothing" instead of letting the user find out what's going on by rethrowing. TomP now sometimes has `the newer version from "09Sep2017" which throws no Exception but also does not create a tiff` and he doesn't even know why unless he looks at his logs. (Tom please check whether there is a stack trace in your log with the version of "09Sep2017") – Tilman Hausherr Dec 12 '17 at 14:53
  • @all Sorry for late reply today ... tomorrow we have a kind of escalation meeting on this topic and maybe then we have access to someone who can help us on Linux side (log files, traces etc.). We currently only have access to the 'public' part of SAP PI runtime ... I'll keep you up to date. – TomP Dec 12 '17 at 15:52
  • @dragon66 I tried to use MemoryCacheRandomAccessOutputStream instead of FileCacheRandomAccessOutputStream (found this hint in my inbox) with no success. – TomP Dec 18 '17 at 14:19
  • @all As there is not much time before Golive we have decided on a different solution. 1st step: conversion PDF to TIFF will be done by software component (C# under Windows) which should be actually replaced. 2nd step: we will call a web service (SOAP) that will do the conversion. I would have liked to have a solution for the existing implementation but the analysis at O​/S level would take too long. In addition, we will migrate the PI installation to a cloud solution in 2018 and we do not yet know on which O/S the virtual installation will run. So I will close the thread now and thank you all. – TomP Dec 18 '17 at 14:19

0 Answers0