0

我编写了一个简单的代码来使用Jsp XHTML 模板显示图像,但它不工作,但当我使用Jsp HTML 模板时同样工作。...

<?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>

请帮忙....

4

1 回答 1

1

您将 JSP ( foo.jsp) 与 Facelets ( foo.xhtml) 混合在一起。

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

将文件名从.jsp扩展名重命名为扩展.xhtml名,去掉那个 JSP 特定的@page声明,它就可以工作了。

于 2012-07-13T01:48:26.020 回答