* Add fallback for versioned base FHIR StructureDefinition lookups
Problem:
Implementation Guides (e.g., ch-core) may reference base FHIR resources
with explicit versions like "http://hl7.org/fhir/StructureDefinition/Organization|4.0.1".
These lookups fail because base FHIR StructureDefinitions are intentionally
cached without version (see hapi-fhir PR #7236).
This causes validation errors like:
- "Unable to resolve the profile reference '...|4.0.1'"
- "Invalid Resource target type. Found Organization, but expected one of ([])"
Solution:
Add VersionedUrlFallbackValidationSupport that intercepts versioned lookups
for base FHIR StructureDefinitions (http://hl7.org/fhir/StructureDefinition/*)
and falls back to:
1. Major.minor version (e.g., 4.0.1 -> 4.0)
2. Non-versioned URL
The fallback logs a warning when triggered, allowing visibility into
which IGs reference versioned base resources.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* Remove duplicates
* formatting
* removing unneeded thread local
* corrected according to review
* cleanup
* removed not needed const
* tests include some chain now
* Update src/test/java/ca/uhn/fhir/jpa/starter/validation/VersionedUrlFallbackValidationSupportTest.java
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* updated doc
* adding tests
* Add TODO comment for core fix in validation support
Added a comment indicating a TODO for future improvement.
* Update TODO comment for core fix in validation support
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* some cleanup
* results from mvn spotless:apply
* fix contructor --> constructor
* revert change to fix CdsHooksServletIT
* revert change to charts README.md
* bump chart version, required due to changes in README.md
What this commit has achieved:
1. Fixed failing tests in `ExampleServerR4IT` due to:
```
org.awaitility.core.ConditionTimeoutException: Condition with ca.uhn.fhir.jpa.starter.ExampleServerR4IT was not fulfilled within 10 seconds.
```
default await time from Awaitility is 10 seconds
2. Added entries in `.gitignore` related to STS IDE