在静态服务器中返回Hapi FHIR元素

问题描述

我已经建立了一个基本的springboot应用程序,该应用程序将在get调用中返回字符串值,但是当我尝试返回模拟的Patient对象时,会收到一个奇怪的错误

我的代码

@RequestMapping("/test2")
Patient test2(){
    Patient patient = new Patient();
    patient.setId("1");
    patient.addName().setFamily("Bar").addGiven("Foo").addGiven("M");
    patient.addAddress().addLine("Address Line 1");
    patient.addAddress().setCity("City Name");
    patient.addAddress().setCountry("Country Name");
    patient.addTelecom().setValue("555-555-1111");

    return patient;
}

错误似乎是所创建的json是递归的且永无休止。响应的摘要是:

{"formatCommentsPre":[],"formatCommentsPost":[],"id":"1","Meta":{"formatCommentsPre":[],"id":null,"extension":[],"versionId":null,"lastUpdated":null,"profile":[],"security":[],"tag":[],"empty":true,"tagFirstRep":{"formatCommentsPre":[],"system":null,"version":null,"code":null,"display":null,"userSelected":false,"displayElement":{"formatCommentsPre":[],"valueNotNull":"","primitive":true,"value":null,"valueAsstring":null,"idElement":{"formatCommentsPre":[],"extension":

有人对我做错了什么以及向患者发送FHIR响应的正确方法有什么想法吗?

解决方法

您应该使用 FHIR Parser 将您的对象转换为 JSON,然后将 JSON 值作为简单字符串返回。

ro.xxxx.appwithrestart,u0: -3s669ms,u0a298:ro.xxxx.appwithrestart +35ms running,1 wakeups:
      *walarm*:ro.xxxx.appwithrestart/.MainActivity
   (AppSync) ro.xxxx.appwithrestart/0

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...