Our company is developing a large, database (MySQL) system on top of the Netbeans RCP. This is a Java Swing GUI based application.
We want to take advantage of Rich Client Platform to develop the "Government Platform" and use its module project type to develop the "Government Modules", essentially Java Swing front-end and /MySQL back-end kind of applications/modules.
We'd like to know some in this community who are "experts" and have developed desktop & client-server applications on top of the Netbeans Platform with MySQL Database in the back, deployable in the local area network environment.
Our application has 3 deployment scenarios for our single large (Netbeans Platform and MySQL) database application, as follows;
Desktop deployment option - should be deployable as a desktop application with MySQL server residing on deployment machine, and...
Local Network deployment option - should be deployable as a networked application, where multiple PCs installed with client modules, connecting to a MySQL server residing on one of the machines on the local area network
Online deployment option - here we have the online hosted database, and the desktop and network deployments can synchronize their data/databases with the online MySQL database
The modules in the Application itself include modules to facilitate the above tasks, enable user role management on the application's MySQL database, module management search available modules/add/activate/remove any module ( all possible from the user end)
The modules to add to the application are very many and continuously developed, but the initial modules are simply to automate the module management process from the end-user perspective.
For the online database we have already setup dedicated server with dedicated IP where MySQL server in running. This will enable further developing web applications to analyse data brought in by the applications deployed on remote desktops and local network.
What's the best approach to developing this application?
Lets say I have the MySQL server installed on 192.168.4.100, and the database is here. Netbeans is also installed on this machine. Netbeans is also installed on 192.168.4.101, 192.168.4.102, 192.168.4.103, 192.168.4.104, etc up-to 10 or more development PCs. Each worker is working on a separate application module but the database they are all connecting to is the same (192.168.4.100) even as they develop. Yet the completed system/ converged modules will be deployed in entirely different local network than the development network. For installer building or final executable program we'll give to clients (.exe or .msi), this will be built using Advanced Installer, which has built-in support for Java applications, integrating them fully into the Windows OS.
So that is our scenario guys, thank you for reading this to all the way down here and now your thoughts.