2016-12-02 8 views
0

JsonPathを使用してjsonをフィールドの前に名前空間をチェックするのに問題があります。私はGoogleから何かを見つけたり、既存の問題やドキュメントを調べることができませんでした。私は働くことが何もできませんでした。JsonPathで名前空間でJSONを処理する方法

{ 
    "_embedded" : { 
    "bb:list" : [ { 
     "id" : "id", 
     "label" : "label", 
     "description" : "description", 
     "timezone" : "timezone", 
     "postalAddress" : { 
     "addressCountry" : "country", 
     "addressLocality" : "city", 
     "addressRegion" : "state", 
     "postalCode" : "postal code", 
     "streetAddress" : "street address" 
     } 
    } ] 
    } 
} 

そして、私はBBをチェックしようとしている:リストフィールドをそれにしているどのように多くの項目を参照するために、私は、JSONの次のスニペットを持っています。このJsonPath式が動作していないよう:

"$ ._ embedded.bb:list"

私は "BB:" 削除した場合、それはBBですので、これは "$ ._ embedded.listを" 作品使用しました:それは好きではないようだ。

答えて

0

これは、私が持っていた問題が、JsonPathの式やJsonPathの表現ではないことが判明しました。 Spring BootはJsonPathを持ってきてコンパイルして見えましたが、実行時には何らかの理由で動作しませんでした。明示的に私の依存リストにJsonPathを追加し、それは魔法のように働き始めました。

編集:上記の修正は永続的ではありませんでした。 JsonPath - Json-smartの一時的な依存性は、Springテストによって引き抜かれているバージョンよりも新しいバージョンを使用していることが判明しています(いくつかは一時的な依存性があります)。 Iはスプリングスタータ試験依存性からJSONスマートための排除を追加することによってそれを修正:

testCompile('org.springframework.boot:spring-boot-starter-test'){ 
    exclude group: 'json-smart' 
} 
関連する問題