tree dcea3089552f18aee76f424f46e5337ec29a91e4
parent 6fa2746ecf60c9b1c0031262021c8936d1c6f91f
author Thomas Watson <tjwatson@us.ibm.com> 1598292327 -0500
committer Thomas Watson <tjwatson@us.ibm.com> 1598447081 -0500

Add Aries JAX-RS example

This example creates both an Atomos indexed uber JAR
and a substrate native image with a very simple
hello JAX-RS resource.  The resource is a DS
component that gets injected with another
OSGi service.

The maven plugin should have calculated
the necessary configuration files for reflection
but there seemed to be things missing. This example
has additional AgentConfig.json files that were gathered
by using the graal agent to discover the necessary
resources and reflect configs for substrate.
