You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "Huynh (JIRA)" <ji...@apache.org> on 2014/10/31 14:57:33 UTC

[jira] [Created] (PDFBOX-2470) Exception in PDDocument.addSignature(PDSignature sigObject, SignatureInterface signatureInterface, SignatureOptions options))

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)