Italian B4J database remoto

giannimaione

Well-Known Member
Licensed User
Longtime User
ho realizzato una app con B4J e utilizzo un database SQLITE locale. e fin qui tutto bene.

ora ho la necessità di utilizzare questa app su pc (windows) dislocati in due sedi diverse.
esempio: PC1 sede Napoli, PC2 sede Roma.
Consideriamo che ho possibilità di configurare router, pc, firewall, adsl, utenti, porte, perrmessi, ed altro.
Vorrei utilizzare solo PC di tipo windows di nostra proprietà... quindi niente provider esterni (ISP).
Di cosa ho bisogno? quale DB utilizzare ? che tipo di configurazione e/o servizi attivare
posso anche partire con un DB vuoto, ma non vorrei modificare "troppo" il programma esistente.
 

LucaMs

Expert
Licensed User
Longtime User
quindi niente provider esterni (ISP).
ISP suppongo che sia necessario: Internet Service Provider, non dirmi che non vuoi usare Internet?

Non è semplicissimo, si possono usare diverse soluzioni.

1) creare un web server sempre in B4J (un'applicazione a sé, oltre quella che hai già sviluppato e che andrebbe modificata affinché faccia da client, cioè lavori non su un db locale ma su quello gestito dal web server);

2) usare JRDC2
 

udg

Expert
Licensed User
Longtime User
Una possibilità potrebbe essere quella di impiantare una VPN tra le due sedi e poi decidere se avere un MySQL server su uno dei PC a servizio del'intero "gruppo" oppure, come diceva LucaMs, utilizzare B4J che faccia da "server" verso lo stesso DB SQLite che hai già. In pratica i client parlano con B4J e questi è l'unico che accede al DB. Dipende molto dal traffco prevedibile e dal numero di accessi simultanei.
 
Last edited:

giannimaione

Well-Known Member
Licensed User
Longtime User
primo test OK!!! :)
scenario:
rete locale con due pc win con la stessa APP B4J;
sul primo pc eseguo mysql server utilizzando "UNISERVER ZERO" che non richiede installazione ... vedi http://www.uniformserver.com/ZeroXI_documentation/

poi un po di configurazione mysql ... permessi... creazione del DB .... ed altro.

nel progetto B4J solo poche modifiche:
#AdditionalJar: mysql-connector-java-5.1.39-bin.jar
...
..
..
sql.Initialize2("com.mysql.jdbc.Driver", "jdbc:mysql://192.168.1.5/nome_DB_mysql","utente","password")
..
..
..
''' 192.168.1.5 è l'IP del pc dove "gira" il server mysql
il resto "sembra" funzionare bene!

la prossima verifica è quella in remoto....
 

LucaMs

Expert
Licensed User
Longtime User
Beh, tu avevi detto che usavi Sqlite, altrimenti i suggerimenti sarebbero stati diversi.

Quel "UNISERVER ZERO" a quanto pare non è altro che un pacchetto simile ai più famosi XAMPP e WAMPP che avremmo potuto suggerirti, ma temevamo di complicarti la vita :)
 

giannimaione

Well-Known Member
Licensed User
Longtime User
intanto grazie per le vostre risposte.
con i vostri suggerimenti e qualche approfondimento sul forum ho potuto fare le prime verifiche.
Sqlite, mySql, o altro... non importa... avevo solo esposto la necessità di non stravolgere il progetto B4J.
 

FabioRome

Member
Licensed User
Longtime User
se usi mySQL crea le tabelle InnoDB almeno puoi usare le funzioni transazionali tra cui il rollback, con le tabelle myIsam non puoi usarle.
 
Top