”
<cc:implementation>
<p:outputLabel value="#{cc}"/>
<p> <p:commandButton value="Vedi lista file" actionListener="#{cc.researchFileInDirectory}" update="panelFileLog"/></p>
<h:panelGrid id="panelFileLog">
<p:dataTable var="file" rendered="#{cc.viewFileList}" binding="#{cc.listaFile}">
<p:column headerText="File" style="width:100px">
<h:outputText value="#{file.toString()}" />
</p:column>
<p:column headerText="Link" style="width:100px">
<p:commandLink id="downloadLink" value="download" ajax="false" actionListener="cc.downloadFile">
<p:fileDownload value="#{cc.file}" />
</p:commandLink>
</p:column>
</p:dataTable>
</h:panelGrid>
</cc:implementation>'
此页面中会调用此组件
<l:logFile />
它会加载文件列表,但是当我点击commandLink
时,它不会调用actionListener
方法,而是将我重定向到同一页面。
答案 0 :(得分:1)
使用StreamedContent
的每个组件在复合组件中都不起作用。有关详细说明,请阅读http://jsfcorner.blogspot.be/2012/11/advanced-primefaces-graphic-image.html。由于<p:fileDownload/>
是其中之一,因此您无法使用它。