Huynh created PDFBOX-2470:
-----------------------------

             Summary: Exception in PDDocument.addSignature(PDSignature 
sigObject, SignatureInterface signatureInterface, SignatureOptions options))
                 Key: PDFBOX-2470
                 URL: https://issues.apache.org/jira/browse/PDFBOX-2470
             Project: PDFBox
          Issue Type: Bug
          Components: PDModel
    Affects Versions: 1.8.7
            Reporter: Huynh


Hi
I have made the following modifications to avoid ClassCastException or 
NullPointerException in addSignature(PDSignature sigObject, SignatureInterface 
signatureInterface, SignatureOptions options) :

                        // Appearance Dictionary auslesen und setzen
                        // MOD_CS
                        // PDAppearanceDictionary ap = 
                        //        new 
PDAppearanceDictionary((COSDictionary)cosBaseDict.getItem(COSName.AP));
                        // ap.getDictionary().setDirect(true);
                        // signatureField.getWidget().setAppearance(ap);
                        COSBase item = cosBaseDict.getItem(COSName.AP);
                        if (item instanceof COSObject) {
                                item = ((COSObject) item).getObject();
                        }
                        if (item instanceof COSDictionary) {
                                PDAppearanceDictionary ap = new 
PDAppearanceDictionary((COSDictionary) item);
                                ap.getDictionary().setDirect(true);
                                signatureField.getWidget().setAppearance(ap);
                        }
                        
                        // AcroForm DefaultRessource auslesen und setzen
                        COSBase dr = cosBaseDict.getItem(COSName.DR);
                        // MOD_CS
                        if (dr != null) {
                                dr.setDirect(true);
                                dr.setNeedToBeUpdate(true);
                                acroFormDict.setItem(COSName.DR, dr);
                        }

Regards



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to