我刚刚开始使用Seam,他们的日志模块看起来很有趣的http://docs.jboss.org/seam/3/solder/latest/reference/en-US/html/logging.html
有关我的测试示例,请参阅post底部的代码。
由于试图使用它,出现了一些问题:
@Inject Logger log,这看起来很简单,但是它在部署时抛出了一个异常:从注入普通记录器的@Inject Logger log开始,类型化的记录器看起来也相当巧妙。文档声称您应该使用不存在的@LogMessage注释。我猜想它被重命名为@Log,因为这似乎是可行的。要启用所有正常方法(信息、警告、错误等),让日志接口扩展BasicLogger似乎很容易,但是这个接口似乎没有得到正确的注释,因此在调用这些方法时没有任何实际记录(调用处理程序检查@Message注释,发现没有)。我是不是做错了什么,还是框架真的没有完成?在开发几个月后进入prod的系统时,我是否应该坚持正常的log4j?接口
@MessageLogger
public interface SessionLogger extends BasicLogger{
@Message("User %s logged in. Redirecting to %s.")
@Log(level= Level.INFO)
void login(String username, String to);
@Message("User %s logged out.")
void logout(String username);
}用法
@Inject SessionLogger log
...
log.login("username", "url");发布于 2012-06-15 22:41:19
请确保您正在执行的注释是Solder注释,而不是泛型注释。
发布于 2011-09-20 13:02:25
您的问题看起来像是Seam中包含的类的依赖问题。您确定依赖关系是满意的吗?
<dependency>
<groupId>org.jboss.seam.solder</groupId>
<artifactId>seam-solder</artifactId>
<version>${version.seam}</version>
</dependency>https://stackoverflow.com/questions/6492710
复制相似问题