Spanish ABMaterial VS Banano

Jannete

Member
Hola a todos. Tengo tiempo queriendo hacer una web (uso personal) con formularios, que almaceno algunos datos en una tabla (como Android y SQL), y quiero poner eventos en mi página (si oprime boton a, activa textbox 1, etc.), pero el PHP y el MySql no se me dan bien, dejandome al borde de la histeria (soy educadora, no programadora).

Mi lap tiene 1.6 GB libres, por lo que Visual Studio no me es opcion (ademas tengo entendido que los ASPX no abren en ningún servidor), asi que lei acerca de ABMaterial y Banano, pero no se por cual irme. A lo que tengo entendido, ABMaterial ejecutado Java del lado del servidor, por lo que hay que rentar un servidor con esas capacidades (o tal vez lei mal), con Banano tengo entendido que el Java se ejecuta en el navegador, por lo que se puede ocupar cualquier servidor (corrijanme por favor si estoy mal), el caso que quiero usar un Hosting gratuito (no creo que tenga Java), ademas Banano tiene una libreria SQL (que no se profundizó como se usa, pero si se usa como las SQL de las aplicaciones android serio perfecto).

Explico lo que me gustaria hacer:

Quiero hacer una página donde inserte por ejemplo, un nombre, que un hilandero me de una elección entre los meses del año, y que dos hilandero me den una elección del día y otro día más. Al darme clic, mostraré una confirmación, y desde mi aplicación Android quiero recibir una notificación con los datos. No me importa si se guardan los datos en un txt en el servidor y se sobreescribe cada que se use (digo por la pregunta de las bases de datos). Creo que para ello tiende a usar un get (o sea, php en el servidor).

Que me recomiendan?

Gracias a todos!
 

josejad

Expert
Licensed User
Longtime User
Hola Jannete:

No he usado nunca ni BANANO ni ABMATERIAL (algún día...) pero se me antojan complejos y quizás se queden grande para algo así.
Creo que, aunque suene sencillo lo que quieres hacer, no veo una forma fácil de hacerla.

La forma más sencilla que se me ocurre es que pruebes los formulario de Google, con los que puedes crear lo que quieras, y que las respuesta se guarden en una hoja de cálculo de Google Sheets, y puedes recibir notificaciones cuando alguien añada algo... hay algunas utilidades, aunque no sé ahora alguna ahora mismo que pudiera enviar una notificación push a tu app.

Haz alguna prueba y vamos viendo

1594575078877.png
 

Jannete

Member
Hola Jannete:

No he usado nunca ni BANANO ni ABMATERIAL (algún día...) pero se me antojan complejos y quizás se queden grande para algo así.
Creo que, aunque suene sencillo lo que quieres hacer, no veo una forma fácil de hacerla.

La forma más sencilla que se me ocurre es que pruebes los formulario de Google, con los que puedes crear lo que quieras, y que las respuesta se guarden en una hoja de cálculo de Google Sheets, y puedes recibir notificaciones cuando alguien añada algo... hay algunas utilidades, aunque no sé ahora alguna ahora mismo que pudiera enviar una notificación push a tu app.

Haz alguna prueba y vamos viendo

View attachment 97025

Antes que nada, muchas gracias por la respuesta. La verdad no soy muy aficionada a los productos de Google (Android porque me agrada como sistema, aunque me gustaria que fuera puro sin que google tenga algo que ver alli)... al final me puse a estudiar a mas no poder (casi), e hice uso de php y mysql, con un get en android.

Aun asi sigo con la idea de diseñar paginas con ABMaterial o Banano, pero no se por cual decantarme. Baje ABMaterial y compile el ejemplo, solo lo ejecute a modo local, aun no me entero como subirlo a una web (y aun no tengo nada que subir).

Mi duda mas grande es cual de los dos tiene mayor compatibilidad en los dispositivos, es decir, que sirva en cualquier PC (aunque no instale el usuario Java) y que sirva en el telefono.

Nuevamente gracias.
 

josejad

Expert
Licensed User
Longtime User
Hola Jannete:

Es genial que te hayas puesto a estudiar con php y mysql. Hay algunas herramientas gratuitas para generar un formulario que guarde los datos en mysql:

aun no me entero como subirlo a una web (y aun no tengo nada que subir).
Si ya has trabajado con php+mysql, habrás visto que tienes que subir los ficheros php a un servidor (a través de FTP normalmente) y conectarte al servidor mysql (que suele ser el mismo servidor). Hay mucho hosting que ofrecen alojamiento php+mysql incluso gratuitos.
Pero para una web hecha abmaterial, esto no funciona así. Son archivos java que tiene que ejecutar un servidor. Por tanto, para ello no vale un hosting php+mysql, sino que tienes que contratar un VPS (un servidor privado virtual), que es como si tuvieras un servidor en casa desde el que ejecutas lo que tú quieras, pero en internet. Esto ya es más difícil encontrarlos gratuitos, aunque para algo con poca carga (que se conecten pocos usuarios), puedes tener un pc en casa (siempre encendido) que haga como servidor, y al que se pudiera acceder desde internet (redirigiendo algunos puertos de tu router).
EDITO: Tras el post aclaratorio de alwaysbusy, corrijo que para BANANO no es necesario un VPS, ver el post #5

Puedes echar un ojo a este tutorial en el que Eres explica cómo ejecutar un servidor para una webapp (que crees tú, o bien banano o abmaterial). Especialmente, esta parte:

How to deploy?
The compiled jar file is a standard Java app. The web server is embedded in this jar.
Any computer with Java 8+ installed can run it (including boards such as Raspberry Pi).
Shared hosting solutions will not work as they don't support Java. VPS solutions will work.
You can also turn a local computer into a public web server with a dynamic dns service:
http://www.b4x.com/android/fo...r-b4j-server-over-the-internet.37201/#content
Tip: if you are running it in linux then you should use the nohup command.

Y en este otro tutorial verías cómo ejecutar abmaterial o cualquier otro servidor java (jRDC2, webapp, ...) en un VPS

Mi duda mas grande es cual de los dos tiene mayor compatibilidad en los dispositivos, es decir, que sirva en cualquier PC (aunque no instale el usuario Java) y que sirva en el telefono.
Aquí ya sé algo menos, pero te diría que los dos son compatibles en cualquier navegador tanto en PC como en un teléfono.
Creo que había un post por ahí de su creador (alwaysbusy) explicando en qué casos era más apropiado uno u otro, pero no consigo encontrarlo ahora mismo.

saludos,
 
Last edited:

alwaysbusy

Expert
Licensed User
Longtime User
I apologize for answering in English as I don't speak Spanish. I used Google to translate your Spanish posts, so I may have missed some nuances.

The big difference between ABM and BANano is that ABM does indeed need a VPS (after all, it is only the UI part and for the rest a normal B4J jServer WebApp). That is not the case for BANano. The end result of a BANano Webapp is pure HTML, JavaScript and CSS (and PHP if you added inline PHP). After running a BANano WebApp in release mode, you do not need the .jar file and no Java is ever needed anymore. All BANano does is 'transpile' B4J source code to HTML/JS/CSS.

So you can just upload de HTML/JS/CSS files BANano generated with an FTP program to any webhost. It does not need to be a VPS. Any webserver will do.

Of course you can still connect a BANano WebApp with a B4J jServer (e.g. with the BANanoServer library) or just with any other server language like PHP. The choice is yours.

Alwaysbusy
 

Jannete

Member
Hola Jannete:

Es genial que te hayas puesto a estudiar con php y mysql. Hay algunas herramientas gratuitas para generar un formulario que guarde los datos en mysql:


Si ya has trabajado con php+mysql, habrás visto que tienes que subir los ficheros php a un servidor (a través de FTP normalmente) y conectarte al servidor mysql (que suele ser el mismo servidor). Hay mucho hosting que ofrecen alojamiento php+mysql incluso gratuitos.
Pero para una web hecha abmaterial, esto no funciona así. Son archivos java que tiene que ejecutar un servidor. Por tanto, para ello no vale un hosting php+mysql, sino que tienes que contratar un VPS (un servidor privado virtual), que es como si tuvieras un servidor en casa desde el que ejecutas lo que tú quieras, pero en internet. Esto ya es más difícil encontrarlos gratuitos, aunque para algo con poca carga (que se conecten pocos usuarios), puedes tener un pc en casa (siempre encendido) que haga como servidor, y al que se pudiera acceder desde internet (redirigiendo algunos puertos de tu router).
EDITO: Tras el post aclaratorio de alwaysbusy, corrijo que para BANANO no es necesario un VPS, ver el post #5

Puedes echar un ojo a este tutorial en el que Eres explica cómo ejecutar un servidor para una webapp (que crees tú, o bien banano o abmaterial). Especialmente, esta parte:

How to deploy?
The compiled jar file is a standard Java app. The web server is embedded in this jar.
Any computer with Java 8+ installed can run it (including boards such as Raspberry Pi).
Shared hosting solutions will not work as they don't support Java. VPS solutions will work.
You can also turn a local computer into a public web server with a dynamic dns service:
http://www.b4x.com/android/fo...r-b4j-server-over-the-internet.37201/#content
Tip: if you are running it in linux then you should use the nohup command.

Y en este otro tutorial verías cómo ejecutar abmaterial o cualquier otro servidor java (jRDC2, webapp, ...) en un VPS


Aquí ya sé algo menos, pero te diría que los dos son compatibles en cualquier navegador tanto en PC como en un teléfono.
Creo que había un post por ahí de su creador (alwaysbusy) explicando en qué casos era más apropiado uno u otro, pero no consigo encontrarlo ahora mismo.

saludos,

Muchas gracias como siempre José, me parece muy util la informacion sobre el form generator, aunque ya empiezo a entender los forms y MySql es similar a Sql, Php es el que me sigue dando batalla, y de CSS o Javascript ni hablamos.

El problema viene cuando se quieren hacer paginas Web que se ajusten a todas las pantallas (CSS forzosamente).

Gracias por aclarar sobre Banano y ABMaterial. Un VPS ni pensar en ello, asi que creo me quedare con Banano (aunque creo que hay que tener conocimientos de CSS y Javascript).

Muchas gracias como siempre José. Saludos!
 

Jannete

Member
I apologize for answering in English as I don't speak Spanish. I used Google to translate your Spanish posts, so I may have missed some nuances.

The big difference between ABM and BANano is that ABM does indeed need a VPS (after all, it is only the UI part and for the rest a normal B4J jServer WebApp). That is not the case for BANano. The end result of a BANano Webapp is pure HTML, JavaScript and CSS (and PHP if you added inline PHP). After running a BANano WebApp in release mode, you do not need the .jar file and no Java is ever needed anymore. All BANano does is 'transpile' B4J source code to HTML/JS/CSS.

So you can just upload de HTML/JS/CSS files BANano generated with an FTP program to any webhost. It does not need to be a VPS. Any webserver will do.

Of course you can still connect a BANano WebApp with a B4J jServer (e.g. with the BANanoServer library) or just with any other server language like PHP. The choice is yours.

Alwaysbusy

Thank you so much for your answer.

I will try to learn to use Banano, although I know almost nothing of Css and Javascript. The code part I see is somewhat complicated (according to I read, you have to make the template to be able to create the page).

Thanks for the clarification about ABMaterial and Banano, and above all, thanks for sharing this wonderful tool.

Greetings!
 
Top