参数在ui:composite xhtml页面上始终为null

时间:2015-07-09 17:21:36

标签: jsf composite-component

我将参数传递给<ui:composite>页面作为提议的解决方案here。它在其他情况下完美地工作,但在这一个中,传递的参数始终是null。这是代码:

dados.xhtml - &gt;它位于resources / protocolo /

<?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   xmlns="http://www.w3.org/1999/xhtml"   
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:f="http://java.sun.com/jsf/core"
        xmlns:ui="http://java.sun.com/jsf/facelets"
        xmlns:composite="http://java.sun.com/jsf/composite"
        xmlns:p="http://primefaces.org/ui">

<composite:interface>
    <composite:attribute name="protocolo" />
</composite:interface>

<composite:implementation>
    <p:panel header="Protocolo #{protocolo.id}   |     #{protocolo.situacao.descricao}">
        <p:panelGrid style="text-align: center; width: 100%;" >
            <p:row>
                <p:column> Operação </p:column>
                <p:column> #{protocolo.operacao.descricao} </p:column>
            </p:row>

            <p:row>
                <p:column> Data entrada </p:column>
                <p:column>
                    <h:outputText value="#{protocolo.dataEntrada}">
                        <f:convertDateTime pattern="dd/MM/yyyy"/>
                    </h:outputText> 
                </p:column>
            </p:row>
            <br/>
        </p:panelGrid>
    </p:panel>
</composite:implementation>


</html>

这是我称之为复合页面的地方:

#{protocolo.id}
<protocolo:dados protocolo="#{protocolo}"/>

调用protocolo.id会返回实体的正确ID,但在复合内部,它会返回null。我正在使用这个xhtml中的其他复合页面,它运行得很好。

任何人都可以提供帮助?

0 个答案:

没有答案