java - 重写 Sling DefaultGetServlet.java

标签 java servlets aem sling

我正在开发一个servlet来执行一些特定于sling中的resourceType的逻辑,并将信息设置为可通过jsp访问的请求,然后将类似于 this answer 中提供的第一个解决方案向 jsp 发出请求.

这里有一些示例代码来代表我的情况:

@SlingServlet(
  resourceTypes="myapp/components/mycomponent",
  methods="GET",
  extensions={"html"}
)
...
  @Reference
  private ServletResolver serlvetResolver;

  protected void doGet(....) {
    setPropertiesToRequest();
    Servlet servlet = servletResolver.resolveServlet(resource, "....jsp");
    servlet.service(slingRequest, slingResponse);
    clearPropertiesFromRequest();
  }

因此,我注意到我失去了 sling 的选择器处理(我必须推出自己的更简单版本来确定要渲染哪个 jsp。 Full featured sling selector handling is described in more detail here )。我想联系堆栈溢出社区,询问通过剥夺请求的默认获取处理程序我可能还会错过什么。我已经扫描了source code但我认为可能还有更多事情发生。

其次,我对这种方法如何以及在何处影响请求解析的性能感兴趣。

谢谢,托马斯

最佳答案

用 Java 处理业务逻辑并委托(delegate)脚本进行渲染听起来像是最近发布的 Sling Models 的工作。 。使用它应该不需要实现您自己的选择器处理,因为这些不会影响模型选择,只会影响渲染脚本。

关于java - 重写 Sling DefaultGetServlet.java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24815873/

相关文章:

java - 通过 ajax 将数组传递给 servlet 给出 null 参数

java - 使用 servlet 时如何使用 system.out.println

java - 如何从struts bean中获取值?

java - com.day.util 的 Maven 依赖项

java - 我们可以使用 AEM 版本 6.4.2 的 Archetype 22 吗?

aem - cq5 AEM 'pathfield' 调整大小

java - 使用 java 运行 Hadoop map reduce 作业时抛出空指针异常

java - Android - 强制横向显示纵向 View

java - Web 工具平台与 Java EE 的 Eclipse

java - 有没有办法缓存 Spring <mvc :resources> files in memory?