2009-10-28 66 views
2

我想配置縫/ ehcache的從JBoss的網頁教程如下:縫緩存提供

http://docs.jboss.org/seam/2.1.2/reference/en-US/html/cache.html

我把project.ear的ehcache.1.2.3.jar/lib目錄並注入CacheProvider,但CacheProvider始終返回null。該文檔不顯示ehcache的任何附加配置,僅針對jboss緩存。

我可能做錯了什麼,不可能這麼容易:)。

除了放在/ lib下的jar,我創建了下面的縫組件測試:

@Scope(ScopeType.SESSION) 
@Name("cacheBean") 
public class CacheSeamBean implements java.io.Serializable { 

@In(required=false, create=true) 
private EntityManager em; 

@Logger 
private Log log; 

@In 
private Events events; 

@In CacheProvider cacheProvider; 

Boolean blLoaded = Boolean.FALSE; 

@Create 
public void buscar() { 

    if (!blLoaded){ 
    List<Parametro> lstParametro = em.createQuery("select p from Parametro p").getResultList(); 
    for (Parametro parametro : lstParametro){ 
    cacheProvider.put(parametro.getCodigo(), parametro.getValor()); 
    } 
    blLoaded= Boolean.TRUE; 
    } 
} 
} 

感謝

回答

2

添加到你的components.xml:

<components xmlns="http://jboss.com/products/seam/components" 
... 
      xmlns:cache="http://jboss.com/products/seam/cache" 
      xsi:schemaLocation= 
        "http://jboss.com/products/seam/core http://jboss.com/products/seam/core-2.1.xsd 
       http://jboss.com/products/seam/cache http://www.jboss.com/products/seam/cache-2.1.xsd"> 

... 
    <cache:eh-cache-provider/> 
... 
</components> 
+0

我添加上述在components.xml中的片段,它仍然不適合我。 – Joe 2010-06-08 05:54:31

+0

@Joshua你有類路徑中的ehcache jar嗎? (project.ear/lib)這就是你所需要的所有工具。 如果您有一個非默認的ehcache.xml,它也需要位於應用程序類路徑的根目錄(例如WEB-INF/classes) – Joff 2010-06-21 01:27:40

相關問題