执行document.Close时出现iText问题...不平衡保存还原状态运算符

时间:2015-12-30 17:25:25

标签: itext

我们有一个应用程序,作为一个整体工作正常。 现在我们正在拆分应用程序 在这个过程中,我收到一个错误,说明如下所示的内容...... 这只发生在d.close()

的地方
Document d = new Document(PageSize.A4, 10, 10, 50, 50);
......
.....
finally{
            if(d.isOpen()) {
                d.close();
            }
            byteOutputStream.flush();
            byteOutputStream.close();
            pw.close();
            return byteOutputStream.toByteArray();
        }

(作为整体应用,整个应用程序运行良好) (使用iText2.1.7 jar)

at com.ibm.CORBA.iiop.UtilDelegateImpl.mapSystemException(UtilDelegateImpl.java:241)
at javax.rmi.CORBA.Util.mapSystemException(Util.java:84)
at <<stub path>>.retrieve(_fileName1Remote_Stub.java:1)
at <<filePath>>.retrieve(fileName2.java:778)
at <<filePath>>.onCustomAction1(fileName3.java:403)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at org.apache.el.parser.AstValue.invoke(AstValue.java:266)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:278)
at org.apache.myfaces.view.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:83)
at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:83)
... 43 more

引起:com.itextpdf.text.exceptions.IllegalPdfSyntaxException:非平衡保存/恢复状态运算符。     在com.itextpdf.text.pdf.PdfContentByte.sanityCheck(PdfContentByte.java:3171)     at com.itextpdf.text.pdf.PdfContentByte.toPdf(PdfContentByte.java:245)     at com.itextpdf.text.pdf.PdfFormXObject。(PdfFormXObject.java:88)     at com.itextpdf.text.pdf.PdfTemplate.getFormXObject(PdfTemplate.java:241)     at com.itextpdf.text.pdf.PdfWriter.addSharedObjectsToBody(PdfWriter.java:1257)     at com.itextpdf.text.pdf.PdfWriter.close(PdfWriter.java:1169)     at com.itextpdf.text.pdf.PdfDocument.close(PdfDocument.java:780)     在com.itextpdf.text.Document.close(Document.java:409)     at&lt;&gt; .createPDF(&lt;&gt; .java:135)     at&lt;&gt; .getPdfData(fileName1Bean.java:339)     at&lt;&gt; .retrieve(fileName1Bean.java:205)     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)     在java.lang.reflect.Method.invoke(Method.java:613)     在com.ibm.ejs.container.EJSContainer.invokeProceed(EJSContainer.java:5730)     at com.ibm.ejs.container.interceptors.InvocationContextImpl.proceed(InvocationContextImpl.java:568)     at&lt;&gt; .retrieveIntercept(&lt;&gt; .java:43)     at sun.reflect.GeneratedMethodAccessor215.invoke(Unknown Source)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)     在java.lang.reflect.Method.invoke(Method.java:613)     at com.ibm.ejs.container.interceptors.InterceptorProxy.invokeInterceptor(InterceptorProxy.java:227)     at com.ibm.ejs.container.interceptors.InvocationContextImpl.proceed(InvocationContextImpl.java:548)     at com.ibm.ejs.container.interceptors.InvocationContextImpl.doAroundInvoke(InvocationContextImpl.java:229)     在com.ibm.ejs.container.EJSContainer.invoke(EJSContainer.java:5621)     at&lt;&gt; _c01dfd09.retrieve(EJSRemote0SL&lt;&gt; Bean_c01dfd09.java)     at&lt;&gt; Bean_c01dfd09_Tie.retrieve(_&lt;&gt; Bean_c01dfd09_Tie.java:1)     在&lt;&gt;。调用(&lt;&gt; _c01dfd09_Tie.java)     at com.ibm.CORBA.iiop.ServerDelegate.dispatchInvokeHandler(ServerDelegate.java:669)     在com.ibm.CORBA.iiop.ServerDelegate.dispatch(ServerDelegate.java:523)     在com.ibm.rmi.iiop.ORB.process(ORB.java:523)     在com.ibm.CORBA.iiop.ORB.process(ORB.java:1575)     在com.ibm.rmi.iiop.Connection.doRequestWork(Connection.java:3039)     在com.ibm.rmi.iiop.Connection.doWork(Connection.java:2922)     在com.ibm.rmi.iiop.WorkUnitImpl.doWork(WorkUnitImpl.java:64)     在com.ibm.ws.giop.threadpool.WorkQueueElement.dispatch(WorkQueueElement.java:165)     在com.ibm.ws.giop.filter.GiopFilterChain.processMessage(GiopFilterChain.java:203)     在com.ibm.ws.giop.threadpool.PooledThread.handleRequest(PooledThread.java:81)     在com.ibm.ws.giop.threadpool.PooledThread.run(PooledThread.java:102)     在com.ibm.ws.util.ThreadPool $ Worker.run(ThreadPool.java:1862)

1 个答案:

答案 0 :(得分:0)

所以这里...... 首先,如果我的问题含糊不清,我道歉。 如上所述,也使用版本2.1.7(感谢Amedee提出的观点)。我在服务器的共享库中找到了一个5.x版本。 由于两个版本之间的目录结构完全不同,因此两个罐子都是由于特定原因而维护的。

此外,我自己是这个整个应用程序的新手,并试图在这个项目中与周围的人了解。当开发它的人可能不在这里时,我认为一篇文章可能会给我一些想法。所以,你也是部分正确的洛瓦基先生 - 我对iText一无所知并且也在学习 - 我没有理由说谎! : - 。)

Mkl,try块中没有异常。最终结果是由于某些其他原因,图像没有生成或出现乱码。它正在调查中。我把这个活动交给了一个比我更了解系统的人。

感谢您的所有邮件和支持亲爱的朋友们!