TESTED AGAINST GLASSFISH 2.1.1, JDK 1.6.0_17. Based on Spring WorkManagerTaskExecutors (http://static.springsource.org/spring/docs/2.5.x/api/org/springframework/jca/work/WorkManagerTaskExecutor.html) Allows using container-managed thread pools (through JCA WorkManager) for Akka Dispathers. The following containers are supported: - GlassFish (use thread-pool/work manager obtained by name or default thread-pool) - JBoss (use WorkManager MBean obtainer by bean name or default work manager) - WebSphere 6.0+, WebLogic 9.0+(use work manager obtained by JNDI name, or default work manager) GlassFish example: val dispatcher = new ExecutorBasedEventDrivenDispatcher("name") with ContainerManagedThreadPoolBuilder dispatcher .withGlassFishManagedDefaultThreadPool // if you want to use default WorkManager .buildThreadPool or dispatcher .withGlassFishManagedThreadPool("actor-thread-pool")// if you want to use named thread pool .buildThreadPool ===Download, test and build=== 1. git clone git://github.com/remeniuk/akka-cm-dispatcher.git 2. cd akka-cm-dispatcher 3. sbt 4. sbt> update 5. sbt> test ===Run example=== 1. sbt> project glassfish-managed-dispatchers-example 2. sbt> package 3. Deploy glassfish-managed-dispatchers-example\target\scala_2.8.0\glassfish-managed-dispatchers-example_2.8.0-1.0.war to Glassfish 4. Create named thread pool 5. Find list of supported dispatchers at http://localhost:8080/glassfish-managed-dispatchers-example_2.8.0-1.0/examples/dispatcherTypes 6. Run test at http://localhost:8080/glassfish-managed-dispatchers-example_2.8.0-1.0/examples/glassfish/<dispatcher type>/<thread pool name / default for default Glassfish WorkManager>