Note that something.firstapp.com, something.secondapp.com and something.thirdapp.com require three domains. Perhaps you can better switch it around: firstapp.something.com, secondapp.something.com and thirdapp.something.com. You only need to register something.com and turn the others into sub domains.
After that perhaps Apache's HTTPD server with mod_proxy or URL rewriting can help you out. I don't know the exact details, but you can find more information on Tomcat's website. In short, you put an Apache HTTPD server on port 80 in front of Tomcat. The requests go to this HTTPD server which forwards the requests (completely transparently) to Tomcat, which handles them and sends the responses through HTTPD back to the user.
the easy way to do this locally is to map the domains to the loopback IP in your hosts file
Then all requests to yourapp.something.com will result in the request being sent to your local machine.
Next step is to configure the Tomcat container so that requests to the yourapp.something.com host get sent to the correct web app, which you do by adding a virtual host to tomcat
Yes, Rob's is the better solution for live systems. My answer above is what I do when i want to simulate multiple domains locally