Java web

Necesito orientación de cómo puedo atacar el problema...
Hola, Estoy buscando un applet o un servlet, donde un usuario pueda abrir un fichero, preferiblemente .doc. Y que luego pueda guardar las modificaciones de nuevo en el servidor de origen . El problema es que cuando lo abre en el navegador, lo abre como un fichero temporal, se puede hacer en otra tecnología web como javascript o ajax, también me sirve.
Gracias de antemano
{"lat":40.3919923820805,"lng":-3.7648344039917}

1 respuesta

Respuesta
1
Como bien dices, en cuanto un documento (Word en este caso) se abre en el explorador lo que pase con él ya no depende del servidor web que lo alojaba. Es el explorador el que se ha bajado una copia temporal del mismo. La única solución "rapida" o "sencilla" es guardar el documento modificado en local, preferiblemente con el mismo nombre de origen. Y luego ya con un servlet subirlo al servidor sobrescribiendo el anterior.
Para abrirlo y guardarlo modificado todo directamente en el explorador necesitarías un servlet bastante más complicado que te mostrara el contenido del archivo (y los documentos Word no son tan simples como un documento de texto plano), te permitiera modificarlo y al darle al guardar (con botones propios del servlet), sobreescribiera el archivo anterior. Se podría, claro, y quizás haya por ahí algo que se pueda usar como base, pero no es muy sencillo.
Si la primera opción no te parece suficiente podría quizás buscarte algo de la segunda, pero ya te digo que es muy complicado.
Espero haberte sido de ayuda, no olvides cerrar el tema cuando consideres oportuno.
Hola Experto
Si estuve investigando, y he encontrado algunos componentes llamados ocx que pueden hacer la manipulación del fichero office. Estos componentes son para la venta.
Ahora la primera solución, esa de sincronizar el fichero a través de un serlet una vez que el usuario abra el fichero temporal llamado por el navegador, creo que es la mejor solución.
Pero me queda una duda, como capturo la ruta que abre el fichero temporal, en el ordenador local. Ya que creo que esta es dinámica en una carpeta temporal .
La Url del fichero en el servidor es siempre la misma, con esa no hay problema.
Gracias
David Morales
He ahí el problema, me temo que el usuario tendría que guardar el documento en local, especificando la ruta que quiera. Después lo que tendría que hacer el usuario sería, a través del servlet, sustituir el documento del servidor por el suyo local.
Está claro que son más pasos para el usuario pero es la solución menos compleja y gratis...
Además tiene la ventaja para el usuario de que está guardando una copia local del documento. Si varios usuarios van a poder subir nuevas versiones del documento será interesante que el servlet indique quien fue el último usuario que subió el fichero y cuando.
El tema del uso interactivo de documentos a través de la red siempre ha sido bastante conflictivo, por temas de seguridad, concurrencia y muchas veces monetarios (como los formatos propietarios de Microsoft...)
He dado una vuelta de tuerca más al tema (y al google) y creo que he encontrado una solución muy interesante. Pero ni siquiera es una solución Web, y a lo mejor tenía que ser obligatoriamente Web, tú dirás.
El Word permite abrir documentos remotos en otra máquina, tal y como se explica en esta página:
http://barracudadrive.net/blog/2007/12/Edit-Remote-Documents-Using-Microsoft-Word
Pero para ello el servidor debe tener funcionando un servidor Webdav (Web-based Distributed Authoring and Versioning), el cual permite la compartición, edición y gestión colaborativa de los documentos de un servidor Web. Nunca lo he usado pero creo que mediante usuarios y passwords podrás permitir que los usuarios gestionen remotamente los ficheros, e incluso editarlos remotamente usando el propio Word. Más información aquí:
http://www.webdav.org/

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas