14:00:04,449 INFO [org.jboss.seam.servlet.SeamFilter] Initializing filter:
org.jboss.seam.servlet.characterEncodingFilter
14:00:04,450 INFO [org.jboss.seam.servlet.SeamFilter] Initializing filter:
org.jboss.seam.web.redirectFilter
14:00:04,451 INFO [org.jboss.seam.servlet.SeamFilter] Initializing filter:
org.jboss.seam.web.exceptionFilter
14:00:04,452 INFO [org.jboss.seam.servlet.SeamFilter] Initializing filter:
org.jboss.seam.web.multipartFilter
14:00:04,452 INFO [org.jboss.seam.servlet.SeamFilter] Initializing filter:
org.jboss.seam.web.identityFilter
14:00:04,453 INFO [org.jboss.seam.servlet.SeamFilter] Initializing filter:
org.jboss.seam.web.rewriteFilter
这是在JBoss 6上JBoss SEAM应用程序启动后打印的最后一行。
@Name("myStartup")
@Startup
@Scope(APPLICATION)
@BypassInterceptors
public class MyStartup {
@Create
public void create() {
System.out.println("SERVER STARTED SUCCESSFULLY");
}
}
我打算在SeamFilter初始化后打印上面的消息(在JBoss 6控制台上)。我该怎么做?
答案 0 :(得分:0)
您可以在普通组件上尝试此注释。删除此组件上的@Startup
。
@Observer({"org.jboss.seam.postInitialization", "org.jboss.seam.postReInitialization"})
public void create() {
System.out.println("SERVER STARTED SUCCESSFULLY");
}
答案 1 :(得分:0)
如果想法只是在所有接缝消息之后显示某些状态,则至少有两种方式:
首先使用Shervin的解决方案并在org.jboss.seam.servlet.Filter INFO
中禁止$JBOSS_HOME/server/<your-profile>/conf/jboss-log4j.xml
条消息:
<category name="org.jboss.seam.servlet.Filter">
<priority value="ERROR"/>
</category>
或实施过滤器:
@Scope(APPLICATION)
@Name("com.example.seam.myFilter")
@BypassInterceptors
@Filter(within={"org.jboss.seam.web.rewriteFilter"})
public class MyFilter implements Filter {
public void doFilter(ServletRequest request, ServletResponse response) throws IOException, ServletException {
chain.doFilter(request, response);
}
public void init(FilterConfig filterConfig) throws ServletException {
System.out.println("SERVER STARTED SUCCESSFULLY");
}
}