Eu posso reproduzir seu problema completamente. Não uso o console Wildfly há algum tempo, mas isso me parece um bug. No entanto, existe outra maneira que tem a vantagem de ser facilmente repetível e programável.
Se você executar a jboss-cli
partir do diretório bin Wildfly, poderá adicionar um driver JDBC e uma fonte de dados JEE com um script. Meu script se parece com:
embed-server --server-config=standalone.xml --std-out=echo
batch
module add --name=org.postgres --resources=${user.home}/Downloads/postgresql-42.2.8.jar --dependencies=javax.api,javax.transaction.api
/subsystem=datasources/jdbc-driver=postgres:add(driver-name="postgres",driver-module-name="org.postgres",driver-class-name=org.postgresql.Driver)
/subsystem=datasources/data-source=myDS/:add(connection-url=jdbc:postgresql://localhost:5432/dbname,driver-name=postgres,jndi-name=java:/jdbc/myDS,background-validation=true,background-validation-millis=60000,blocking-timeout-wait-millis=2000,flush-strategy=Gracefully,idle-timeout-minutes=5,initial-pool-size=4,max-pool-size=64,min-pool-size=4,password=the-password,query-timeout=10,track-statements=true,tracking=true,user-name=the-user,validate-on-match=false)
run-batch
Este script deve ser executado sem o servidor em execução. Se você gostaria de executá-lo enquanto o servidor estiver em execução, em seguida, remover os embed-server
, batch
e run-batch
linhas. Basicamente, isso começa com a criação de um módulo que, neste caso, é um driver do PostgreSQL. Em seguida, ele adiciona um driver JDBC e, finalmente, um DataSource. Pode ser executado com:
jboss-cli.sh --file=the-file-name.cli
supondo que você salvou o item acima em um arquivo chamado the-file-name.cli
. Novamente, o bin
diretório do Wildfly precisa estar no seu caminho para executá-lo na linha de comando.