Merci @BrunoLowagie Malheureusement, le format/les règles de ce que nous pouvons utiliser sont hors de notre portée. Le PDF est défini par les tribunaux américains. Mais un collègue a pu me procurer une copie du fichier PDF du système des tribunaux américains, qui est un formulaire «interactif», c'est-à-dire XFA. J'ai donc pu obtenir les données dans le formulaire avec tout le travail que vous avez fait. l'ai fait avec iText.
En utilisant le code suivant. Tout a été obtenu à partir de votre excellent livre.
AcroFields form = stamper.getAcroFields();
XfaForm xfa = form.getXfa();
xfa.fillXfaForm(new ByteArrayInputStream(xmlSchemaStream.toByteArray()));
Pour quiconque lisant ceci dans le futur. Si vous souhaitez ajouter XFA à votre fichier PDF via un code Java, la seule solution actuelle est Adobe LifeCycle dont l'application est UNIQUEMENT disponible sur Windows et vous devez l'installer pour que les fichiers jar soient utilisés. OH, attendez, ça devient encore mieux, vous incluez les fichiers jar client dans votre application. Ce qui signifie, oui vous l'avez deviné, vous devez installer une application serveur et l'exécuter dans JBoss, Weblogic ou Websphere. Donc, en fin de compte, il en coûtera beaucoup trop d'argent pour installer, gérer et maintenir quelque chose d'aussi stupide que d'ajouter un formulaire XFA à votre fichier .pdf.
XFA sera obsolète dans PDF 2.0 (ISO-32000-2) pour être publié en 2017. JasperReports ne prend pas en charge XFA; AFAIK, PdfBox ne supporte pas non plus XFA. iText prend en charge XFA en ce sens qu'il vous permet d'insérer un flux XFA dans un modèle existant et que vous pouvez utiliser XFA Worker pour aplatir ce modèle. Vous pouvez créer un modèle XFA à l'aide d'Adobe LiveCycle Designer et remplir ce modèle avec iText. Vous ne pouvez pas créer un modèle XFA avec JasperReports. Je pense que vous utilisez les mauvais outils. BTW: iText développe une alternative pour XFA. Vous voudrez peut-être nous contacter. –
Merci @BrunoLowagie Je souhaite que nous puissions utiliser non XFA, mais c'est hors de notre portée. J'ai laissé une réponse où j'ai obtenu un PDF interactif que je peux passer notre XML et remplir le formulaire. – user1567291
Pouvez-vous donner un lien vers la décision exacte qui vous oblige à utiliser XFA? – mkl