2012-07-12 71 views
0

我写了一个简单的代码来显示使用jsp的XHTML模板的图像,但它不工作 但相同的是,当我使用jsp的HTML模板工作。 ...图片显示.. JSF

<?xml version="1.0" encoding="ISO-8859-1" ?> 
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
    pageEncoding="ISO-8859-1"%> 
<!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:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> 
<title>Car Details</title> 
</head> 
<body> 
<f:view> 
<h:graphicImage id="root" value="http://www.allbestwallpapers.com/tagwallpaper/convertible%20car-wallpapers.jpg"></h:graphicImage> 
</f:view> 
</body> 
</html> 

请帮助....

+0

应该没有scriplets,另请参阅http://stackoverflow.com/questions/4441713/migrating-from-jsf-1-2-to-jsf-2-0或使用新的JSP文件(xhtml,xml语法,JSP 2.0)模板 – Ravi 2012-07-12 16:00:29

回答

1

你混合JSP(foo.jsp)与Facelets的(foo.xhtml)。

JSP是JSF 1.x中的默认视图技术。它不是基于XML的。 Facelets是JSP的继承者,并且是自JSF 2.0以来的默认视图技术(并且JSP已被弃用)。 Facelets是基于XML的。这些xmlns XML名称空间声明在JSP中不起作用,但仅在Facelets中起作用。

.jsp扩展名的文件名重命名为.xhtml扩展名,并删除该JSP特定的@page声明,它将起作用。

+0

谷歌后得到它...任何方式谢谢... – zytham 2012-07-13 05:16:26