Importe clases Java personalizadas en JavaScript del lado del servidor en Xpages (Lotus Domino 8.5+)

StackOverflow https://stackoverflow.com/questions/1644530

Pregunta

Con Lotus Domino 8.5.1, se puede usar " estándar " Clases de Java en Javascript del lado del servidor (incrustado en una página X), o clases de Java disponibles en la carpeta WEB-INF / lib. Por ejemplo:

var driverClass:java.lang.Class;
var driver:java.sql.Driver;
var connection:java.sql.Connection;
var statement:java.sql.Statement;
driverClass = java.lang.Thread.currentThread().getContextClassLoader().loadClass("org.gjt.mm.mysql.Driver");
driver = driverClass.newInstance();

(muestra encontrada aquí aquí )

Sin embargo, ¿cómo podría uno usar nuestras propias clases personalizadas definidas en las bibliotecas de scripts de Java? En una página X, solo se pueden importar bibliotecas javascript del lado del servidor (no Java ni LS).

Gracias por tu ayuda

Saludos

¿Fue útil?

Solución

Respuesta encontrada en la wiki:

http://www-10.lotus.com /ldd/ddwiki.nsf/dx/reuse_java_xpage.htm

Desde un XPage es fácil llamar a Service Side JavaScript para la lógica empresarial. El JavaScript ha incorporado funciones que le permiten llamar a Java. Desafortunadamente, JavaScript del lado del servidor, como lo usa XPages, actualmente no puede llamar a las rutinas Java creadas en una biblioteca Java. Sin embargo, puede llamar a una biblioteca Java que se ha exportado como un archivo JAR. Como resultado, también puede crear una biblioteca Java que también invoca un archivo JAR de Java.

Otros consejos

Implementamos casi toda la lógica usando Java estándar usando Eclipse y Maven para desarrollar Java y empaquetarlos como JAR. Incluso configuramos Maven para copiar los JAR en el directorio apropiado en el servidor domino (/ xsp / shared / lib es estándar, o usamos / jvm / lib / ext para hacer que las clases estén disponibles en todas partes en domino, por ejemplo, para implementar sus propios complementos de servidor Java) automáticamente. Recomiendo este enfoque.

En realidad utilizamos dominó " solo " como servidor de aplicaciones y almacenar datos en un RDBMS.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top