Neo4j アドオンを使用して、Heroku で Neo4J クラウド アプリケーションを開発しようとしています。私はまだいくつかの機能を試しているので、これは単なるデモ アプリですが、すでに問題が発生しています。
私のアプリケーションは次のように構築されています。参照ノードに接続されているすべてのノードを示すテーブルを含むホームページがあります。このホームページには、ランダム ノードを追加するためのリンクがあります。
私のサーブレットには、次のことを行う 2 つのアクションが定義されています。
ホームド
request.setAttribute("testuser", "test");
DataAccess da = new DataAccess();
request.setAttribute("NodeBeans", da.getAllNodes());
request.setAttribute("pageheader", "header");
request.setAttribute("pagecontent", "home");
request.setAttribute("pagefooter", "footer");
request.getRequestDispatcher("/master.jsp").forward(request, response);
最後の 3 つのパラメータは、.jsp を使用して master.jsp に含まれるファイル名 (jsp なし) です。
Addnode.doはまったく同じことを行いますが、testuser の値を変更し、NodeBeans 属性を設定する前にこれを行います。
da.createRandomNode();
基本的に、データベースにランダムなノードを作成します。
ローカルでは、すべてが魔法のように機能します。Heroku にプッシュすると、問題が発生します。
私が開くと、まだ「bla.herokuapps.com/home.do」が開きます。これは良いことです。ノードのテーブルが表示されます。ノードを追加するリンクをクリックすると、ノードを追加するはずの URL が「bla.herokuapp.com/addnode.do」に実際に変更されますが、追加されません。ただし、 「addnode.do」アクションで変更される testuser 属性は変更されます。URL が"bla.herokuapps.com/addnode.do"に設定されているときにページを更新すると、ノードが追加され、この新しいノードがテーブルに表示されます。
そのため、ページ間の切り替え全体がうまく機能します。唯一の問題は、addnode リンクをクリックしても、ページを更新するまで Neo4j データベースに新しいノードが作成されないことです。
参考までに:私はデータベースとの対話に neo4j-rest-graphdb を使用しています。残りの API と対話するためのリモート クライアント ライブラリです。