创建hbase数据存储时发生Apache Gora-java.net.MalformedURLException异常

创建hbase数据存储时发生Apache Gora-java.net.MalformedURLException异常,java,hbase,gora,Java,Hbase,Gora,我正在构建一个使用Gora hbase作为后端的项目。 Hbase已启动并正在运行。我没有使用maven或ivy 我还在/conf/gora.properties中指定了以下内容: gora.datastore.default=org.apache.gora.hbase.store.hbastore gora.datastore.autocreateschema=true 在我的代码中,我使用以下代码启动数据存储: 数据存储= DataStoreFactory.getDataStore(long

我正在构建一个使用Gora hbase作为后端的项目。 Hbase已启动并正在运行。我没有使用maven或ivy

我还在/conf/gora.properties中指定了以下内容:

gora.datastore.default=org.apache.gora.hbase.store.hbastore gora.datastore.autocreateschema=true

在我的代码中,我使用以下代码启动数据存储:

数据存储= DataStoreFactory.getDataStore(long.class,UserDetails.class,new 配置())

我在上一行遇到以下异常:

13/02/04 23:02:26 INFO zookeeper.ClientCnxn: Session establishment complete on server localhost/127.0.0.1:2181, sessionid = 0x13ca8d9ecac000c, negotiated timeout = 40000
org.apache.gora.util.GoraException: java.lang.RuntimeException: java.net.MalformedURLException
    at org.apache.gora.store.DataStoreFactory.createDataStore(DataStoreFactory.java:167)
    at org.apache.gora.store.DataStoreFactory.getDataStore(DataStoreFactory.java:278)
    at com.psl.gora.java.model.TestClass.init(TestClass.java:34)
    at com.psl.gora.java.model.TestClass.<init>(TestClass.java:23)
    at com.psl.gora.java.model.TestClass.main(TestClass.java:47)
Caused by: java.lang.RuntimeException: java.net.MalformedURLException
    at org.apache.gora.hbase.store.HBaseStore.initialize(HBaseStore.java:125)
    at org.apache.gora.store.DataStoreFactory.initializeDataStore(DataStoreFactory.java:102)
    at org.apache.gora.store.DataStoreFactory.createDataStore(DataStoreFactory.java:161)
    ... 4 more
Caused by: java.net.MalformedURLException
    at java.net.URL.<init>(URL.java:617)
    at java.net.URL.<init>(URL.java:480)
    at java.net.URL.<init>(URL.java:429)
    at org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
    at org.apache.xerces.impl.XMLVersionDetector.determineDocVersion(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:453)
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:770)
    at org.apache.gora.hbase.store.HBaseStore.readMapping(HBaseStore.java:524)
    at org.apache.gora.hbase.store.HBaseStore.initialize(HBaseStore.java:111)
    ... 6 more
Caused by: java.lang.NullPointerException
    at java.net.URL.<init>(URL.java:522)
    ... 19 more
13/02/04 23:02:26信息zookeeper.ClientCnxn:在服务器本地主机上完成会话建立/127.0.0.1:2181,会话ID=0x13ca8d9ecac000c,协商超时=40000
org.apache.gora.util.GoraException:java.lang.RuntimeException:java.net.MalformedURLException
位于org.apache.gora.store.DataStoreFactory.createDataStore(DataStoreFactory.java:167)
位于org.apache.gora.store.DataStoreFactory.getDataStore(DataStoreFactory.java:278)
位于com.psl.gora.java.model.TestClass.init(TestClass.java:34)
在com.psl.gora.java.model.TestClass.(TestClass.java:23)
位于com.psl.gora.java.model.TestClass.main(TestClass.java:47)
原因:java.lang.RuntimeException:java.net.MalformedURLException
位于org.apache.gora.hbase.store.HBaseStore.initialize(HBaseStore.java:125)
位于org.apache.gora.store.DataStoreFactory.initializeDataStore(DataStoreFactory.java:102)
位于org.apache.gora.store.DataStoreFactory.createDataStore(DataStoreFactory.java:161)
... 4更多
原因:java.net.MalformedURLException
在java.net.URL.(URL.java:617)
位于java.net.URL。(URL.java:480)
位于java.net.URL。(URL.java:429)
位于org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(未知源)
位于org.apache.xerces.impl.XMLVersionDetector.determineDocVersion(未知源)
位于org.apache.xerces.parsers.XML11Configuration.parse(未知源)
位于org.apache.xerces.parsers.XML11Configuration.parse(未知源)
位于org.apache.xerces.parsers.XMLParser.parse(未知源)
位于org.apache.xerces.parsers.AbstractSAXParser.parse(未知源)
位于org.apache.xerces.jaxp.SAXParserImpl$jaxpsaxpasser.parse(未知源代码)
位于org.jdom.input.SAXBuilder.build(SAXBuilder.java:453)
位于org.jdom.input.SAXBuilder.build(SAXBuilder.java:770)
位于org.apache.gora.hbase.store.HBaseStore.readMapping(HBaseStore.java:524)
位于org.apache.gora.hbase.store.HBaseStore.initialize(HBaseStore.java:111)
... 还有6个
原因:java.lang.NullPointerException
位于java.net.URL。(URL.java:522)
... 还有19个
有什么我遗漏或不知道的吗?

感谢您的帮助或建议。

显示此stacktrace时,可能是因为缺少
gora hbase mapping.xml

这个问题是几个月前提出的,但如果其他人也有同样的问题,也许这会有所帮助

hbastore:524
调用
builder.build(null)
,结果如中所示

----其他可能性----

尝试使用key class
String.class
并检查它是否有效。(只是检查一下……)