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






  

Reply via email to