You can have both working. The DefaultDS is really only for JBoss's use. It's where JBoss stores it's data for transactions and such. What I normally do is make sure that mySQL is defined as a type mapping seciton in standardjbosscmp-jdbc.xml. Then drop a MySqlDS.xml into the deploy directory and set the application's jbosscmp-jdbc.xml to use the mysql-ds datasource. You can get jboss to use the MySqlDS as it's default, that is, you can get Jboss to store it's transaction information in this datasource. But to do this you have to remove the hs-ds.xml file.