2011-08-07 9 views
0

datanucleus REST service(2.0.1)をHBASE(0.90.2)で実行しようとしています。HBASEでdatanucleus-restを使用する

のHTTP ERROR/DN /アクセス503

問題:サーブレットにアクセスすると

しかし、私は503になっています(作品を登録します)。理由:私はしかし

  • プロバイダ
  • datanucleus.storeManagerType
の値とわからないよ

<persistence-unit name="test"> 
    <provider>org.datanucleus.api.jdo.JDOPersistenceManagerFactory</provider> 
    <class>com.bla.MyClass</class> 
    <exclude-unlisted-classes /> 
    <properties> 
     <property name="datanucleus.storeManagerType" value="hbase" /> 
     <property name="datanucleus.ConnectionURL" value="hbase" /> 
     <property name="datanucleus.ConnectionUserName" value="" /> 
     <property name="datanucleus.ConnectionPassword" value="" /> 
     <property name="datanucleus.autoCreateTables" value="true" /> 
     <property name="datanucleus.autoCreateColumns" value="true" /> 
     <property name="datanucleus.Multithreaded" value="true" /> 
    </properties> 
</persistence-unit> 

org.datanucleus.exceptions.NucleusUserException: There is no 
available StoreManager of type "rdbms". Make sure that you have put 
the relevant DataNucleus store plugin in your CLASSPATH and if 
defining a connection via JNDI or DataSource you also need to provide 
persistence property "datanucleus.storeManagerType" 

私のpersistence.xmlはこのようになります

誰かが私に間違っているかもしれないヒントを教えてもらえますか、これに関するいくつかの文書を教えてください。

+0

特に値がの場合は、すべての例で "org.datanucleus.api.jpa.PersistenceProviderImpl"と思われます。 – Joscha

+0

プロバイダはorg.datanucleus.api.jpa.PersistenceProviderImplでなければならず、datanucleus.storeManagerTypeは必要ありません。また、persistence-unit name-attributeをweb.xmlで指定されたものと同じにすることを忘れないでください – Joscha

答えて

1

バックエンドがJDOを使用するため、プロバイダは無関係です。 persistence.xmlは、単に接続、プロパティ(および必要に応じてクラス)を定義することです。

datanucle.storeManagerTypeは、ドキュメントが明確に言う通り、JNDIを使用して接続を指定した場合に限り、無関係です。

したがって、クラスパスにdatanucleus-hbaseと従属jarのいずれかが含まれていません。

明らかにログを見ると役立ちます。私はHBaseでDataNucleus v3 RESTを全く使用できません

関連する問題