Hi, currently I have 1 webapp and 1 webservice running on my server box; and planning to develop few more webapps and couple more webservices on that box (could place them on diff boxes, but let's keep things simple by putting everything in the same box for now)

those new webapps and webservices will access the same database, some of the Business Domain Logics may be shared across diff apps as well.

I wonder what are some of the architectural choices (options) in order to prepare for the upcoming new developments? Would implementing app server with ejb be the solution? what about the use of Spring? What else out there?

the design of the current webapp and webservice separate presentation layer, bussiness logic layer, and data access layer quite well, so moving some of the layer to other architectural choice shouldn't be that much of work.

thank you