ui:include src属性的EL在复合组件中被解析为null

时间:2012-01-04 11:32:04

标签: jsf-2 facelets composite-component

我有复合组件如下:

<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml" 
      xmlns:f="http://java.sun.com/jsf/core" 
      xmlns:cc="http://java.sun.com/jsf/composite" 
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:c="http://java.sun.com/jsp/jstl/core">
    <cc:interface>
        <cc:attribute name="path" shortDescription="Page Title" type="String"/>
    </cc:interface>
    <cc:implementation>
            <ui:include src="#{cc.attrs.path}"/>
    </cc:implementation>
</html>

以上代码的问题#{cc.attrs.path}被解析为null。如果src是硬编码的,则ui:include可以正常工作。

尝试使用#{cc.attrs.path}检查h:outputText并正确显示路径,这意味着仅在ui:include EL未解决的情况下。有什么帮助吗?

1 个答案:

答案 0 :(得分:0)

此代码在我的计算机上运行正常。 EL在任何情况下都得到解决,但我认为包含失败,因为您尝试包含的文件格式错误或不存在。

也许您可以告诉我们您尝试包含哪种文件,然后向我们提供此文件的一部分?