ほんとのこと知りたいだけなのに。

夏休みはもうおわり。

cl-neo4j を Windows7 で利用したら困った事になったんよ。

最近 Neo4j を利用する機会が出来たので、ひさしぶりに cl-neo4j を利用再開しました。

自宅の Mac で思い出しながら動作確認して「あー使えるわー」程度の確認をしました。

その後職場で「あー使えるわー」を再現しようとしたんですが、全然ダメでした。

(1) まず環境

(2) Neo4j のインストールと稼動確認

インストールは適当にすませ、Neo4j Server を起動させ、browser の起動を確認。 Node を一つ作り、Web Browse(Chrome) から REST-API の node - get を実行し問題ないことを確認。

URI: http://my-host-name:7474/db/data/node/0

この段階で「あー使えるわー」は目前とニラみましたが、世の中アマくありませんでした。

(3) ダメだったところ1: 503 のエラーが発生。

slime から drakma で REST-API の node - get を実行 するも 503 が発生。

どうも urilocalhost が怪しいとニラんでhost名に変更。=> 結果NG

サーバーの設定でコレかなポイントを見つけました。 コメントアウトされていたので、コメントを外し、値にサーバーの host名を設定。

  • ファイル: Server configuration
  • プロパティ: org.neo4j.server.webserver.address
  • 設定値: サーバーの host名

この設定後、再度REST-APIをコールすると 411 にエラーが変化しました。

なんとなく変更は効いてそうなので、次へ進むことにしました。

ちなみに、以後 サーバーのhost名 or ip でアクセスする必要があります。 localhost ではアクセスできません。複数指定可能なのかな。。。マニュアル見ないと。

(4) ダメだったところ1: 411 のエラーが発生。

どこが悪いのかさっぱりわからない。

drakma で (setf drakma:header-stream standard-output) して、ヘッダの内容をダンプ。

Chorme で成功しているやつのヘッダの内容と比較すると、drakma のヘッダは以下の二つの値が設定されていました。 * :content * :content-type

これがアヤしいとニラんで、drakma::send-request の中の :content , :content-type を指定している部分をコメントアウト

REST-API を再挑戦すると成功しました。

その後、一通りのAPIをうごかして、「あー使えるわー」の再現に成功しました。

めでたし、めでたし。。。じゃないので今度の休みにでも調べよ。

以上。