Foros del Web » Programación para mayores de 30 ;) » Java »

Generar documento MS-WORD desde JAVA ¿Cómo hacerlo?

Estas en el tema de Generar documento MS-WORD desde JAVA ¿Cómo hacerlo? en el foro de Java en Foros del Web. Hola a todos, Me ha surgido la necesidad de generar un documento ms-word a partir de un formulario jsp. El hecho es que el documento ...
  #1 (permalink)  
Antiguo 22/06/2010, 09:55
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Generar documento MS-WORD desde JAVA ¿Cómo hacerlo?

Hola a todos,

Me ha surgido la necesidad de generar un documento ms-word a partir de un formulario jsp. El hecho es que el documento en sí es bastante complejo, ya que contiene listas no ordenadas, sublistas, tablas preconfiguradas con un formato específico de bordes, sombreado y tamaño, tablas en la propia cabecera, etc.

Me gustaría saber si hay alguna librería que permita tener una plantilla de word preconfigurada, y simplemente cargar las variables del formulario al documento (de forma dinámica puesto que en algunos casos se deberían incluir colecciones de elementos), o si tendría que crear el documento a partir de cero cuál sería la librería más aconsejable, y si existe algún ejemplo de su funcionamiento.

Agradecería cualquier ayuda.

Un saludo
  #2 (permalink)  
Antiguo 22/06/2010, 10:06
 
Fecha de Ingreso: marzo-2009
Ubicación: Santa Marta
Mensajes: 73
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Generar documento MS-WORD desde JAVA ¿Cómo hacerlo?

nunca lo he utilizado pero quiza pueda ayudarte

http://jodreports.sourceforge.net/
  #3 (permalink)  
Antiguo 22/06/2010, 10:08
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Generar documento MS-WORD desde JAVA ¿Cómo hacerlo?

Ya lo vi, y más bien está pensado para generar en OpenOffice, pero necesito específicamente MS-WORD.
  #4 (permalink)  
Antiguo 22/06/2010, 10:10
 
Fecha de Ingreso: marzo-2009
Ubicación: Santa Marta
Mensajes: 73
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Generar documento MS-WORD desde JAVA ¿Cómo hacerlo?

toces mira este... XD

http://www.javadocx.com/features
  #5 (permalink)  
Antiguo 22/06/2010, 10:15
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Generar documento MS-WORD desde JAVA ¿Cómo hacerlo?

Valoro tu aportación. He visto esos y el de POI. Desgraciadamente la versión free de javadocx no dispone de listas anidadas. Lo que necesito saber realmente es si hay alguna forma de tener una plantilla preconfigurada (es decir que yo mismo preformatee mi doc base con una serie de variables) y sólo necesitar introducir las variables a partir del formulario, es decir, saber que librería podría realizar esa tarea y si es posible tener algún ejemplo.

Lo otro sería tremendamente complejo, porque para crear una simple tabla con un tamaño concreto, centrada, con una celda, un color de fondo de celda, un color y tamaño concreto del borde de celda... y luego meter ahí un dato del formulario, va a ser una locura, y ya no digo nada de las listas anidadas...
  #6 (permalink)  
Antiguo 24/06/2010, 01:22
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Generar documento MS-WORD desde JAVA ¿Cómo hacerlo?

¿No hay nadie que haya trabajado con alguna de estas librerías y que me pueda aconsejar? También he leído que últimamente el HWPF de POI estaba parado y su nivel desarrollo deja bastante que desear.

:(
  #7 (permalink)  
Antiguo 28/06/2010, 02:12
Avatar de elAntonie  
Fecha de Ingreso: febrero-2007
Mensajes: 894
Antigüedad: 17 años, 2 meses
Puntos: 10
Respuesta: Generar documento MS-WORD desde JAVA ¿Cómo hacerlo?

Wenas

Lamentablemente, word y java se llevan bastante mal. y el proyecto POI para word, es bastante 'elemental'. La solucion para ti, puede pasar por jacozoom o jacob o jawin.

la primera es de pago (alrededor de 200 euros la licencia), la otras son gratis, pero todas se basan en lo mismo. Una dll que tiene la máquina cliente, y que desde java le das las ordenes concretas, para ejecutar un find, replace, seleccionar texto, etc etc.

Yo personalmente, uso jacozoom, ya tenian comprada la licencia lo malo es que el soporte es pesimo. Hago algo parecido a tu problema, pero mis 'plantillas' son doc y uso unas 'variables' del estilo de <#%nombre cliente%#>, busco esos textos y los reemplazo (replaceAll) por el nombre del cliente.

Saludos.

Un ejemplo de jawin. http://mundobyte.wordpress.com/2008/...ll-desde-java/
Otro de jacob (los chinos controlan mazo) http://blog.csdn.net/dingdangxiaoma/...7/2334865.aspx
Y la 'ayuda' de jacozoom http://tech.groups.yahoo.com/group/jacoZoom/
Tendrias que darte de alta ( y que te acepten) en el grupo para poder ver ejemplos.
PD tambien recuerdo, hace tiempo que habia una libreria en C que habia hecho un aleman, que hacia precisamente eso. Tenias la libreria en el java llenaba un fichero de texto plano, y la libreria reemplazaba cada variable por su valor. Si la encuentro te la mando.
__________________
--
NO. Tu problema no es urgente.

CCFVLS

Última edición por elAntonie; 28/06/2010 a las 02:23
  #8 (permalink)  
Antiguo 29/06/2010, 05:00
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Generar documento MS-WORD desde JAVA ¿Cómo hacerlo?

Hasta donde he podido ver, las opciones que me das implicar introducir una dll en el equipo cliente, pero yo necesito hacerlo para una red de mas de 300 ordenadores distribuidos en distintos puntos, con lo cual se me antoja harto complicado.

:/ que contrariedad
  #9 (permalink)  
Antiguo 30/06/2010, 05:01
Avatar de elAntonie  
Fecha de Ingreso: febrero-2007
Mensajes: 894
Antigüedad: 17 años, 2 meses
Puntos: 10
Respuesta: Generar documento MS-WORD desde JAVA ¿Cómo hacerlo?

Cita:
Iniciado por Fuzzylog Ver Mensaje
Hasta donde he podido ver, las opciones que me das implicar introducir una dll en el equipo cliente, pero yo necesito hacerlo para una red de mas de 300 ordenadores distribuidos en distintos puntos, con lo cual se me antoja harto complicado.

:/ que contrariedad
Pues Yo tengo una red bastante mas amplia, es a nivel nacional y no tengo ningun problema.

Tengo un applet que se encarga de ejecutar jacozoom y, si la dll no existe, se guarda en el c:\documents and settings del usuario.

Sinceramente grabar la dll en el cliente es el menor de los problemas. Otra cosa es si me dijeras que el SO puede no ser windows, pero entonces no tendria sentido usar MS-Word.

Saludos.
__________________
--
NO. Tu problema no es urgente.

CCFVLS
  #10 (permalink)  
Antiguo 12/08/2010, 01:24
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Generar documento MS-WORD desde JAVA ¿Cómo hacerlo?

Retomo el hilo para resolver algunas dudas.

¿Alguien sabe si con JodReports puedo abrir un documento de word ya predefinido y realizar modificaciones sobre su contenido?
  #11 (permalink)  
Antiguo 23/08/2010, 04:46
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Generar documento MS-WORD desde JAVA ¿Cómo hacerlo?

El servidor de la aplicación está en Linux y podría usar open office. Sin embargo el documento se extraería de la plantilla y se crearía en el cliente, que sólo tendría el MS-Office. Esto es lo que me lía.

Tendría que ser una librería gratuita para office 2003 y que me permita a partir de una plantilla predefinida de word construir un archivo sustituyendo variables por cadenas o, en algún caso, por listas de elementos.

Etiquetas: librerías, word
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:37.