phoenix-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Juan Rodríguez Hortalá <juan.rodriguez.hort...@gmail.com>
Subject Offending class: javax/servlet/Servlet.class using Phoenix JDBC from Saiku
Date Wed, 05 Feb 2014 16:55:44 GMT
Hi list!,

I've built phoenix following the instructions of
http://phoenix.incubator.apache.org/building.html in a Cloudera Quickstart
VM for CDH 4.4.0 and I've obtained the following jars:

phoenix-core/target/phoenix-core-3.0.0-SNAPSHOT.jar
phoenix-assembly/target/phoenix-3.0.0-SNAPSHOT-client.jar

Then I have copied phoenix-core-3.0.0-SNAPSHOT.jar into /usr/lib/hbase/lib/
and restarted HBase and I'm able to access to HBase tables and create new
HBase tables with sqlline.sh, which means phoenix-3.0.0-SNAPSHOT-client.jar
is working ok. But now I would like to use Phoenix as a source for a saiku
server I'm running in the host machine for the Cloudera VM, which is a
windows 8. To do that, following
http://docs.analytical-labs.com/saiku/documentation/2013/08/15/datasources.html,
I have copied the client phoenix-3.0.0-SNAPSHOT-client.jar into
saiku-server\tomcat\webapps\saiku\WEB-INF\lib for the Saiku installation
and restarted Saiku, and here is where the problem occours, as tomcats
rejects phoenix-3.0.0-SNAPSHOT-client.jar with the following message at
catalina.*.log:

feb 05, 2014 4:20:59 P.M. org.apache.catalina.loader.WebappClassLoader
validateJarFile
INFO:
validateJarFile(C:\Users\bc24u_000\Sistemas\Pentaho\saiku-server-foodmart-2.5\saiku-server\tomcat\webapps\saiku\WEB-INF\lib\phoenix-3.0.0-SNAPSHOT-client.jar)
- jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class:
javax/servlet/Servlet.class
feb 05, 2014 4:21:17 P.M. com.sun.jersey.api.core.PackagesResourceConfig
init
INFO: Scanning for root resource and provider classes in the packages:
  org.saiku.web
....

After some searching I've found that the problem is that
javax.servlet.Servlet.class is already defined in some other jar, so tomcat
rejects any jar containing another definition of the same class. I've tried
using the other client jars for phoenix by the class
org.apache.phoenix.jdbc.PhoenixDriver seems to be missing in those other
jars:

[cloudera@localhost target]$ jar tf
phoenix-3.0.0-SNAPSHOT-client-without-hbase.jar | grep -i phoenix
[cloudera@localhost target]$ jar tf
phoenix-3.0.0-SNAPSHOT-client-minimal.jar | grep -i phoenix
[cloudera@localhost target]$

I've also tried deleting that javax folder from the file
phoenix-3.0.0-SNAPSHOT-client.jar, but it doesn't work anyway. I would
appreciate any idea for solving this

Thanks in advance,

Greetings!

Juan Rodríguez Hortalá <http://gpd.sip.ucm.es/juanrh/>

Mime
View raw message