HTTP 1.1 will re-use a single TCP connection to receive multiple files one after another - but that is still slow since the server has to finish sending one file before getting told what the next file is, and then going and loading that file from storage into memory and prepping it for sending. It would be quicker if you could say 'send me the following 20 files' at the start, and then the server could keep busy by loading the next file while the first one is being sent.
The current generation of drones would be mostly ineffective in a battle against an enemy with an air force of their own. Even a 3rd generation fighter aircraft could take out modern drones without trying very hard, and I believe they can't presently arm drones such as the MQ-9 Reaper with air to air missiles (although they are working on that).
One downside of Java EE is the standard web framework - JSF. Whilst it has its uses for the most part there are simpler options for a "typical" architecture - JSON over REST being presented via JQuery. Spring MVC is a good choice, as is Struts 2.
A restful back end driven by an html/js/ajax client is my favorite architecture as well, however if you want to do a server-generated dhtml style application, I would suggest you have a look at Stripes - It's everything that Struts should be (and isn't).