问题描述
我将程序从hapishir's website的示例中提取出来,并且该操作有效,因为我收到JSON正文并正在更新数据库。我遇到的问题是没有响应被返回。我建立了MethodOutcome对象,然后“返回”它,但是邮递员中什么也没有出现。我也编写了@read和@Search操作,它们都在Postmat的响应中返回资源,但是此@Create不返回任何响应。
ObservationResourceProvider.java
public class ObservationResourceProvider implements IResourceProvider {
public ObservationResourceProvider() { }
@Override
public Class<? extends IBaseResource> getResourceType() {
return Observation.class;
}
@Create()
public MethodOutcome createObservation(@ResourceParam Observation observation){
OpenERMDatabase db = new OpenERMDatabase();
String newObservationId = db.addNewObservation(observation);
//return the new Id if success else return an error message
MethodOutcome retVal = new MethodOutcome();
if (newObservationId != null) {
retVal.setId(new IdType("Observation",newObservationId,"1.0"));
retVal.setCreated(true);
}else {
OperationOutcome outcome = new OperationOutcome();
outcome.addIssue().setDiagnostics("An Error Occurred");
retVal.setOperationOutcome(outcome);
retVal.setCreated(false);
}
return retVal;
}
}
SimpleRestfulServer.java
@WebServlet("/*")
public class SimpleRestfulServer extends RestfulServer{
//Initialize
@Override
protected void initialize()throws ServletException{
//create a context for the appropriate version
setFhirContext(FhirContext.forDstu3());
//Register Resource Providers
registerProvider(new PatientResourceProvider());
registerProvider(new ObservationResourceProvider());
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)