Sample code for 30+ languages & platforms
Java

Extract XML from FatturaPA .p7m

See more Digital Signatures Examples

Demonstrates how to verify the signature and extract the XML from a FatturaPA .p7m file.

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.BinData;
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Crypt2;
import com.chilkatsoft.chilkat2.Xml;

public class ChilkatExample {

    public static void main(String[] args) {
        // This example requires the Chilkat API to have been previously unlocked.
        // See Global Unlock Sample for sample code.

        BinData bd = new BinData();
        try {
            bd.loadFile("qa_data/p7m/IT01879020517_abc.xml.p7m");
        } catch (ChilkatException e) {
            System.out.println("Failed to load the .p7m file");
            return;
        }

        Crypt2 crypt = new Crypt2();

        // Verify and extrct the payload contained within the .p7m.
        // In this case, the payload is the FatturaPA XML.
        // If successful, the resulting bd will contain only the XML.
        try {
            crypt.opaqueVerifyBd(bd);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            System.out.println("Failed to extract and verify.");
            return;
        }

        // Save the XML to a file.
        bd.writeFile("qa_output/zIT01879020517_abc.xml");

        // Alternatively, load into an XML object and emit.
        Xml xml = new Xml();
        xml.loadXml(bd.getString("utf-8"));

        System.out.println(xml.getXml());
    }
}