Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Nome do autor no carousel

No carousel gostaria de exibir o nome do autor do livro, como seria? Tentei algumas formas aqui mas não deram certo.

Segue abaixo o código do meu carousel

<p:carousel value="#{livroBean.livros}"
                headerText="Livros disponiveis" var="livro"
                itemStyle="text-align:center" responsive="true">
                <p:panelGrid columns="2" style="width:100%;margin:10px 0px"
                    columnClasses="label,value" layout="grid"
                    styleClass="ui-panelgrid-blank">
                    <f:facet name="header">
                        "#{livro.titulo}"
                    </f:facet>

                    <h:outputText value="Id:" />
                    <h:outputText value="#{livro.id}" />

                    <h:outputText value="ISBN:" />
                    <h:outputText value="#{livro.isbn}" />

                    <h:outputText value="Data lancamento:" />
                    <h:outputText value="#{livro.dataLancamento.time}">
                        <f:convertDateTime pattern="dd/MM/yyyy" />
                    </h:outputText>

                    <h:outputText value="Preço" />
                    <h:outputText value="R$#{livro.preco}" />
                </p:panelGrid>

                <f:facet name="footer">
                    Total de livros: #{fn:length(livroBean.livros)}
                </f:facet>
            </p:carousel>
4 respostas

Opa, tem um método getAutor() no Livro? vc poderia usar o livro.getAutor().getNome() ali no header. não resolve?

Então na verdade tem uma lista de autores tentei realizando utilizando um datatable dentro do carousel mas nao funcionou.

                    <h:outputText value="Nome:" />
                    <h:dataTable value="#{livro.autores}" var="autor" id="tabelaAutor">
                        <h:outputText value="#{autor.nome}" />
                    </h:dataTable>
solução!

Depois de algumas tentativas consegui algo rs, substitui h:dataTable por p:dataList para quem quiser utilizar fiz desta forma segue abaixo o exemplo.

Caso alguém possua uma alternativa melhor será bem-vinda.

                    <h:outputText value="Autores:" />
                    <p:dataList value="#{livro.autores}" var="autor" id="tabelaAutor">
                        <h:outputText value="#{autor.nome}" />
                    </p:dataList>

Ficou ótimo!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software