【发布时间】:2013-03-29 21:19:34
【问题描述】:
我正在尝试创建一个可通过 OSGi 控制台进行配置的 Java 类。我听说你可以通过 SCR 注释来做到这一点,但不完全确定如何。我已经掌握了大部分内容,但不确定要获取和发布什么以及如何在 JSP 中引用它。这是我目前所拥有的:
import org.apache.felix.scr.annotations.Properties;
import org.apache.felix.scr.annotations.Property;
import org.apache.felix.scr.annotations.sling.SlingServlet;
import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.SlingHttpServletResponse;
import org.apache.sling.api.servlets.SlingAllMethodsServlet;
import javax.servlet.ServletException;
import java.io.IOException;
@SlingServlet(
paths={"/somepath/"}
)
@Properties({
@Property(name="email.add", value="Email Info",propertyPrivate=false),
@Property(name="user.info",value="User Info", propertyPrivate=false)
})
public class WelcomeMessage extends SlingAllMethodsServlet
{
@Override
protected void doGet(SlingHttpServletRequest request, SlingHttpServletResponse response) throws ServletException, IOException
{
//Do something here
}
@Override
protected void doPost(SlingHttpServletRequest request, SlingHttpServletResponse response) throws ServletException, IOException
{
//Do something here
}
}
【问题讨论】:
-
这是 sling 特定的,需要 sling osgi 包才能工作。您还需要通过 scr maven 插件处理注释。如果您不需要 sling,请查看 Apache Http Servlet 桥以助您一臂之力。
-
感谢您的回复。抱歉,但我很困惑我不确定你通过 maven 插件处理注释是什么意思你有一个简单的例子吗?我已经安装了 Maven,但不确定处理注释是什么意思。抱歉,完整,我的意思是完整的新手。
标签: java sling osgi-bundle