1

最近、SPARQL と JMeter を使い始めました。テストStardogをロードしようとしていました。そのために、Jmeter を使用し、HTTP リクエストを使用してデータベース内の値を更新する SPARQL クエリを実行しました。Stardog Web インターフェイスでクエリを実行してみましたが、DB の値がうまく変更されました。Jmeter を使用して同じクエリを実行すると、問題なく実行されますが、DB の値は変更されません。私が間違っていることを知っていれば、非常に役に立ちます。私が実行しているクエリは次のとおりです。

PREFIX info: <http://somewhere/peopleInfo#>
PREFIX vcard:<http://www.w3.org/2001/vcard-rdf/3.0#>

DELETE { ?person info:age ?age }
INSERT { ?person info:age ?nage }

WHERE {
 ?person vcard:FN 'Becky Smith' .
 ?person info:age ?age
 BIND (?age+1 AS ?nage)
}

Jmeter のスクリーンショットはこちらにあります: https://onedrive.live.com/redir?resid=E29D7716CE8E7022!239767&authkey=!AEzPJtZJi-bbmjw&ithint=folder%2cpng

Stardog で使用している rdf ファイルはここにあります ( https://onedrive.live.com/redir?resid=E29D7716CE8E7022!239766&authkey=!ALBbaxM8nHhAXSw&ithint=file%2crdf )。

どんな助けでも大歓迎です。ありがとうございました。

[Onedrive リンクをアップロードして申し訳ありません。私は新しいユーザーであり、2 つ以上のリンクをアップロードするのに十分な評価ポイントがありません。]

4

2 に答える 2

2

私は JMeter を使用したことがないため、構成の何が問題なのかについて明確な答えはありませんが、何らかの問題があることがわかります。

POSTStardog のクエリ エンドポイントにa を送信するために想定される形式Content-Typeapplication/x-www-form-urlencoded、 と本文がエンドポイントに送信されるクエリ パラメータである必要があるということです。したがって、GETリクエストと同様に、それがquery=<your query>. 2 番目のスクリーンショットを見ると、正しく構成されていないようです。

text/turtleこれは、Stardog の SPARQL サービス記述の応答タイプと応答内容によって確認されます。これは、要求にqueryパラメーターが欠落している場合に Stardog が送信するものです。

于 2016-05-26T19:08:11.983 に答える
0

私は自分が犯していた間違いに気づきました。HTTP Body を使用して SPARQL コードを貼り付けていました。代わりに、パラメーターを使用してクエリの下に SPARQL コードを追加しました。写真のように見えるはずです。 パラメータ

于 2016-05-26T19:29:48.290 に答える