0

我正在使用 HAPI-FHIR 库,并且正在尝试向资源提供者引入一个新的搜索参数,例如:

@Read
  public Patient getResourceById(@IdParam IdDt id,
                             @RequiredParam(name="session") String session){}

但我有一个例外

“ca.uhn.fhir.rest.server.ConfigurationException:方法[public ca.uhn.fhir.model.dstu.resource.Patient PatientResourceProvider.getResourceById(ca.uhn.fhir.model.primitive.IdDt,java.lang.String )] 不允许有使用@ca.uhn.fhir.rest.annotation.RequiredParam(compositeTypes=[], chainBlacklist=[], targetTypes=[], chainWhitelist=[*], name=session) 注释的参数”

有什么建议怎么做吗?

4

1 回答 1

0

这里的问题是这个方法是用@Read 注释的,所以它是“read”/“vread”而不是“search”。要创建一个接受该参数的搜索方法,请复制现有方法,删除第一个参数,然后将 @Read 更改为 @Search。

请注意,您可能还希望返回 List 而不仅仅是 Patient,因为搜索可以返回多个结果。

于 2014-10-09T19:54:42.230 回答