Describe the bug
Trying to create an extended fhir server by placing jar files into the userlib directory using the ibm-fhir-server services approach. Wanted to add both fhir-operation-cpg-4.10.1-shaded.jar and fhir-operation-cqf-4.10.1-shaded.jar as well as fhir-ig-us-core-4.10.1.jar. cql evaluation works without the us-core jar but breaks after it is added.
Example cql, something like
/$cql?expression = [Patient] p where p.gender = 'male' & subject= Patient/...
Environment
Which version of IBM FHIR Server?
4.10.1
To Reproduce
These are the steps used when deploying via health patterns helm chart. You may be able to reproduce by simply adding the three jars to your dev environment server.
Within the Alvearie health patterns, use the pom.xml below to build a new container for the fhir server that includes all three jars mentioned above
Push the new container out to some container repo and adjust the health patterns fhir values.yaml to point the fhir repo and tag to that new container. For example
image:
# -- The repository to pull the IBM FHIR Server image from
repository: dlranum/ibm-fhir-server-cql-ig
# -- IBM FHIR Server container image tag
tag: "0.0.1"
Deploy the pattern according to the instructions.
Once the server is up, you can load patients and evaluate inline cql
Expected behavior
Expected to get a response as to whether the patient/subject was male or female
Note that this does work fine when the us-core jar file is not inluded. Also, basic cql expressions that do not involve patients also work fine (string concatenation, simple arithmetic).
Additional context
The FHIR pod logs show an error
Unexpected exception caught during execution: java.lang.IllegalArgumentException: Could not resolve search parameter for resourceType 'Patient' and contextPath 'id'\n\tat
Describe the bug Trying to create an extended fhir server by placing jar files into the userlib directory using the ibm-fhir-server services approach. Wanted to add both fhir-operation-cpg-4.10.1-shaded.jar and fhir-operation-cqf-4.10.1-shaded.jar as well as fhir-ig-us-core-4.10.1.jar. cql evaluation works without the us-core jar but breaks after it is added.
Example cql, something like
Environment Which version of IBM FHIR Server? 4.10.1
To Reproduce These are the steps used when deploying via health patterns helm chart. You may be able to reproduce by simply adding the three jars to your dev environment server.
Within the Alvearie health patterns, use the pom.xml below to build a new container for the fhir server that includes all three jars mentioned above
Push the new container out to some container repo and adjust the health patterns fhir values.yaml to point the fhir repo and tag to that new container. For example
Deploy the pattern according to the instructions.
Once the server is up, you can load patients and evaluate inline cql
Expected behavior Expected to get a response as to whether the patient/subject was male or female
Note that this does work fine when the us-core jar file is not inluded. Also, basic cql expressions that do not involve patients also work fine (string concatenation, simple arithmetic).
Additional context The FHIR pod logs show an error
Root of the error seems to be:
Unexpected exception caught during execution: java.lang.IllegalArgumentException: Could not resolve search parameter for resourceType 'Patient' and contextPath 'id'\n\tat
fhirlog1206A.txt