I am working on integrating Widlfly 10 and Apache Phoenix, and while the following seems to work, though it would be great if someone could give me feedback.
I have been using the instructions as outlined here as inspiration: https://docs.jboss.org/author/display/TEIID/Phoenix+Data+Sources Environment: Ambari 2.2.1.0 HDFS 2.7.1.2.4MapReduce2 2.7.1.2.4YARN 2.7.1.2.4 HBase 1.1.2.2.4 Wildfly 10.0.0.Final Configuration: * My Wildfly module.xml ( wildfly-10.0.0.Final/modules/org/apache/phoenix/main/module.xml ) uses the Ambari HDP distribution of the Phoenix client (/usr/hdp/2.3.4.0-3485/phoenix/phoenix-4.4.0.2.3.4.0-3485-client.jar). Wildfly Cli Commands: | module add --name=org.apache.phoenix --resources=/path/to/phoenix-4.4.0.2.4.0.0-169-client.jar --dependencies=javax.api,sun.jdk,org.apache.log4j,javax.transaction.api /subsystem=datasources/jdbc-driver=phoenix:add(driver-name=phoenix,driver-module-name=org.apache.phoenix,driver-class-name=org.apache.phoenix.jdbc.PhoenixDriver) | # Then manually modified "module.xml". See below. /subsystem=datasources/data-source=PhoenixDS:add(jndi-name=java:jboss/datasources/PhoenixDS, driver-name=phoenix, connection-url=jdbc:phoenix:server01:/hbase-unsecure, enabled=true, use-java-context=true) /subsystem=datasources/data-source=PhoenixDS/connection-properties=phoenix.connection.autoCommit:add(value=true) # Then manually modified "standalone-full.xml". See below. wildfly-10.0.0.Final/modules/org/apache/phoenix/main/module.xml--<?xml version="1.0" ?> <module xmlns="urn:jboss:module:1.1" name="org.apache.phoenix"> <resources> <resource-root path="phoenix-4.4.0.2.4.0.0-169-client.jar"> <filter> <exclude-set> <path name="javax" /> <path name="org/xml" /> <path name="org/w3c/dom" /> <path name="org/w3c/sax" /> <path name="javax/xml/parsers" /> <path name="com/sun/org/apache/xerces/internal/jaxp" /> <path name="org/apache/xerces/jaxp" /> <path name="com/sun/jersey/core/impl/provider/xml" /> </exclude-set> </filter> </resource-root> </resources> <dependencies> <module name="javax.api"/> <module name="sun.jdk"/> <module name="org.apache.log4j"/> <module name="javax.transaction.api"/> <module name="org.apache.commons.logging"/> </dependencies></module>-- wildfly-10.0.0.Final/standalone/configuration/standalone-full.xml -- ...<datasource jndi-name="java:jboss/datasources/PhoenixDS" pool-name="PhoenixDS" enabled="true" use-java-context="true"> <connection-url>jdbc:phoenix:server01:/hbase-unsecure</connection-url> <connection-property name="phoenix.connection.autoCommit"> true </connection-property> <driver>phoenix</driver> <validation> <check-valid-connection-sql>SELECT 1 FROM SYSTEM.CATALOG LIMIT 1</check-valid-connection-sql> </validation></datasource>...-- Other Notes: I am able to connect to Apache Phoenix with the following command. /usr/hdp/2.4.0.0-169/phoenix/bin/sqlline.py server01:/hbase-unsecure
