我有两个xhtml-s,一个包括另一个。我的问题是参数传递对我不起作用:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ice="http://www.icesoft.com/icefaces/component" >
<ui:include src="core-classic-layout.xhtml">
<ui:param name="css-basename" value="core-classic"></ui:param>
<ui:param name="css-themename" value="blue"></ui:param>
</ui:include>
</html>
和另一个core-classic-layout.xhtml是:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ice="http://www.icesoft.com/icefaces/component" >
<f:view locale="#{system.usedLocale}" >
<ice:loadBundle
basename="hu.gap.resources.messages"
var="msgs"/>
<head>
<title>#{msgs['ApplFrmTitle']}</title>
<ice:outputStyle href="./xmlhttp/css/rime/rime.css" />
<ice:outputStyle href="./xmlhttp/css/core/#{css-basename}-layout.css" />
<ice:outputStyle href="./xmlhttp/css/core/#{css-basename}-#{css-themename}.css" />
</head>
我的问题是当我导航到包含第二个xhtml的第一个xhtml时,浏览器会尝试加载0-layout.css ant 0-0.css文件。
答案 0 :(得分:0)
这将隐含地包含任何包含core-classic-layout.xhtml的布局。
<ice:outputStyle href="./xmlhttp/css/core/#{css-basename}-layout.css" />
<ice:outputStyle href="./xmlhttp/css/core/#{css-basename}-#{css-themename}.css" />
如果您不想加载布局,可以从core-classic-layout.xhtml中删除布局。
答案 1 :(得分:0)
“ - ”是一个算术运算符,所以当你写css-basename
它是css minus basename
时,它的计算结果为0.调用param cssBaseName将解决它。