osgi r6 service.component.annotations список свойств
Возможно я просто глуп, но как мне установить список в значении свойства? Например, с аннотациями felix scr сервлет выглядел примерно так
@Component(metatype = false)
@SlingServlet(
methods = { "GET", "POST" },
resourceTypes = "sling/servlet/default",
selectors = { "size" },
paths = { "/some/stupid/path/.*" }
с новыми аннотациями службы osgi
@Component(service = Servlet.class,
property = {
"sling.servlet.methods=GET",
"sling.servlet.methods=POST",
"sling.servlet.resourceTypes=sling/servlet/default",
"sling.servlet.selectors=size",
"sling.servlet.paths=/some/stupid/path.*" })
Как я могу установить servlet.methods в виде списка? По общему признанию в этом примере это не большая проблема, но у меня есть сервлет, который активируется на многих селекторах, и я действительно не хочу иметь 20 строк "sling.servlet.selectors=..."
1 ответ
Из Javadoc: To specify a property with multiple values, use multiple name, value pairs. For example, "foo=bar", "foo=baz".
Так что у вас должно работать в этом значение sling.servlet.methods
будет массив [GET,POST]
Поддержка будущей спецификации DS 1.4 должна упростить эту задачу, позволяя аннотациям устанавливать значения свойств. См. 5.10 в RFC 222.