Librerie Java per lavorare con documenti docx

108 views
Skip to first unread message

Andrea Zoppello

unread,
May 31, 2013, 11:18:43 AM5/31/13
to jugp...@googlegroups.com
Ciao a tutti,

Sto cercando delle librerie java per lavorare con documenti word in
formato docx.

In particolare ho i seguenti requisiti:

1) Dato un documento word ( docx ) ho lo necessitᅵ di rimpiazzare tutte
le occorrenze di una stringa
con un'altra stringa e di risalvare il documento word in formato docx.

2) Dati 2 o piᅵ in generale n documenti docx ho la necessitᅵ di unire
questi file in un unico documento
appendendoli uno dietro l'altro.

Ho fatto dei tentativi con POI e docx4j ma nessuna delle due soluzioni
si ᅵ rivelata abbastanza stabile.
Con POI sono riuscito bene a risolvere il primo problema, ma ho avuto
dei grossi problemi nell'unione
dei file ( si perdono le formattazioni gli stili etc... )

Con docx4j ᅵ andata un po meglio ma non funziona sempre e sull'unione
dei file a volte ci sono gli stessi
problemi di POI

Sto prendendo in considerazione l'uso di una libreria commerciale se la
politica di licensing costi benefici
ᅵ accettabile...

Avete qualche idea in proposito??? Che esperienze avete avuto con Java e
l'integrazione con Microsoft Word??

Grazie

Andrea


Tarin Gamberini

unread,
May 31, 2013, 11:34:00 AM5/31/13
to jugp...@googlegroups.com
On 31/05/2013 17:18, Andrea Zoppello wrote:
> Ciao a tutti,
>
Ciao Andrea,

> Sto cercando delle librerie java per lavorare con documenti word in
> formato docx.
>
Quando dici "lavorare con docx" sottintendi anche che si tratti di un
requisito non negoziabile, giusto?

Ciao,
Tarin

--
JUG Padova
www.parancoe.org www.lambico.org www.jugevents.org

Andrea Zoppello

unread,
May 31, 2013, 11:32:43 AM5/31/13
to jugp...@googlegroups.com
Ciao,

Si � cos� non � negoziabile, altrimenti avrei scelto altre soluzioni :-)

Andrea

Giampiero Granatella

unread,
Jun 2, 2013, 1:16:47 PM6/2/13
to jugp...@googlegroups.com

per elaborare documenti office io mi sono trovato splendidamente con aspose. però non è gratuito.

ciao
giampiero granatella

Il giorno 31/mag/2013 17.32, "Andrea Zoppello" <andrea....@gmail.com> ha scritto:
Ciao,

Si č cosě non č negoziabile, altrimenti avrei scelto altre soluzioni :-)
--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "JUG Padova" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più i suoi messaggi, invia un'email a jugpadova+unsubscribe@googlegroups.com.
Per postare messaggi in questo gruppo, invia un'email a jugp...@googlegroups.com.
Visita questo gruppo all'indirizzo http://groups.google.com/group/jugpadova?hl=it.
Per ulteriori opzioni, visita https://groups.google.com/groups/opt_out.


andrea....@gmail.com

unread,
Jun 3, 2013, 12:53:57 AM6/3/13
to jugp...@googlegroups.com
Ciao,

L'ho provata e risolve tutti i requisiti, ma il costo di licenza e 

Inviato da iPad
Per annullare l'iscrizione a questo gruppo e non ricevere più i suoi messaggi, invia un'email a jugpadova+...@googlegroups.com.

andrea....@gmail.com

unread,
Jun 3, 2013, 2:26:53 AM6/3/13
to jugp...@googlegroups.com
Scusate ho visto solo adesso che il messaggio e partito troncato :))))

Comunque grazie Aspose l'ho provata e funziona alla perfezione.... Devo solo verificare che i costi siano compatibili con il progetto...

andrea

Inviato da iPad

Alessandro Carraro

unread,
Jun 3, 2013, 4:14:53 AM6/3/13
to jugp...@googlegroups.com, andrea....@gmail.com
Se hai un po' di tempo, prova la soluzione 'artigianale': un docx è alla fine un XML zippato
Aprire uno zip in java è piuttosto facile, e manipolare XML anche... quantomeno ci sono librerie per tutti i gusti.

Ho implementato il rimpiazzamento di stringhe in poco tempo (una mezza giornata se non ricordo male). L'unico problema è che devi stare attento a come gli utenti scrivono i documenti: se un utente scrive, cancella, cambia formato, riscrive ecc.ecc. può essere che il doc risulti 'integro' alla vista, ma 'frammentato' nella struttura per cui una regexp non è semplicissima da scrivere. Ma se i documenti sono ben strutturati (es, scritti da un altro programma) la soluzione è fattibilissima
Per annullare l'iscrizione a questo gruppo e non ricevere più i suoi messaggi, invia un'email a jugpadova+...@googlegroups.com.
Per postare messaggi in questo gruppo, invia un'email a jugp...@googlegroups.com.
Visita questo gruppo all'indirizzo http://groups.google.com/group/jugpadova?hl=it.
Per ulteriori opzioni, visita https://groups.google.com/groups/opt_out.


--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "JUG Padova" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più i suoi messaggi, invia un'email a jugpadova+...@googlegroups.com.
Per postare messaggi in questo gruppo, invia un'email a jugp...@googlegroups.com.
Visita questo gruppo all'indirizzo http://groups.google.com/group/jugpadova?hl=it.
Per ulteriori opzioni, visita https://groups.google.com/groups/opt_out.
 
 

andrea....@gmail.com

unread,
Jun 3, 2013, 4:48:55 PM6/3/13
to jugp...@googlegroups.com

Ciao Alessandro,

Si ho visto come sono fati i file docx. 

Per quando riguarda la problematica della sostituzione dei placeholder sono riuscito a farlo con POI...

Per quanto riguarda i file non ho il controllo su come i file sono prodotti....

Il problema più grosso è però l'unione dei file...... Anche qui ho provato con poi ma non ho avuto risultati accettabili.

Ho scaricato la specifica open XML, ma è decisamente grossa......

Un'altra idea che mi è venuta e quella di esporre un ws sviluppato con tecnologia .Net che passati file come attachment li unisca e ritorni il risultato..

Ovviamente il ws in questione..... Potrebbe utilizzare un Microsoft word installato sulla machina e di conseguenza tutti gli oggetti nativi. 

Andrea
Inviato da iPad
Reply all
Reply to author
Forward
0 new messages