Is your feature request related to a problem? Please describe.
Many endpoints use GET for catalog functionality, but some require using POST for specific requests that require more content than can be passed as query parameters. The QUERY endpoint allows for query complexity with improved features for data retrieval that are not present with POST.
Describe the solution you'd like
QUERY support has been added to Jakarta EE (jakartaee/servlet#1068) and Apache Tomcat 12 (apache/tomcat@5e01091) libraries. This was a very recent addition, which may not be available in the latest release versions as of yet. Bumping these libraries would add support for the new method type and would allow for a bump to the Javalin library (#1004). This may require Java 17, which would not be compatible with Solaris-based systems.
Describe alternatives you've considered
Only the latest versions of the libraries specified above have support for this HTTP method. Compatibility issues with the latest libraries may prevent support for this feature from being added to CDA.
Additional context
Introduced in RFC 10008 (https://www.rfc-editor.org/info/rfc10008), the QUERY HTTP method allows for significantly more complex queries without running into URL length restrictions or requiring POST usage. Unlike POST, the QUERY method is idempotent and cacheable, resulting in consistent behavior when a request is received once and when it is received many times.
Is your feature request related to a problem? Please describe.
Many endpoints use
GETfor catalog functionality, but some require usingPOSTfor specific requests that require more content than can be passed as query parameters. TheQUERYendpoint allows for query complexity with improved features for data retrieval that are not present withPOST.Describe the solution you'd like
QUERYsupport has been added to Jakarta EE (jakartaee/servlet#1068) and Apache Tomcat 12 (apache/tomcat@5e01091) libraries. This was a very recent addition, which may not be available in the latest release versions as of yet. Bumping these libraries would add support for the new method type and would allow for a bump to the Javalin library (#1004). This may require Java 17, which would not be compatible with Solaris-based systems.Describe alternatives you've considered
Only the latest versions of the libraries specified above have support for this HTTP method. Compatibility issues with the latest libraries may prevent support for this feature from being added to CDA.
Additional context
Introduced in
RFC 10008(https://www.rfc-editor.org/info/rfc10008), theQUERYHTTP method allows for significantly more complex queries without running into URL length restrictions or requiringPOSTusage. UnlikePOST, theQUERYmethod is idempotent and cacheable, resulting in consistent behavior when a request is received once and when it is received many times.