Дескрипторы JBoss -ds.xml на самом деле покрывают множество грехов. Если вы посмотрите на консоль JBoss JVM, вы найдете 4 или 5 MBean-компонентов для каждого источника данных. Возможно, вы могли бы сделать это программно, но я бы не стал оценивать ваши шансы.
Я бы предложил использовать стороннюю библиотеку пулов соединений (например, Commons DBCP ). Определите пул, используя его, а затем привяжите полученный источник данных к JNDI . Приложение CLient, использующее пул, не должно знать никакой разницы.