代码之家  ›  专栏  ›  技术社区  ›  Markos Fragkakis

JBoss Seam:injectin@Create method可能吗?

  •  2
  • Markos Fragkakis  · 技术社区  · 16 年前

    我似乎无法在@Create方法中注入Seam组件。我在文档中找不到任何不可能的提示,这将验证我是否犯了错误。

    是否可以在@Create中注入?

    干杯!

    1 回复  |  直到 15 年前
        1
  •  5
  •   Luca Molteni    16 年前

    是的,你可以。在构造函数中你不能使用它。

    import org.jboss.seam.Component;
    import org.jboss.seam.annotations.*;
    import org.jboss.seam.log.Log;
    
    @Name("foo")
    @AutoCreate
    public class Foo {
        @Logger Log log;
        @In Bar bar;
    
        @Create
        public void init()  {
            log.info("Init: #0", bar);
            log.info("Init: #0", Component.getInstance("bar"));
        }
    }
    
    
    
    
    import org.jboss.seam.annotations.AutoCreate;
    import org.jboss.seam.annotations.Name;
    
    @Name("bar")
    @AutoCreate
    public class Bar { }
    

    你是对的,很明显在 seam documentation

    有时你需要一个简单的原型:)