Hi,
More details would be needed about your exact application / problem domain, but I've
done exactly what you're describing, and here's one combination of pieces you can put
together to do it: (In other words, there's MANY ways to make a multi application -
here's one way I've seen it work.)
BACKEND: MS Access. Easy to modify and manage, like you've probably found. You'll run
into problems using it as an "enterprise" database, but the n-tier architecture will
let you swap it out when the time comes.
MIDDLETIER: A Java application that makes its services available via RMI or CORBA (or
Voyager, or HORB...) . It runs on Linux, and connects to MS Access on the Windows box
with the "RmiJdbc" driver:
http://dyade.inrialpes.fr/mediation/download/RmiJdbc/RmiJdbc.html
...So, it'll actually be making RMI connections in two directions: to the backend
database, and then also to the clients. This middletier has the responsibility of
hiding your relational database schema from clients. It also contains "Business Logic"
that would be common to all UI's.You make Objects accessible that support your
application's "use cases". For example, you might have a "UserManager" object that
returns a User object given an id. It has a nice OO interface, while internally using
JDBC to the database:
public User getUser(int id) {
....
query.execute("SELECT from Users WHERE id="+id+");
....
}
CLIENT: With the n-tier architecture you can now support two types of clients - First,
you can write applets that connect directly to the middle tier via the network
protocol. For users who don't/can't use a Java 1.1 browser, you can make a second set
of clients with servlets. These servlets are clients of the middletier, but present
all of the UI in HTML, which gets sent to the user.
---------
Problems with this:
MS Access: It's not really meant to be a server. It doesn't support transactions.
RmiJdbc: It's about 10% as fast as a JDBC driver for a real database.
But, this isn't a big deal. You can write the program now as a proof of concept. And
then, when it gets bigger, you can use a different database, and then the best JDBC
driver for it.
- Robb
----------------------------------------------------------------------
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]