我正在尝试运行一个简单的Lift示例,我遇到了一个奇怪的问题。我正在使用Sonatype样本列表项目here。我略微修改了HTML,但它最初也没有工作。我遇到的问题是,当我运行本地jetty服务器并尝试访问http://localhost:8080时,它在Firefox 3.6.10中显示为XML而不是HTML。注意,它在IE8中显示正常,但IE8中的Content-Type是“text / html”。我认为Firefox出于某种原因不喜欢Content-Type“application / xhtml + xml”。 Firefox中的消息说:
此XML文件似乎没有 任何与之相关的风格信息 它。文档树如下所示。
以下是Firebug的响应标头:
Expires Thu, 16 Sep 2010 03:55:04 UTC
Content-Length 558
Cache-Control no-cache; private; no-store
Content-Type application/xhtml+xml; charset=utf-8
Pragma no-cache
Date Thu, 16 Sep 2010 03:55:04 UTC
X-Lift-Version 2.0-scala280-SNAPSHOT
Server Jetty(6.1.22)
..和实际回复:
<?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>
<head>
<title>Lift Test</title>
</head>
<body>
<h2>Welcome to your project!</h2>
<p>
<span>Welcome to toto01 at Wed Sep 15 20:55:04 PDT 2010</span>
</p>
<script type="text/javascript" src="/ajax_request/liftAjax.js"></script>
<script type="text/javascript">
// <![CDATA[
var lift_page = "F586508075515C1K";
// ]]>
</script>
</body>
</html>
关于出了什么问题的任何想法?如果出现问题,我如何更改Lift for Firefox中的内容类型?
答案 0 :(得分:8)
好吧,看起来这个问题与没有xmlns属性的元素有关。将XHTML更改为下面后,它的内容类型为“application / xhtml + xml”:
<html xmlns="http://www.w3.org/1999/xhtml">
答案 1 :(得分:1)
问题应该在于使用application/xhtml+xml
内容类型和XHTML过渡dtd。