CDI Bean not found from JSF page

大城市里の小女人 提交于 2019-12-11 07:54:43

问题


I have a simple xhtml page with an el expression. But this expression won't get resolved and no error is thrown.

test.xhtml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
        PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:p="http://primefaces.org/ui"
      xml:lang="en" lang="en">
<h:head>
    <title></title>
</h:head>
<h:body>
    test
#{ffs.count}
</h:body>
</html>

Cdi Bean

@Named("ffs")
public class Test implements Serializable {

    @PersistenceContext(type = PersistenceContextType.TRANSACTION)
    EntityManager em;


    @TransactionAttribute(TransactionAttributeType.REQUIRED)
    public int getCount() {
        Game game = new Game();
        game.setName("Test");
        game.setType(Game.Type.PC);

        em.persist(game);
        em.flush();



        System.out.println(em.createQuery("Select g from Game g").getResultList().size());

        return em.createQuery("Select g from Game g").getResultList().size();

    }
}

rendered HTML output

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head><link type="text/css" rel="stylesheet" href="/Games/faces/javax.faces.resource/theme.css?ln=primefaces-aristo" />
    <title></title></head><body>
    test

</body>
</html>

来源:https://stackoverflow.com/questions/17752938/cdi-bean-not-found-from-jsf-page

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!