You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by Abhishek Abhi <ab...@tcs.com> on 2016/07/07 07:03:19 UTC

Phoenix Compliance with OSGI

Hi everyone,

I am trying to integrate phoenix with an application that runs on OSGI framework. I have provide bundles details in feature.xml          <bundle>wrap:mvn:org.apache.hbase/hbase-client/0.98.17-hadoop2</bundle>         <bundle>wrap:mvn:org.apache.phoenix/phoenix-core/4.6.0-HBase-0.98</bundle>         <bundle>wrap:mvn:org.apache.htrace/htrace-core/3.1.0-incubating</bundle> I have also added dependencies for the above mentioned dependencies in module's pom.  While executing following code I am getting this exception  Code :                  try {                                  DriverManager.registerDriver(new PhoenixDriver());                     con = DriverManager.getConnection("jdbc:phoenix:localhost");                     }                  catch (SQLException e) {                     // TODO Auto-generated catch block                     e.printStackTrace();                 }      Exception: Uncaught error from thread [opendaylight-cluster-data-notification-dispatcher-74] shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for ActorSystem[opendaylight-cluster-data] java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/ipc/RpcControllerFactory     at java.lang.ClassLoader.defineClass1(Native Method)     at java.lang.ClassLoader.defineClass(ClassLoader.java:763)     at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:188)     at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClassHoldingLock(ClasspathManager.java:632)     at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:607)     at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:568)     at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:492)     at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:465)  Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.ipc.RpcControllerFactory     at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)     at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)     at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)     at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)     at java.lang.ClassLoader.loadClass(ClassLoader.java:357)    Any suggestions regarding the problem?

Regards
Abhishek 
=====-----=====-----=====
Notice: The information contained in this e-mail
message and/or attachments to it may contain 
confidential or privileged information. If you are 
not the intended recipient, any dissemination, use, 
review, distribution, printing or copying of the 
information contained in this e-mail message 
and/or attachments to it are strictly prohibited. If 
you have received this communication in error, 
please notify us by reply e-mail or telephone and 
immediately and permanently delete the message 
and any attachments. Thank you



Re: Phoenix Compliance with OSGI

Posted by James Taylor <ja...@apache.org>.
Has anyone ever run the HBase client in an OSGi container? You might want
to ask on the HBase dev list.

If you hit a dead end with this approach, you may want to try our thin
driver with the query server[1] instead as this removes all the HBase and
Hadoop dependencies.

Thanks,
James

[1] http://phoenix.apache.org/server.html

On Thu, Jul 7, 2016 at 9:03 AM, Abhishek Abhi <ab...@tcs.com> wrote:

> Hi everyone,
>
> I am trying to integrate phoenix with an application that runs on OSGI
> framework. I have provide bundles details in feature.xml
> <bundle>wrap:mvn:org.apache.hbase/hbase-client/0.98.17-hadoop2</bundle>
>
>  <bundle>wrap:mvn:org.apache.phoenix/phoenix-core/4.6.0-HBase-0.98</bundle>
>
>  <bundle>wrap:mvn:org.apache.htrace/htrace-core/3.1.0-incubating</bundle> I
> have also added dependencies for the above mentioned dependencies in
> module's pom.  While executing following code I am getting this exception
> Code :                  try {
> DriverManager.registerDriver(new PhoenixDriver());                     con
> = DriverManager.getConnection("jdbc:phoenix:localhost");
>  }                  catch (SQLException e) {                     // TODO
> Auto-generated catch block                     e.printStackTrace();
>          }      Exception: Uncaught error from thread
> [opendaylight-cluster-data-notification-dispatcher-74] shutting down JVM
> since 'akka.jvm-exit-on-fatal-error' is enabled for
> ActorSystem[opendaylight-cluster-data] java.lang.NoClassDefFoundError:
> org/apache/hadoop/hbase/ipc/RpcControllerFactory     at
> java.lang.ClassLoader.defineClass1(Native Method)     at
> java.lang.ClassLoader.defineClass(ClassLoader.java:763)     at
> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:188)
>    at
> org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClassHoldingLock(ClasspathManager.java:632)
>    at
> org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:607)
>    at
> org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:568)
>    at
> org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:492)
>    at
> org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:465)
> Caused by: java.lang.ClassNotFoundException:
> org.apache.hadoop.hbase.ipc.RpcControllerFactory     at
> org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
>    at
> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
>    at
> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
>    at
> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
>    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)    Any
> suggestions regarding the problem?
>
> Regards
> Abhishek
> =====-----=====-----=====
> Notice: The information contained in this e-mail
> message and/or attachments to it may contain
> confidential or privileged information. If you are
> not the intended recipient, any dissemination, use,
> review, distribution, printing or copying of the
> information contained in this e-mail message
> and/or attachments to it are strictly prohibited. If
> you have received this communication in error,
> please notify us by reply e-mail or telephone and
> immediately and permanently delete the message
> and any attachments. Thank you
>
>
>