In my case, I wrote my own multiuser access layer on top of SQLite and it works very well. I don't rely in any type of file access control because, as the SQLite documentation says, it could be not reliable.
But if you can make an application that works in only one place within one machine, SQLite is extremely more powerful than MS Access, and uses almost no resources. Also, if you need to backup the data or to send the data to another place, you only need to copy the data file.
There is a Firefox add-on for basic database management, and that's all, you need no other thing to work more than the way to present the data to your users.
One comment here.
When we have only hammers to work, we see every problem as a nail.
Depending on how you model your solution, SQLite is just enough as any other database system also, even XML or plain text files.
Other people recommended HSQLDB (Libre/Open Office); as I remember, the database works in memory and have a backup in disk with a statement based storage. When you start your application, this database runs ALL the statements and refill the memory structures. I am not sure if this works for you. In the case of SQLite, it is a standard database system and the database file is analogous to an Oracle datafile or MySQL data structure.