Injecting List of Strings with MicroProfile Config 📎
A comma-separated String in microprofile-config.properties
:
messages=hello,bye
...can be injected as a List
of Strings (other types are injectable as well):
import java.util.List;
import javax.inject.Inject;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import org.eclipse.microprofile.config.inject.ConfigProperty;
@Path("messages")
public class MessagesResource {
@Inject
@ConfigProperty(name = "messages")
List<String> messages;
@GET
public List<String> messages() {
return this.messages;
}
}
The following command: curl -i localhost:8080/[THIN_WAR_NAME]/resources/messages
prints: ["hello","bye"]
The 4kB ThinWAR project was created with Jakarta EE Essentials Archetype and deployed with: wad.sh in 1.9s