Search code examples
databasecommand-line-interfacewildflydatasource

Wildfly CLI XA-Datasource missing property


I have searched in the official Wildfly 10 documentation and searched the net but strangely I didn't find the solution to my problem. When I run the CLI and try to configure an XA-Datasource I can't configure the property xa-datasource-property.

These are the commands I have tried:

/subsystem=datasources/xa-data-source=TestDataSource/:add(driver-name=XA-Oracle,jndi-name=java:jboss/datasources/testDS,background-validation=false,enlistment-trace=false,flush-strategy=FailingConnectionOnly,max-pool-size=20,min-pool-size=10,no-recovery=false,password=TEST,pool-prefill=true,query-timeout=10,same-rm-override=false,statistics-enabled=true,track-statements=NOWARN,url-property=jdbc:oracle:thin:@TEST:orcl,user-name=USERNAME,validate-on-match=false,enabled=true,allow-multiple-users=false,xa-datasource-properties={"URL"=>{"value"=>"jdbc:oracle:thin"}})
/subsystem=datasources/xa-data-source=TestDataSource/:add(driver-name=XA-Oracle,jndi-name=java:jboss/datasources/testDS,background-validation=false,enlistment-trace=false,flush-strategy=FailingConnectionOnly,max-pool-size=20,min-pool-size=10,no-recovery=false,password=TEST,pool-prefill=true,query-timeout=10,same-rm-override=false,statistics-enabled=true,track-statements=NOWARN,url-property=jdbc:oracle:thin:@TEST:orcl,user-name=USERNAME,validate-on-match=false,enabled=true,allow-multiple-users=false,xa-datasource-properties={"name"=>"URL","value"=>"jdbc:oracle:thin"})
/subsystem=datasources/xa-data-source=TestDataSource/:add(driver-name=XA-Oracle,jndi-name=java:jboss/datasources/testDS,background-validation=false,enlistment-trace=false,flush-strategy=FailingConnectionOnly,max-pool-size=20,min-pool-size=10,no-recovery=false,password=TEST,pool-prefill=true,query-timeout=10,same-rm-override=false,statistics-enabled=true,track-statements=NOWARN,url-property=jdbc:oracle:thin:@TEST:orcl,user-name=USERNAME,validate-on-match=false,enabled=true,allow-multiple-users=false,xa-datasource-property={"name"=>"URL","value"=>"jdbc:oracle:thin"})
/subsystem=datasources/xa-data-source=TestDataSource/:add(driver-name=XA-Oracle,jndi-name=java:jboss/datasources/testDS,background-validation=false,enlistment-trace=false,flush-strategy=FailingConnectionOnly,max-pool-size=20,min-pool-size=10,no-recovery=false,password=TEST,pool-prefill=true,query-timeout=10,same-rm-override=false,statistics-enabled=true,track-statements=NOWARN,url-property=jdbc:oracle:thin:@TEST:orcl,user-name=USERNAME,validate-on-match=false,enabled=true,allow-multiple-users=false,xa-datasource-property={"URL"=>{"value"=>"jdbc:oracle:thin"}})

No matter which type of configuration I try it will tell me the property xa-datasource-properties or xa-datasource-property is unknown. When using TAB to get code completion it will offer my a lot of properties but the required one is not to be found.CLI code completion

Additionally if I leave it out it will say:

{
    "outcome" => "failed",
    "failure-description" => "WFLYJCA0069: At least one xa-datasource-property is required for an xa-datasource",
    "rolled-back" => true
}

What am I missing?


Solution

  • For some weird reason it was only possible using a different syntax which looks like this:

    xa-data-source add --name=Test --allow-multiple-users=false --connectable=true --driver-name=XA-Oracle --enabled=true --interleaving=false --jndi-name=java:jboss/datasources/test --max-pool-size=20 --min-pool-size=10 --no-tx-separate-pool=false --pad-xid=false --password=PASSWORD --pool-prefill=true --use-ccm=true --use-java-context=true --user-name=USERNAME --wrap-xa-resource=true --xa-datasource-properties=URL=jdbc:oracle:thin
    

    I don't understand why the preferred method of cli syntax was not working but using this method it will be configurable.

    If somebody knows a way to make it work in the other syntax I would really appreciate it.