Form Builder to use for creating WebApp/Websocket

Magma

Expert
Licensed User
Longtime User
Well...

Lately i was thinking to move to a different approach - how to creating apps + thinking a lot a multi-platform that will no need nothing more than login through a web-page (know that will limit me on some things - but for business like ERP systems will be ok)...
so... i am looking for fast creating forms and views...

Is there a Jquery/Ajax Form Builder running offline that will help me - anyone use anything like that ?
Is there any html table creator-viewer builder (that seems difficult to exist) ?
Is there any grid editor + script for table editing ?

Or you think is better to create them all from scratch ?

from scratch: will give me the power to control everything.... but will lose time...
 

hatzisn

Expert
Licensed User
Longtime User
Check Mobirise for creating web sites with drag and drop.
 

hatzisn

Expert
Licensed User
Longtime User

hatzisn

Expert
Licensed User
Longtime User
I use Mobirise for the heavy load and insert my code and change slightly the Html for the fine tuning. I do not know if character limiting can be done through mobirise. I have never needed this.
 

Magma

Expert
Licensed User
Longtime User
@hatzisn i see :) + i was looking for utility/tool more like specifically jquery form builder... for business like apps + not for a general web designer...

something like Erel's formbuilder but for web-apps... :)

I want to Rapid my job... ofcourse i will check the app you suggest shortly ;-) thanks again...
 

alwaysbusy

Expert
Licensed User
Longtime User
I don't know if you have seen my BANano Library (search for BANano in the B4J forum too). It can use the B4J Abstract Designer to build your forms.
BANano transpiles the B4J code to html/css/javascript.

It uses some kind of 'Hot Code Swapping', so you can make changes in the Abstract Designer at run-time (in debug mode) and you see the changes directly in the browser:

BANano:
Alwaysbusy
 
Last edited:

Magma

Expert
Licensed User
Longtime User

alwaysbusy

Expert
Licensed User
Longtime User

Magma

Expert
Licensed User
Longtime User
@alwaysbusy
First downloaded this - and copy all libs to my Libraries of B4J...
Well for server i downloaded that... and run it...
get blank page after creating server.ini with all settings saying.... 127.0.0.1:55056/about returns blank page... and at the debug caching 0 pages - is it right ?

any tutorial (for server<-->client) to start with ?
 
Last edited:

alwaysbusy

Expert
Licensed User
Longtime User
hmm, just did that and I got this:

1621246206691.png


You did also copy the BANanoSkeleton.b4xlib to your Additional Libraries folder? Also, open up the browser console and see if it shows errors.

Alwaysbusy
 

Magma

Expert
Licensed User
Longtime User
Port: 55056
Reading B4J INI in C:\Users\user\AppData\Roaming\Anywhere Software\B4J to find Additional Libraries folder...
Found Additional Libraries folder:
Starting to transpile...
Could not find the Additional Libraries folder! You will have to use Initialize2 and set the full path to the Additional Libraries folder yourself.
Loading layout template...
Loading layout uploadform...
The BANano B4JAdditionalLibrariesPath is not set!
Adding Layout uploadform used by browserabout
[WARNING]: The method RunFunctionWithResult will not work in old browsers!
[WARNING]: The method RunFunctionWithResult will not work in old browsers!
[ERROR 22]: [BROWSERAbout,skbutton1_click, around line: 0] sktextbox(GLOBALMYCLASSVAR) is not supported in BANano!
-->
--> Current index: 1
--> Var : B4JName: sktextbox1, EventName: sktextbox1, JSName: _sktextbox1 ,ISPRIVATE: true,B4JTYPE: sktextbox, IsArray: false, InitValue: /* sktextbox NOT SUPPORTED */
[ERROR 22]: [BROWSERAbout,skbutton1_click, around line: 0] sktextbox(GLOBALMYCLASSVAR) is not supported in BANano!
-->
--> Current index: 1
--> Var : B4JName: sktextbox1, EventName: sktextbox1, JSName: _sktextbox1 ,ISPRIVATE: true,B4JTYPE: sktextbox, IsArray: false, InitValue: /* sktextbox NOT SUPPORTED */
[ERROR 06]: [BROWSERAbout,skbutton1_click, around line: 0] BANano does not support file.
-->
--> Current next: file --> Current index: 3
--> Current Translation: .
--> Method : ---- METHOD: skbutton1_click (MODULE: BROWSERAbout, ISPRIVATE: false) ----
B4J DECLARE:
LINE NUMBER: 88
ORIGINAL LINE: Sub SKButton1_Click (event As BANanoEvent)
CLEANED LINE: sub skbutton1_click (event as bananoevent)
WORDS: sub|skbutton1_click|(|event|as|bananoevent|)|
INTERNAL VARS:
B4JName: event, EventName: , JSName: __12 ,ISPRIVATE: true,B4JTYPE: bananoevent, IsArray: false, InitValue: null
B4JName: response, EventName: , JSName: __16 ,ISPRIVATE: true,B4JTYPE: bananoobject, IsArray: false, InitValue: null
B4JName: thefile, EventName: , JSName: __17 ,ISPRIVATE: true,B4JTYPE: bananoobject, IsArray: false, InitValue:
RETURNS: B4JTYPE: string, IsArray: false, InitValue: ""
------------------------------
--> Method : ---- METHOD: skbutton1_click (MODULE: BROWSERAbout, ISPRIVATE: false) ----
B4J DECLARE:
LINE NUMBER: 88
ORIGINAL LINE: Sub SKButton1_Click (event As BANanoEvent)
CLEANED LINE: sub skbutton1_click (event as bananoevent)
WORDS: sub|skbutton1_click|(|event|as|bananoevent|)|
INTERNAL VARS:
B4JName: event, EventName: , JSName: __12 ,ISPRIVATE: true,B4JTYPE: bananoevent, IsArray: false, InitValue: null
B4JName: response, EventName: , JSName: __16 ,ISPRIVATE: true,B4JTYPE: bananoobject, IsArray: false, InitValue: null
B4JName: thefile, EventName: , JSName: __17 ,ISPRIVATE: true,B4JTYPE: bananoobject, IsArray: false, InitValue: .
RETURNS: B4JTYPE: string, IsArray: false, InitValue: ""
------------------------------
--> Method : ---- METHOD: skbutton1_click (MODULE: BROWSERAbout, ISPRIVATE: false) ----
B4J DECLARE:
LINE NUMBER: 88
ORIGINAL LINE: Sub SKButton1_Click (event As BANanoEvent)
CLEANED LINE: sub skbutton1_click (event as bananoevent)
WORDS: sub|skbutton1_click|(|event|as|bananoevent|)|
INTERNAL VARS:
B4JName: event, EventName: , JSName: __12 ,ISPRIVATE: true,B4JTYPE: bananoevent, IsArray: false, InitValue: null
B4JName: response, EventName: , JSName: __16 ,ISPRIVATE: true,B4JTYPE: bananoobject, IsArray: false, InitValue: null
B4JName: thefile, EventName: , JSName: __17 ,ISPRIVATE: true,B4JTYPE: bananoobject, IsArray: false, InitValue: _B.%sktextbox1%
RETURNS: B4JTYPE: string, IsArray: false, InitValue: ""
------------------------------
[ERROR 22]: [BROWSERAbout,skbutton1_click, around line: 104] sklabel(GLOBALMYCLASSVAR) is not supported in BANano!
--> SKLabel1.Text = {28} & Response.GetField( {29} ).Result
--> Current index: 1
--> Var : B4JName: sklabel1, EventName: sklabel1, JSName: _sklabel1 ,ISPRIVATE: true,B4JTYPE: sklabel, IsArray: false, InitValue: /* sklabel NOT SUPPORTED */
--> Method : ---- METHOD: skbutton1_click (MODULE: BROWSERAbout, ISPRIVATE: false) ----
B4J DECLARE:
LINE NUMBER: 88
ORIGINAL LINE: Sub SKButton1_Click (event As BANanoEvent)
CLEANED LINE: sub skbutton1_click (event as bananoevent)
WORDS: sub|skbutton1_click|(|event|as|bananoevent|)|
INTERNAL VARS:
B4JName: event, EventName: , JSName: __12 ,ISPRIVATE: true,B4JTYPE: bananoevent, IsArray: false, InitValue: null
B4JName: response, EventName: , JSName: __16 ,ISPRIVATE: true,B4JTYPE: bananoobject, IsArray: false, InitValue: null
B4JName: thefile, EventName: , JSName: __17 ,ISPRIVATE: true,B4JTYPE: bananoobject, IsArray: false, InitValue:
B4JName: prom, EventName: , JSName: __9 ,ISPRIVATE: true,B4JTYPE: bananopromise, IsArray: false, InitValue: BANUpload('/upload',__17)
RETURNS: B4JTYPE: string, IsArray: false, InitValue: ""
------------------------------
Building D:\user\DOWNLO~1\B4JSER~1\Demo\Objects\www\scripts\browserabout.js
Copying CSS files to WebApp assets...
Copying Javascript files to WebApp assets...
EnableLiveCodeSwapping ignored. Only applicable for Build in Debug mode.
Done!
2021-05-17 13:12:41.908:INFO::main: Logging initialized @514ms to org.eclipse.jetty.util.log.StdErrLog
2021-05-17 13:12:42.051:INFO:eek:ejs.Server:main: jetty-9.4.z-SNAPSHOT; built: 2018-05-03T15:56:21.710Z; git: daa59876e6f384329b122929e70a80934569428c; jvm 11.0.1+13
2021-05-17 13:12:42.088:INFO:eek:ejs.session:main: DefaultSessionIdManager workerName=node0
2021-05-17 13:12:42.088:INFO:eek:ejs.session:main: No SessionScavenger set, using defaults
2021-05-17 13:12:42.090:INFO:eek:ejs.session:main: node0 Scavenging every 600000ms
2021-05-17 13:12:42.110:INFO:eek:ejsh.ContextHandler:main: Started o.e.j.s.ServletContextHandler@2a266d09{/,file:///D:/user/downloads/B4JServerDemo/Demo/Objects/www/,AVAILABLE}
2021-05-17 13:12:42.113:INFO:eek:ejs.AbstractNCSARequestLog:main: Opened D:\user\downloads\B4JServerDemo\Demo\Objects\logs\b4j-2021_05_17.request.log
2021-05-17 13:12:42.276:INFO:eek:ejs.AbstractConnector:main: Started ServerConnector@4ea1a982{HTTP/1.1,[http/1.1]}{0.0.0.0:55056}
2021-05-17 13:12:42.276:INFO:eek:ejs.Server:main: Started @885ms
2021-05-17 13:12:42.284:INFO:eek:ejs.AbstractConnector:main: Stopped ServerConnector@4ea1a982{HTTP/1.1,[http/1.1]}{0.0.0.0:55056}
2021-05-17 13:12:42.285:INFO:eek:ejs.session:main: node0 Stopped scavenging
2021-05-17 13:12:42.286:INFO:eek:ejsh.ContextHandler:main: Stopped o.e.j.s.ServletContextHandler@2a266d09{/,file:///D:/user/downloads/B4JServerDemo/Demo/Objects/www/,UNAVAILABLE}
2021-05-17 13:12:42.289:INFO:eek:ejs.Server:main: jetty-9.4.z-SNAPSHOT; built: 2018-05-03T15:56:21.710Z; git: daa59876e6f384329b122929e70a80934569428c; jvm 11.0.1+13
2021-05-17 13:12:42.295:INFO:eek:ejsh.ContextHandler:main: Started o.e.j.s.ServletContextHandler@2a266d09{/,file:///D:/user/downloads/B4JServerDemo/Demo/Objects/www/,AVAILABLE}
2021-05-17 13:12:42.296:INFO:eek:ejs.AbstractNCSARequestLog:main: Opened D:\user\downloads\B4JServerDemo\Demo\Objects\logs\b4j-2021_05_17.request.log
2021-05-17 13:12:42.296:INFO:eek:ejs.session:main: DefaultSessionIdManager workerName=node0
2021-05-17 13:12:42.296:INFO:eek:ejs.session:main: No SessionScavenger set, using defaults
2021-05-17 13:12:42.296:INFO:eek:ejs.session:main: node0 Scavenging every 660000ms
2021-05-17 13:12:42.299:INFO:eek:ejs.AbstractConnector:main: Started ServerConnector@4ea1a982{HTTP/1.1,[http/1.1]}{0.0.0.0:55056}
2021-05-17 13:12:42.299:INFO:eek:ejs.Server:main: Started @907ms
2021-05-17 13:12:42.300:INFO:eek:ejs.session:main: node0 Scavenging every 33000ms
Scavenger running... (0 page(s) cached)
Scavenger running... (0 page(s) cached)

....hmmm .... already had copied...
 

josejad

Expert
Licensed User
Longtime User
Please, if you've decided to try BANANO and have some issue, start a new thread because "Chit chat" is not indexed in the searches, and it could be a useful resource for those who want to try BANANO for first time.
 

alwaysbusy

Expert
Licensed User
Longtime User
Could not find the Additional Libraries folder! You will have to use Initialize2 and set the full path to the Additional Libraries folder yourself.
Loading layout template...
Loading layout uploadform...
The BANano B4JAdditionalLibrariesPath is not set!

It looks like you have not set your Additional folder path in B4J (or BANano can not find it):

1621246913186.png


If you did, you can try to use the alternative Initialize2:

B4X:
Server.BANano.Initialize2("BANano", "BANanoServer" ,1, "K:/B4J/AddLibraries") ' your path

But honestely, I haven't found a user of BANano who did need to do that.

But as @José J. Aguilar says, probably better start a new topic in the B4J questions forum with the [BANano] prefix in the subject.

Alwaysbusy
 
Last edited:

Magma

Expert
Licensed User
Longtime User
Top