Utilizando a annotation @DataSourceDefinition - Java EE 6

A annotation @DataSouceDefinition do JavaEE 6 permite que se especifique a conexão com o datasource dentro do seu código Java utilizando anotações. Devemos somente utilizá-la para aplicações de demonstração, testes ou em etapa de desenvolvimento, já que não é muito bom termos os dados de conexão internos na aplicação e nem os drivers de banco de dados.

No JBoss 7.1 você precisa importar no classpath da sua aplicação a lib localizada dentro do diretório: modules/javax/annotations/api/main. É necessário também que a lib JDBC do banco que você deseja conectar esteja junto com a aplicação.

Classe

08:41:32,566 WARN [org.jboss.as.ee] (MSC service thread 1-5) JBAS011007: Ignoring property databaseName due to missing setter method: setDatabaseName(java.lang.String) on datasource class: com.mysql.jdbc.Driver
08:41:32,568 WARN [org.jboss.as.ee] (MSC service thread 1-5) JBAS011007: Ignoring property serverName due to missing setter method: setServerName(java.lang.String) on datasource class: com.mysql.jdbc.Driver
08:41:32,569 WARN [org.jboss.as.ee] (MSC service thread 1-5) JBAS011007: Ignoring property portNumber due to missing setter method: setPortNumber(java.lang.Integer) on datasource class: com.mysql.jdbc.Driver
08:41:32,571 WARN [org.jboss.as.ee] (MSC service thread 1-5) JBAS011007: Ignoring property transactional due to missing setter method: setTransactional(java.lang.Boolean) on datasource class: com.mysql.jdbc.Driver
08:41:32,572 WARN [org.jboss.as.ee] (MSC service thread 1-5) JBAS011007: Ignoring property user due to missing setter method: setUser(java.lang.String) on datasource class: com.mysql.jdbc.Driver
08:41:32,573 WARN [org.jboss.as.ee] (MSC service thread 1-5) JBAS011007: Ignoring property password due to missing setter method: setPassword(java.lang.String) on datasource class: com.mysql.jdbc.Driver

@DataSourceDefinition(name="java:global/Eleitos2012/Eleicoes2012",
className="com.mysql.jdbc.jdbc2.optional.MysqlDataSource",
portNumber=3306,
databaseName="eleicoes",
serverName="localhost",
user="eleicoes",
password="123456"
)

Sobre: Thiago Galbiatti Vespa

Thiago Galbiatti Vespa é mestre em Ciências da Computação e Matemática Computacional pela USP e bacharel em Ciências da Computação pela UNESP. Coordenador de projetos do JavaNoroeste, membro do JCP (Java Community Process), consultor Oracle, arquiteto de software de empresas de médio e grande porte, palestrante de vários eventos e colaborador de projetos open source. Possui as certificações: Oracle Certified Master, Java EE 5 Enterprise Architect – Step 1, 2 and 3; Oracle WebCenter Portal 11g Certified Implementation Specialist; Oracle Service Oriented Architecture Infrastructure Implementation Certified Expert; Oracle Certified Professional, Java EE 5 Web Services Developer; Oracle Certified Expert, NetBeans Integrated Development Environment 6.1 Programmer; Oracle Certified Professional, Java Programmer; Oracle Certified Associate, Java SE 5/SE 6