Aqui está como eu declaro uma fonte de dados Oracle (para chamar pl ou executar xqueries)
Injetando a fonte de dados (em um ejb sem estado)
@Resource(name = "java:jboss/datasources/xmlDatasource")
private DataSource productDS;
Declarando a fonte de dados em standalone.xml
<datasource jndi-name="java:jboss/datasources/xmlDatasource" pool-name="xxx" enabled="true" use-java-context="true">
<connection-url>jdbc:oracle:thin:@xxx:1521:xxx</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<driver>oracle</driver>
<pool>
<min-pool-size>0</min-pool-size>
<max-pool-size>10</max-pool-size>
</pool>
<security>
<user-name>xxx</user-name>
<password>xxx</password>
</security>
</datasource>
<drivers>
<driver name="oracle" module="oracle.jdbc">
<xa-datasource-class>oracle.jdbc.OracleDriver</xa-datasource-class>
</driver>
</drivers>
Definição do módulo
<module xmlns="urn:jboss:module:1.1" name="oracle.jdbc">
<resources>
<resource-root path="ojdbc6.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
</dependencies>
</module>
Adicione a dependência do módulo ao meu aplicativo ear (que tem o ejb sem estado dentro ..) usando maven (ou edite seu manifest.mf e adicione o nome do módulo)
<archive>
<manifestEntries>
<Dependencies>oracle.jdbc</Dependencies>
</manifestEntries>
</archive>