问题描述
我已经建立了一个基本的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