なので、CQ5に取り組んでいます。バンドルされたコンポーネントをサービスとしてデプロイして、(sling からの) .inifinity.json 出力を CQ5 にフィルター処理および変更したいと考えています。
ビルドとデプロイができ、コンポーネントとバンドルの両方がアクティブになっています。ただし、ページまたは infinity.json を呼び出すと、ログに出力が表示されません。サービスが正しくインストールされていないのではないでしょうか? または他のサービスが私のサービスを実行する前に呼び出しを返しますか? わからない。ここに私のコードがあります:
package com.my.test;
import javax.servlet.*;
import java.io.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import aQute.bnd.annotation.component.*;
@Component(
provide=Filter.class,
immediate=true
)
public class TestFilter implements Filter {
private static final Logger LOGGER = LoggerFactory.getLogger(TestFilter.class);
private FilterConfig filterConfig;
public void init (FilterConfig filterConfig) {
LOGGER.info ("INIT .");
this.setFilterConfig(filterConfig);
}
public void destroy() {
LOGGER.info ("Destroy me NOW!!...");
}
public void doFilter (ServletRequest request, ServletResponse response, FilterChain chain){
try
{
LOGGER.info ("Within Simple Filter ... :) ");
LOGGER.info ("Filtering the Request ...");
chain.doFilter (request, response);
LOGGER.info ("Within Simple Filter ... ");
LOGGER.info ("Filtering the Response ...");
} catch (IOException io) {
LOGGER.info ("IOException raised in SimpleFilter");
} catch (ServletException se) {
LOGGER.info ("ServletException raised in SimpleFilter");
}
}
public FilterConfig getFilterConfig() {
return this.filterConfig;
}
public void setFilterConfig (FilterConfig filterConfig){
this.filterConfig = filterConfig;
}
}
注釈に欠けているものはありますか? または私がすべきだったことは何ですか?