2017-01-12 14 views
1

Я выполнил запрос в базе данных hapi fhir, которая вернула мне постраничный результат. Я использую hapı базу в Java фактически сделать поиск, согласно документации здесь: http://hapifhir.io/doc_rest_client.htmlИтерация по отложенному ответу fhir

Bundle bundle = client.search().forResource(Basic.class).returnBundle(ca.uhn.fhir.model.dstu2.resource.Bundle.class).execute(); 
    do { 

     for (Entry entry: bundle.getEntry()) 
      System.out.println(entry.getFullUrl()); 

     if (bundle.getLink(Bundle.LINK_NEXT) != null) 
      bundle = client.loadPage().next(bundle).execute(); 
     else 
      bundle = null; 
    } 
    while (bundle != null); 

код работает как далеко, как получить первый пакет, и печатает URLs, как и следовало ожидать, однако, когда это пытается выполнить следующий пакет, я получаю ConnectionException «Соединение отказано: connect».

Сервер по-прежнему кажется отзывчивым, так как я могу повторно запустить свою программу и получить тот же результат.

Любая идея, почему соединение будет отклонено? Я получаю аналогичную проблему, когда я пытаюсь запустить ее вручную из почтальона.

ответ

0

На всякий случай кто-то спотыкается об этом. У меня было какое-то перенаправление (настройка другим членом моей команды). По существу мой базовый url был localhost: 8080, но следующий адрес возвращался как localhost: 1080 (что я не совсем понимаю почему).

Он изменил конфигурацию на сервере, чтобы она не перенаправлялась.

2

Что вы делаете, конечно, выглядит правильно. Если вы выполняете поиск вручную (например, используя браузер или почтальон или что-то еще), как выглядит следующая ссылка? И работает ли это, если вы используете эту ссылку непосредственно в браузере?

Например, если я бегу CLI локально на моей машине, и выполнять поиск, я вижу следующее в ответ:

"link": [ 
    { 
    "relation": "self", 
    "url": "http://localhost:8080/baseDstu3/_history" 
}, 
{ 
    "relation": "next", 
    "url": "http://localhost:8080/baseDstu3?_getpages=d8454866-624d-4bb3-b7a0-0858e4870e7e&_getpagesoffset=10&_count=10&_pretty=true&_bundletype=history" 
} 
], 

Если я подключу следующей ссылке (http://localhost:8080/baseDstu3?_getpages=d8454866-624d-4bb3-b7a0-0858e4870e7e&_getpagesoffset=10&_count=10&_pretty=true&_bundletype=history) в браузере, я получить следующую страницу.

Можете ли вы попробовать это и посмотреть, как это происходит?

 Смежные вопросы

  • Нет связанных вопросов^_^