Expand my Community achievements bar.

Radically easy to access on brand approved content for distribution and omnichannel performant delivery. AEM Assets Content Hub and Dynamic Media with OpenAPI capabilities is now GA.

CosDictionary expected, found class com.adobe.internal.pdftoolkit.core.cos.CosNumeric

Avatar

Former Community Member

Hi,

I'm trying to merge xfa form with pdf using assembler service. For some pdf's it is working fine and for some I'm receiving the following error.

CosDictionary expected, found class com.adobe.internal.pdftoolkit.core.cos.CosNumeric, object Number of invalid cosObject:1036

Can anyone help me out.

Code used to merge in Assembler service:

<DDX xmlns="http://ns.adobe.com/DDX/1.0/">

  <PDF result="outDoc">

    <PDF source="coverpage" baseDocument="true">

      <NoXFA/>

    </PDF>

    <PDF source="inPDFDoc"/>

    <NoForms/>

  </PDF>

  <?ddx-source-hint name="coverpage"?>

  <?ddx-source-hint name="inPDFDoc"?>

</DDX>

Image of the error:

errorAfterConvertingCoverpage.jpg

Thanks in advance..

11 Replies

Avatar

Employee

Hi Ramu,

Which LiveCycle version are you using? Can you please pass on the set of PDFs for which you are facing this issue?

Regards,

Sufyan

Avatar

Level 1

We have the same problem with some PDF files:

 

[3/15/21 15:20:14:433 CET] 00003ca9 AssemblerServ E TRAS0014I: The following exception was logged com.adobe.livecycle.assembler.client.ProcessingException: ALC-ASM-S00-002: Failed to execute the DDX - error messages provided.
at com.adobe.livecycle.assembler.AssemblerServiceImpl.makeResult(AssemblerServiceImpl.java:929)
at com.adobe.livecycle.assembler.AssemblerServiceImpl.execute(AssemblerServiceImpl.java:518)
at com.adobe.livecycle.assembler.AssemblerServiceImpl.invoke(AssemblerServiceImpl.java:462)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:90)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:508)
at com.adobe.idp.dsc.component.impl.DefaultPOJOInvokerImpl.invoke(DefaultPOJOInvokerImpl.java:118)
at com.adobe.idp.dsc.interceptor.impl.InvocationInterceptor.intercept(InvocationInterceptor.java:140)
at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
at com.adobe.idp.dsc.interceptor.impl.DocumentPassivationInterceptor.intercept(DocumentPassivationInterceptor.java:53)
at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
at com.adobe.idp.dsc.transaction.interceptor.TransactionInterceptor$1.doInTransaction(TransactionInterceptor.java:74)
at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.execute(EjbTransactionCMTAdapterBean.java:357)
at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EjbTransactionCMTAdapterBean.doSupports(EjbTransactionCMTAdapterBean.java:227)
at com.adobe.idp.dsc.transaction.impl.ejb.adapter.EJSLocalStatelessEjbTransactionCMTAdapter_caf58c4f.doSupports(Unknown Source)
at com.adobe.idp.dsc.transaction.impl.ejb.EjbTransactionProvider.execute(EjbTransactionProvider.java:104)
at com.adobe.idp.dsc.transaction.interceptor.TransactionInterceptor.intercept(TransactionInterceptor.java:72)
at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
at com.adobe.idp.dsc.interceptor.impl.InvocationStrategyInterceptor.intercept(InvocationStrategyInterceptor.java:55)
at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
at com.adobe.idp.dsc.interceptor.impl.InvalidStateInterceptor.intercept(InvalidStateInterceptor.java:37)
at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
at com.adobe.idp.dsc.interceptor.impl.AuthorizationInterceptor.intercept(AuthorizationInterceptor.java:188)
at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
at com.adobe.idp.dsc.interceptor.impl.JMXInterceptor.intercept(JMXInterceptor.java:48)
at com.adobe.idp.dsc.interceptor.impl.RequestInterceptorChainImpl.proceed(RequestInterceptorChainImpl.java:60)
at com.adobe.idp.dsc.engine.impl.ServiceEngineImpl.invoke(ServiceEngineImpl.java:121)
at com.adobe.idp.dsc.routing.Router.routeRequest(Router.java:131)
at com.adobe.idp.dsc.provider.impl.soap.axis.AdobeAxisServiceProvider.invokeMethod(AdobeAxisServiceProvider.java:222)
at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186)
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:454)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1235)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:779)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:179)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:143)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:96)
at com.adobe.idp.dsc.provider.impl.soap.axis.InvocationFilter.doFilter(InvocationFilter.java:43)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90)
at com.adobe.idp.um.auth.filter.ParameterFilter.doFilter(ParameterFilter.java:105)
at com.adobe.idp.um.auth.filter.CSRFFilter.invokeNextFilter(CSRFFilter.java:141)
at com.adobe.idp.um.auth.filter.CSRFFilter.doFilter(CSRFFilter.java:132)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:979)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1119)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:4219)
at com.ibm.ws.webcontainer.webapp.WebAppImpl.handleRequest(WebAppImpl.java:2210)
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1030)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:382)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:532)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:318)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88)
at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1833)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1909)
Caused by: com.adobe.internal.pdftoolkit.core.exceptions.PDFRuntimeException: com.adobe.internal.pdftoolkit.core.exceptions.PDFInvalidDocumentException: CosDictionary expected, foundclass com.adobe.internal.pdftoolkit.core.cos.CosName. Object number of invalid cosObject:0
at com.adobe.internal.pdftoolkit.pdf.document.PDFCosDictionaryMap.get(PDFCosDictionaryMap.java:373)
at com.adobe.internal.pdftoolkit.pdf.document.PDFExtensions.get(PDFExtensions.java:271)
at com.adobe.internal.pdftoolkit.pdf.document.PDFExtensions.asMap(PDFExtensions.java:130)
at com.adobe.internal.pdftoolkit.pdf.document.PDFDocument.extensionsMap(PDFDocument.java:1633)
at com.adobe.internal.pdftoolkit.pdf.document.PDFDocument.getOriginalVersion(PDFDocument.java:1695)
at com.adobe.internal.pdfm.PDFMDocHandle.initPDFVersion(PDFMDocHandle.java:387)
at com.adobe.internal.pdfm.PDFMDocHandle.setPDFDocument(PDFMDocHandle.java:371)
at com.adobe.livecycle.assembler.SharedPDFMDocHandle.setPDFDocument(SharedPDFMDocHandle.java:134)
at com.adobe.livecycle.assembler.SharedPDFMDocHandle.openAsPDF(SharedPDFMDocHandle.java:309)
at com.adobe.livecycle.assembler.SharedPDFMDocHandle.open(SharedPDFMDocHandle.java:226)
at com.adobe.internal.pdfm.PDFMDocHandle.acquire(PDFMDocHandle.java:618)
at com.adobe.internal.pdfm.PDFMDocHandle.acquirePDF(PDFMDocHandle.java:672)
at com.adobe.internal.pdfm.assembly.ComponentDocument.acquirePDF(ComponentDocument.java:172)
at com.adobe.internal.pdfm.assembly.DocAssembler.insertDocument(DocAssembler.java:978)
at com.adobe.internal.pdfm.assembly.DocAssembler.assemble(DocAssembler.java:189)
at com.adobe.internal.ddxm.task.pdf.AssemblePDF.execute(AssemblePDF.java:129)
at com.adobe.internal.ddxm.blueprint.BluePrint.execute(BluePrint.java:213)
at com.adobe.internal.ddxm.ddx.Node.execute(Node.java:427)
at com.adobe.internal.ddxm.Executive.execute(Executive.java:273)
at com.adobe.internal.ddxm.Executive.execute(Executive.java:226)
at com.adobe.livecycle.assembler.AssemblerServiceImpl.execute(AssemblerServiceImpl.java:517)
... 74 more
Caused by: com.adobe.internal.pdftoolkit.core.exceptions.PDFInvalidDocumentException: CosDictionary expected, foundclass com.adobe.internal.pdftoolkit.core.cos.CosName. Object number of invalid cosObject:0
at com.adobe.internal.pdftoolkit.pdf.document.PDFCosDictionary.<init>(PDFCosDictionary.java:61)
at com.adobe.internal.pdftoolkit.pdf.document.PDFExtension.<init>(PDFExtension.java:78)
at com.adobe.internal.pdftoolkit.pdf.document.PDFExtension.getInstance(PDFExtension.java:98)
at com.adobe.internal.pdftoolkit.pdf.document.PDFExtensions.itemInstantiator(PDFExtensions.java:246)
at com.adobe.internal.pdftoolkit.pdf.document.PDFExtensions.itemInstantiator(PDFExtensions.java:61)
at com.adobe.internal.pdftoolkit.pdf.document.PDFCosDictionaryMap.get(PDFCosDictionaryMap.java:369)
... 94 more

Avatar

Employee

@marcusw76547027 : what this basically says is that one of the PDF documents used by your DDX commands is invalid or corrupted or contains invalid elements. CosDictionary errors are thrown when it cannot read the dictionary (for example if the PDF is actually not a PDF).  

Avatar

Level 1
But I can open the PDF file that causes this issue with the AssemblerService of AEM Forms in the Adobe Acrobat Reader 2017 without any problems. So the PDF file seems to be not invalid or corrupted.

Avatar

Employee
is this part of a JEE orchestration or AEM Workflow? How do you execute the DDX?

Avatar

Level 1
I use SOAP to call the AssemblerService.invoke method and pass the DDX and the input PDF documents as parameters.

Avatar

Employee
can you post your DDX here to see what you are trying to do?

Avatar

Level 1
<?xml version="1.0" encoding="UTF-8"?> <DDX xmlns="http://ns.adobe.com/DDX/1.0/"><PDF result="out.pdf"><NoXFA flatten="true"/><NoForms/><PDF source="0.pdf"/></PDF></DDX>

Avatar

Employee
I took your DDX and tested with a number of different PDFs. Obviously you want to flatten an XFA based formand your DDX does exactly that. Which brings me to believe that either something goes wrong when you upload your 0.pdf via SOAP or this particular PDF is corrupted in some way. Just to confirm: you can flatten other forms ok? It is only this or certain documents that do not work?

Avatar

Level 1
Yes I can flatten other PDF files with the exact same DDX without any problems. Only with some PDF files it generates this exception.