So, I'm using python3.2 and bulbs on mac-osx with rexster and orientdb. Details:
orientdb - standard download from their page
~/workspace/orientdb-community-1.7-rc1
Running the server, ./bin/server.sh
database - orientdb database ~/databases/orientdb/dev-db-01
rexster - standard checkout from github git clone git://github.com/tinkerpop/rexster.wiki.git ~/workspace/
config/rexster.xml:
...
<graph>
<graph-enabled>true</graph-enabled>
<graph-name>dev-db-01</graph-name>
<graph-type>orientgraph</graph-type>
<graph-location>local:*<path to...>*/databases/orientdb/dev-db-01</graph-location>
<properties>
<username>admin</username>
<password>admin</password>
</properties>
<extensions>
<allows>
<allow>tp:gremlin</allow>
</allows>
</extensions>
</graph>
...
Python code:
from bulbs.rexster import Graph
from bulbs.config import Config
config = Config("http://localhost:8182/dev-db-01/", username="admin", password="admin")
g = Graph(config)
Problem:
Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/rexster/graph.py", li ne 56, in __init__
super(Graph, self).__init__(config) File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/base/graph.py", line 58, in __init__
self.vertices = self.build_proxy(Vertex) File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/base/graph.py", line 124, in build_proxy
return self.factory.build_element_proxy(element_class, index_class) File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/factory.py", line 19, in build_element_proxy
primary_index = self.get_index(element_class,index_class,index_name) File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/factory.py", line 27, in get_index
index = index_proxy.get_or_create(index_name) File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/rexster/index.py", li ne 80, in get_or_create
resp = self.client.get_or_create_vertex_index(index_name, index_params) File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/rexster/client.py", l ine 668, in get_or_create_vertex_index
resp = self.gremlin(script, params) File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/rexster/client.py", l ine 356, in gremlin
return self.request.post(gremlin_path, params) File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/rest.py", line 131, i n post
return self.request(POST, path, params) File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/rest.py", line 186, i n request
return self.response_class(http_resp, self.config) File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/rexster/client.py", l ine 198, in __init__
self.handle_response(response) File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/rexster/client.py", l ine 222, in handle_response
response_handler(http_resp) File "/opt/local/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages/bulbs/rest.py", line 39, in not_found
raise LookupError(http_resp) LookupError: ({'date': 'Thu, 20 Feb 2014 07:08:20 GMT', 'status': '404', 'access-control-allow-origin': '*', 'content-lengt h': '0', 'server': 'grizzly/2.2.16'}, b'')
What I think is that the url in the config of the python code is incorrect (I've tried all kinds of variations). But I don't know that; it works if I leave the rexster.xml untouched and just use the standard graph constructor; but then that's a problem, because it's not adding nodes to the orientdb database that I want, dev-db-01, it's putting them in a default database. So to make sure that I connected to the right database, I disabled all but the orientdb database I had created.
How do I make it connect properly?