I just realized that JBoss runs Tomcat / Jetty in the same JVM, doesn't separate the web container from the EJB container in any way, and doesn't actually care if I let the web container side use local EJBs directly. What a time saver! I can break every J2EE rule in the book and deliver working code 10 times faster without jumping through all the layers and patterns that a real app server would make be go through! Cool! You guys rock the house!