Немного фона. У меня есть приложение, которое развертывается в Weblogic. Он получает ответ от Json от службы. Я пытаюсь использовать JsonPath для навигации по дереву, и у меня возникла необычная проблема.Задержанный JsonPath, работающий в JUnit Test, но не при развертывании в приложении (Weblogic)
Я использую Maven для создания/развертывания приложения. Зависимость:
<dependency>
<groupId>com.jayway.restassured</groupId>
<artifactId>json-path</artifactId>
<version>1.8.1</version>
</dependency>
После того, как он работает с полным ответом в JUnit и понимая, что он не работает в приложении при развертывании, я сделал это проще и жёстко очень небольшое подмножество данных.
{
"ChangeStatus": {
"Code": {
"value": "1002"
},
"Description": {
"value": "Matched more then 10 records"
}
}
}
Вот что я смотрю на прямо сейчас ...
String miniJson = "{\"ChangeStatus\":{\"Code\":{\"value\":\"1002\"},\"Description\":{\"value\":\"Matched more then 10 records\"}}}";
JsonPath miniJsonPath = new JsonPath(miniJson);
String statusCode = miniJsonPath.getString("ChangeStatus.Code.value");
В JUnit, этот код работает, и я могу утверждать, 1002 успешно. В приложении после нажатия на weblogic этот точный фрагмент кода не работает. Он выбрасывает NoSuchMethodError.
Любые идеи приветствуются. FYI, we are on Weblogic 10.3.6
Заранее благодарен!
И вы проверили ваш JSON-путь-1.8.1.jar является частью вашего развернутого приложения? Как выглядит трассировка стека? –