header icefaces 4.1 中丢失的元标记

header meta tag lost in icefaces 4.1

在我的页面 page.xhtml 我有一个 header 这样的

  <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
   <html xmlns="http://www.w3.org/1999/xhtml"
   xmlns:h="http://java.sun.com/jsf/html"
   xmlns:f="http://java.sun.com/jsf/core"
   xmlns:ace="http://www.icefaces.org/icefaces/components"
   xmlns:icecore="http://www.icefaces.org/icefaces/core"
   xmlns:ui="http://java.sun.com/jsf/facelets">
    <h:head>
   <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"></meta>

但是部署后我得到的是

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link href="/test/javax.faces.resource/jquery/ui/jquery-ui.css.jsf?ln=icefaces.ace&amp;v=4_1_0_160615"      

我使用的是icefaces 4.1.0 EE版本,应用部署在websphere 8.0.0.5下。

这个问题很可能是由 Websphere 门户特定库的类加载引起的。当它们被加载时,我们的代码将假定应用程序在门户环境中运行。那是当头部包含的元素被删除时(参见 ICE-11042 为什么我们有这种行为)。

我建议客户验证 Websphere 加载了哪些库。不加载门户特定的库应该可以解决此问题。