刚开始学习JSF。所以我有xhtml文件:
<!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">
<head>
<title>JSF Tutorial!</title>
</head>
<body>
<h:outputLabel value="Hello World"></h:outputLabel>
#{helloWorld.message}
</body>
</html>
简单的豆子:
import javax.faces.bean.ManagedBean;
@ManagedBean(name = "helloWorld", eager = true)
public class HelloWorld {
public HelloWorld() {
System.out.println("HelloWorld started!");
}
public String getMessage() {
return "Hello World 2!";
}
}
当我在服务器上启动它时,我看到: 你好,世界!来自h:outputlabel,但没有来自#{helloWorld.message}。 另外,我没有在日志消息中看到bean被初始化。
似乎我的bean被忽略或找不到,但为什么?
答案 0 :(得分:-3)
将head
和body
更改为h:head
和h:body
,它会有效
编辑:这个答案是不正确的,即使是头部和身体,你的例子只是工作&#39;对我来说,Wildfly 8(Mojarra 2.2.5-jbossorg-3 20140128-1641)(以及PrimeFaces 5.1,OmniFaces 1.8)很奇怪,因为很久以前我确实遇到了同样的问题,答案就解决了。