Stream: german (d-a-ch)
Topic: Problem mit HAPI FHIR
Kilian Krockauer (Aug 21 2018 at 09:25):
Hallo zusammen, ich habe ein Problem mit einer lokal eingesetzten HAPI-FHIR Lösung. Ich benutze den HAPI FHIR Server und lege mit Hilfe eines Java Clients Resourcen an. Wenn ich so eine Resource z.B. mit http://localhost:8080/baseDstu3/Observation?subject:Patient._id=1 durchsuche (Über Observation an einen Patienten mit ID) bekomme ich 0 Ergebnisse. Die selbe Anfrage auf einen Testserver im Netz spuckt hingegen Ergebnisse aus. Die Resourcen sehen m.E. richtig aus (davon abgesehen, dass das alles noch in der Testphase ist)... Anbei die betreffende Resourcen (Observation, Patient), wenn ich sie direkt per GET anfrage.
Resource.txt
Meine Frage nun: Liegt das an der HAPI FHIR-Lösung? Gibt es bessere als diese und wo finde ich Anleitungen zum Aufsetzen besserer Server?
Stefan Lang (Aug 21 2018 at 10:42):
Beim offiziellen HAPI-FHIR Testserver funktioniert es: http://fhirtest.uhn.ca/baseDstu3/Observation?subject:Patient._id=1
Insofern würde ich auf ein lokales Problem oder einen mittlerweile behobenen Bug tippen. Evtl. hat @Patrick Werner da Erfahrungen? Ansonsten einfach im HAPI-Stream nochmal fragen: https://chat.fhir.org/#narrow/stream/8-hapi
"Besser" ist immer so eine Sache ;-)
HAPI ist schon eine der vollständigsten Implementierungen derzeit, insbesondere als Open Source.
Die Delphi-Implementierung (der de-facto-Referenzserver) ist sehr vollständig, aber nicht unbedingt für den Produktiveinsatz gedacht.
Andere Open Source Implementierungen vollständiger FHIR-Server sind m.W. bisher vergleichsweise rudimentär.
Es gibt noch die Dotnet-Referenzimplementierung, mit Vonk als darauf aufsetzendem kommerziellen Produkt.
Und natürlich diverse kommerzielle Produkte, überwiegend von diversen US-Herstellern.
Kurz: im Wesentlichen ist HAPI das Mittel der Wahl, wenn man auf eine Kern-Implementierung aufsetzen und selbst weiter implementieren möchte.
Patrick Werner (Aug 21 2018 at 16:01):
@Kilian Krockauer wie hast du deinen lokalen HAPI deployed? HAPI CLI, Spring Boot, oder JPA Example Server auf Tomcat. Benutzt du eine stable Version oder den aktuellen Code Stand?
Patrick Werner (Aug 21 2018 at 16:05):
Wie Stefan schon getestet hatte funktioniert es mit anderen Servern, ich vermute ein lokales Problem oder alte Version?
Kilian Krockauer (Aug 21 2018 at 20:38):
@Stefan Lang Danke für deine Antwort. Im Grunde möchte ich "nur" einen Server haben, auf dem ich FHIR Resourcen 1. ablegen und 2. mit kombinierten GETs alá ?Resource1:Resource2.Attribut, etc. abrufen kann. Da ich das im Rahmen einer Masterthesis mache, das Erstellen der Resourcen allerdings nicht das Hauptthema ist, würde ich gerne von einer Selbtimplementierung einer Server-Logik erstmal absehen.
@Patrick Werner Ich benutze die HAPI CLI in Version 3.4.0 unter Java 8 mit den Parametern "-v dtsu3 --allow-external-refs"
Was kann ich unter einem lokalen Problem verstehen? Also, was sind die häufigsten Fehler, die man so machen kann?
Stefan Lang (Aug 21 2018 at 20:59):
@Kilian Krockauer In dem Fall kommt man an HAPI quasi nicht vorbei ;)
Alexander Zautke (Aug 21 2018 at 21:36):
Zu Testzwecken und dem Ablegen bzw. Abrufen von Ressourcen würde ich auch eine einfache Testversion von Vonk anbieten (https://simplifier.net/vonk). Läuft auf Windows nativ und auf allen anderen Plattformen per Docker.
Falls doch noch was dazu implementiert werden müsste, können Plug-Ins (in .NET geschrieben) für den Server hinzugefügt werden.
Die einzige Einschränkung besteht darin, dass der Server 1x alle 24h neugestartet werden muss.
Patrick Werner (Aug 22 2018 at 14:37):
@Kilian Krockauer
Ich habe das ganze gerade bei mir getestet:
Java: java version "1.8.0_181"
HAPI CLI: 3.4.0
Mit deinen Ressourcen getestet (nur den ref auf den Encounter entfernt da ich dieser in deinem TXT fehlte und auch nicht relevant ist)
Patrick Werner (Aug 22 2018 at 14:37):
http://localhost:8080/baseDstu3/Observation?subject:Patient._id=1
liefert mir das korrekte Ergebnis zurück.
Patrick Werner (Aug 22 2018 at 14:38):
Mit lokalen Problemen meinte ich eigentlich nur eine Fehlkonfiguration (was ja mit der CLI recht schwer geht ;-) )
Patrick Werner (Aug 22 2018 at 14:38):
Aber ein Problem wäre bspw. HAPI 3.4.0 mit Java10 zu starten, das geht erst in der 3.5-SNAPSHOT
Simone Heckmann (Aug 22 2018 at 15:11):
@Kilian Krockauer :
Wie sind die Resoucen denn in deinen HAPI reingekommen? Über die API gepostet oder über ein preload/Import? Kann es sein, dass die zwar in der DB gespeichert sind, aber sich irgendwie an der Indexierung vorbeigemogelt haben?
Simone Heckmann (Aug 22 2018 at 15:13):
...falls dem so wäre sollte sich das Problem lösen lassen, indem du die Observation einmal über ein PUT updatest.
Kilian Krockauer (Aug 23 2018 at 07:11):
@Simone Heckmann Danke für den Hinweis, werde ich mal austesten, wenn ich wieder vor dem Server sitze. Erstellt habe ich die Resourcen mit einem Java HAPI Client per client.create()...execute()
@Patrick Werner Jetzt bin ich wirklich gespannt, wo mein Fehler liegt.
Kilian Krockauer (Aug 28 2018 at 07:53):
@Simone Heckmann Dein Tipp hat es wohl gelöst! Wenn ich eine Ressource per Postman per Hand nochmal mit den selben Daten anlege/update, läuft die Suche. Jetzt muss ich nur noch herausfinden, wieso HAPI das nicht macht...
Kilian Krockauer (Aug 28 2018 at 08:53):
Habe das Problem nun erstmal dadurch gelöst, dass ich am Ende meiner Erstellung der Ressourcen noch einmal über alle Ressourcen gehe und ein simples client().update() auf ihnen ausführe. Ich schätze, dass da irgendwas bei der Reihenfolge des Erstellens der Ressourcen nicht richtig läuft. Da müsste ich mal genauer nachforschen, aber der Workaround läuft erstmal. Vielen Dank an alle!
Last updated: Apr 12 2022 at 19:14 UTC