Muy buenas compañeros!
espero que me podáis ayudar de nuevo, ya que sigo aumentando mi conocimiento sobre Alfresco cada día.
Tenemos un script con el que saco un catálogo de enlaces, un listado.
Ese listado de enlaces, lo saco del mismo Alfresco dónde ejecute el script, pero además necesito traerme un dato de una BD ajena a la del Alfresco.
Entonces, necesito ayuda sobre cómo se podría realizar este proceso, si en el código JavaScript se podría hacer esta conexión a la BD, o haciendo un request de un servlet que hagamos aquí, o mediante webscript o webservice...
Cuántas opciones tengo y cuál sería la mejor en relación elegante - seguridad - costoTiempo.
Muchas gracias de antemano.
Saludos.
Bajo mi punto de vista lo mejor sería realizar un servlet en la base de datos externa y consumirlo por REST desde Alfresco. Puedes realizar invocaciones HTTP desde JavaScript de servidor.
Creo que me he precipitado...
Desde el JavaScript (Rhino) de repositorio no vas a poder (o es muy difícil) invocar a un servlet. Tendrías que desarrollar la lógica en Java en vez de en JavaScript.
A ver,
nosotros ya hemos conseguido que desde un script monte un HTML, los enlaces de ese HTML en el href tienen configurada la llamada a un servlet que invoca los webservice en un proyecto Maven y nos muestra en el navegador el contenido del documento al que hace referencia el enlace origen.
Desconozco lo que es Rhino, .
la "lógica" en java a qué te refieres? hacer un servlet que se conecte a la BD, por ejemplo?
Me gustaría saber si habéis hecho algún tipo de administración electrónica parecida alguna vez y qué alternativas veis al problema.
Queda claro que mis conocimientos son escasos de momento.
Gracias de antemano!
Saludos.
Lo cierto es que me pierdo un poco en lo que estáis haciendo.
Nosotros hemos hecho varias administraciones electrónicas diferentes, pero siempre utilizando Alfresco SDK estándar.
Ejecuto un Script.js en un Alfresco X que recorre un espacio y me crea un .HTML con enlaces, además de estos enlaces necesito sacar unos datos que están en otra BD, distinta a la BD de la que tira este Alfresco X, está en otro servidor y demás.
Lo que necesito es que este Script.js se conecte a esa BD y me traiga unos datos, y no sé cómo implementar esta funcionalidad, si en el mismo código del script añadir más JavaScript, o llamando desde el código a un servlet externo o como...
Disculpad las molestias.
Muchas gracias.
Si quieres te explico cómo lo haría yo.
Estás desarrollando un Web Script que produce una vista HTML. La lógica la implementas en JavaScript (Rhino, que es JavaScript de servidor). Las opciones para conectarse a una base de datos externa o a un servlet vía HTTP son limitadas.
Por ese motivo, cuando encuentro un escenario de este tipo programo la lógica del Web Script en Java en vez de en JavaScript. Desde Java hay muchas más herramientas que me permiten conectar a sistemas externos: JDBC, Http Client...
Hola:
Si el dato a consumir de base de datos es una tabla secundaria, es posible guardarla en el repositorio directamente como un CSV, por ejemplo via webdav, y de esa manera puedes hacer un getcontent desde JS, parsearlo y acceder al dato. Si es una tabla que está viva, a veces he llegado a hacer un cronjob de sistema operativo en el servidor Alfresco, que me actualiza ese CSV.
Pero en general lo que dice es la manera ortodoxa y eficiente de hacer una conexión a base de datos genérica.
Saludos.
--C.
Discussions about Alfresco Content Services and Alfresco Process Services in Spanish
Related:
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.