Chce tworzyć aplikację Spring+Hibernate+JSF/GWT

Jak wygląda przenośność między komputerami, chce aby zawsze działała lokalnie, chodzi na tomcatie, czyli chyba nie większych problemów.
Na Windowsie przegrywam cały katalog z Tomcatem i powinno działać, jeśli chodzi o Linuxa to plik .web wgrywam na tomcata linuxowego i też powinno działać?

  1. Mam rację, czy tutaj wynikną spore problemy?

  2. Aby działało również z BD, to może jakaś w pełni przenośna, powinna oferować także przenośność(Derby, HSQL), czy jakaś inna?

Jakie są wasze opinie?

A może są jakieś darmowe serwery, na których można sobie robić takie rzeczy?(szczególnie interesuje mnie Spring i Hibernate)