Spanish JRDC2

Discussion in 'Spanish Forum' started by Guillermo Manoukian, Dec 17, 2018.

  1. Guillermo Manoukian

    Guillermo Manoukian Member Licensed User

    Hola a todos!, soy nuevo en el tema de B4A y estuve revisando un poco varios foros y veo que hablan mucho de JRDC y JRDC2(recomendado), como soy nuevo en esto mi pregunta es si este Middleware que codificó Erel se puede correr en Linux mediante, Apache, Tomcat, Daemon ú otra forma.

    Alguno tiene alguna experiencia de implementación ó solución completa?, que no se mal interprete, no busco que alguien me resuelva todo el problema.
    Quiero empezar por algún lado, me descargué B4J y leyendo un poco e investigando hice algunas pruebas de armar una aplicación cliente muy sencilla que busca 3 columnas en MariaDB y me las muestra en un TableView. La experiencia fué muy buena conseguí compilar el .jar y que funcione.
    Quise copiar el mismo ejemplo en B4A y me encontré que no era tan sencillo conectarse remotamente a un servidor MySQL.

    Gracias de antemano.
     
  2. José J. Aguilar

    José J. Aguilar Active Member Licensed User

    Hola Guillermo:

    En este hilo puedes ver algo de información que quizás te aclare algunos conceptos, a mí me costó un poco lo JRDC2

    https://www.b4x.com/android/forum/threads/how-to-connect-to-mysql-database.98619/page-2#post-626074

    Verás, cuando tú compilas el servidor middleware de JRDC2, obtienes un fichero .jar en la carpeta Objects. Ese jar, se ejecuta con Java, con lo cual lo puedes ejecutar en windows, mac, linux... Es exactamente igual que la aplicación que hiciste en B4J, lo ejecutas igual, y desde tu app B4A accedes al servidor que has creado.

    suerte y al lío¡¡
     
  3. Guillermo Manoukian

    Guillermo Manoukian Member Licensed User

    José, gracias por responder! lanzo la pregunta pero lo voy a investigar, tengo un DEBIAN9 con un Apache+PHP+Tomcat, entiendo que este Middleware viene a reemplazar toda la solución que tengo instalada, el tema es que me confunde un poco como correr esto desde la consola de Linux, va a correr sin problemas o errores?. Vi por ahi que alguien mencionaba que usaba java -jar bla bla bla nohu no se cuanto(lo quiero investigar nuevamente) pero no encontré a nadie que diera afirmaciones de que la solución le funcionara, muchas preguntas, pocas respuestas. Entiendo que en los foros no se pueden pedir soluciones hechas, para eso son foros, pero veo mucha gente posteando pero nadie te asegura que funcione.

    Gracias de antemano!
     
  4. Guillermo Manoukian

    Guillermo Manoukian Member Licensed User

    Una aclaración: La aplicación que codifiqué, la corrí en Windows haciendo click en el .jar y como está instalado JAVA para mi sorpresa funcionó sin inconvenientes. Pero en Linux desde la consola es muy diferente, eso mismo .jar trajo muchos errores porque no es un servicio, tiene información que necesita una interfaz para mostrar los resultados. Por eso se me generaron tantas preguntas y dije: la solución de Erel no va a correr tan sencillo en un Linux desde una consola...

    Saludos!
     
  5. José J. Aguilar

    José J. Aguilar Active Member Licensed User

    No hay de qué.
    No sé si lo entiendo bien. Aunque con B4J puedes hacer un servidor web completo o páginas web, en este caso sólo haces la parte que accede a la base de datos. No sé si la solución que tienes con apache+php+tomcat la tienes sólo para acceder a la base de datos y servir datos a la aplicación o si tienes hecho una web para gestionar la base de datos etc... Como te digo, JRDC2 sólo sustituirá al acceso a datos para servirlos a la app.
    No soy un experto, pero sí, correrá sin problemas. Cuando estás desarrollando, verás en los logs de B4J los problemas que tengas en el acceso a la base de datos. Estos mismos mensajes son los que verás que se guardan en el archivo de registro.
    Por ejemplo, yo lo tengo en un servidor Synology, lo ejecuto como
    Code:
    nohup /var/packages/Java8/target/j2sdk-image/bin/java -jar /volume1/web/jRDC.jar > /volume1/web/nohup.out
    Y efectivamente, en el fichero nohup.out veo los mensajes de registro
    Code:
    jRDC is running (version = 2.21)
    (SQLException) java.sql.SQLException: Field 
    'NA' doesn't have a default value
    (IllegalStateException) java.lang.IllegalStateException: WRITER
    Command: , took: 9264ms, client=
    193.152.121.148
    En este caso, busca info de cómo ejecutar una aplicación Java desde linux como un servicio, estoy seguro de que no será complicado y será cuestión de agregar a algún archivo .ini una línea del tipo de lo que te he puesto arriba
     
  6. Guillermo Manoukian

    Guillermo Manoukian Member Licensed User


    Excelente José, más tarde voy a echarle mano un poco a esto que enviaste, me aclaraste un poco las dudas. Gente así hace falta en los foros, no tuve buenas experiencias en otros foros de programación, hay mucha gente rencorosa que postea cosas incompletas, en vez de ayudarte, te confunden más y terminas saliendote porque no hay buenas experiencias. Tengo 2 reglas cuando ingreso a un foro: 1. Si no sabes, no opines, 2. Si sabes, es mejor que sepas y tu ayuda sirva. Después está del otra lado saber un poco de programación y reforzar conocimientos buscando lo que uno no sepa.

    Gracias amigo!
     
    José J. Aguilar likes this.
  7. Seneca

    Seneca Active Member Licensed User

    Hola.

    Aunque el tema JRDC2 es un tema que no domino y dejé aparcado temporalmente hace varias semanas, sí que estuve haciendo alguna prueba corriendo el jRDC.jar desde un servidor Linux (VPS) y no tuve ningún problema en la ejecución. Este Jar no necesita interfaz para mostrar resultados, sino que estos son devueltos a quien hace la consulta.

    También utilicé nohup para correr el .jar en el VPS (http://rm-rf.es/nohup-mantiene-ejecucion-comando-pese-salir-terminal/)

    Saludos.
     
    José J. Aguilar likes this.
  8. Guillermo Manoukian

    Guillermo Manoukian Member Licensed User

    Impecable @Seneca ya estuve jugando y es como decís Vos y @José, el .jar es un servicio y funciona como tal!, no necesita interfaz gráfica y funciona perfectamente!. Aún en Debian y desde la consola!, me faltan hacer más pruebas pero vengo bien con la tarea de aprendizaje.

    Excelente muchachos!
     
    Seneca and José J. Aguilar like this.
  9. Seneca

    Seneca Active Member Licensed User

    Me alegra haber sido de ayuda.
     
Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice