Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''primefaces''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Todas as áreas do Fórum

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento e Banco de Dados
    • HTML e CSS
    • Java
    • Javascript
    • .NET
    • PHP
    • Python
    • Ruby
    • Mobile
    • Ambientes de Desenvolvimento
    • Arquitetura e Métodos Ágeis
    • Banco de Dados
    • DevOps
    • Desenvolvimento de Games
    • E-Commerce e Pagamentos Online
    • SEO e Otimizações
    • WordPress
    • Algoritmos & Outras Tecnologias
  • Design e Produto
    • Fotografia
    • Photoshop
    • Design de interfaces e UX
    • Edição/Produção de Vídeos
    • Marketing Online
    • Desenho, Ilustração e 3D
  • Entretenimento e uso pessoal
    • Geral
    • Segurança & Malwares
    • Gadgets e wearable
    • Softwares e Apps
    • Entretenimento

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Encontrado 12 registros

  1. Estou desenvolvendo um sisteminha em, pra fins de conhecimento. Estou usando eclipse, photon ,postgres, hibernate, maven e primefaces. Ele está gravando os dados normalmente no banco de dados. A data e hora ele esta pegando automaticamente do sistema. Até ai esta blz. O problema está qdo atualizo os dados, a data e a hora nao estao atualizando, porem outros dados estao. Segue os dados: meu domain: package br.pro.silvio.prati.domain; import java.util.Date; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Temporal; import javax.persistence.TemporalType; @SuppressWarnings("serial") @Entity public class Area extends GenericDomain { @Column(name = "nome",length =20, nullable = false) private String nome; @Column( name = "status",length =10) private String status; @Column(name = "cadpor",length =20) private String cadpor; @Column(name ="datcad") @Temporal(TemporalType.DATE) private Date datcad = new java.sql.Date(System.currentTimeMillis()); @Column(name = "hora") @Temporal(TemporalType.TIME) private Date hora =new java.sql.Date(System.currentTimeMillis()); public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getStatus() { return status; } public void setStatus(String status) { this.status = status; } public String getCadpor() { `return cadpor;` } public void setCadpor(String cadpor) { this.cadpor = cadpor; } public Date getDatcad() { return datcad; } public void setDatcad(Date datcad) { this.datcad = datcad; } public Date getHora() { return hora; } public void setHora(Date hora) { this.hora = hora; } } meu dao generico: package br.pro.silvio.prati.dao; import java.lang.reflect.ParameterizedType; import java.util.List; import org.hibernate.Criteria; import org.hibernate.Session; import org.hibernate.Transaction; import org.hibernate.criterion.Restrictions; import br.pro.silvio.prati.util.HibernateUtil; public class GenericDAO<Entidade> { private Class<Entidade> classe; @SuppressWarnings("unchecked") public GenericDAO() { this.classe = (Class<Entidade>) ((ParameterizedType) getClass().getGenericSuperclass()) .getActualTypeArguments()[0]; } public void salvar(Entidade entidade) { Session sessao = HibernateUtil.getFabricaDeSessoes().openSession(); Transaction transacao = null; try { transacao = sessao.beginTransaction(); sessao.save(entidade); transacao.commit(); } catch (RuntimeException erro) { if (transacao != null) { transacao.rollback(); } throw erro; } finally { sessao.close(); } } @SuppressWarnings("unchecked") public List<Entidade> listar() { Session sessao = HibernateUtil.getFabricaDeSessoes().openSession(); try { Criteria consulta = sessao.createCriteria(classe); List<Entidade> resultado = consulta.list(); return resultado; } catch (RuntimeException erro) { throw erro; } finally { sessao.close(); } } @SuppressWarnings("unchecked") public Entidade buscar(Long codigo) { Session sessao = HibernateUtil.getFabricaDeSessoes().openSession(); try { Criteria consulta = sessao.createCriteria(classe); consulta.add(Restrictions.idEq(codigo)); Entidade resultado = (Entidade) consulta.uniqueResult(); return resultado; } catch (RuntimeException erro) { throw erro; } finally { sessao.close(); } } public void excluir(Entidade entidade) { Session sessao = HibernateUtil.getFabricaDeSessoes().openSession(); Transaction transacao = null; try { transacao = sessao.beginTransaction(); sessao.delete(entidade); transacao.commit(); } catch (RuntimeException erro) { if (transacao != null) { transacao.rollback(); } throw erro; } finally { sessao.close(); } } public void editar(Entidade entidade) { Session sessao = HibernateUtil.getFabricaDeSessoes().openSession(); Transaction transacao = null; try { transacao = sessao.beginTransaction(); sessao.update(entidade); transacao.commit(); } catch (RuntimeException erro) { if (transacao != null) { transacao.rollback(); } throw erro; } finally { sessao.close(); } } public void merge(Entidade entidade) { Session sessao = HibernateUtil.getFabricaDeSessoes().openSession(); Transaction transacao = null; try { transacao = sessao.beginTransaction(); sessao.merge(entidade); transacao.commit(); } catch (RuntimeException erro) { if (transacao != null) { transacao.rollback(); } throw erro; } finally { sessao.close(); } } } meu dao: package br.pro.silvio.prati.dao; import br.pro.silvio.prati.domain.Area; public class AreaDAO extends GenericDAO<Area>{ } meu bean: package br.pro.silvio.prati.bean; import java.io.Serializable; import java.util.List; import javax.annotation.PostConstruct; import javax.faces.bean.ManagedBean; import javax.faces.bean.ViewScoped; import javax.faces.event.ActionEvent; import org.omnifaces.util.Messages; import br.pro.silvio.prati.dao.AreaDAO; import br.pro.silvio.prati.domain.Area; @SuppressWarnings("serial") @ManagedBean @ViewScoped public class AreaBean implements Serializable { private Area area; private List<Area> areas; public Area getArea() { return area; } public void setArea(Area area) { this.area = area; } public List<Area> getAreas() { return areas; } public void setAreas(List<Area> areas) { this.areas = areas; } @PostConstruct public void listar() { try { AreaDAO areaDAO = new AreaDAO(); areas = areaDAO.listar(); } catch (RuntimeException erro) { Messages.addGlobalError("Ocorreu um erro ao tentar listar as AREAS"); erro.printStackTrace(); } } public void novo() { area = new Area(); } public void salvar() { try { AreaDAO areaDAO = new AreaDAO(); areaDAO.merge(area); novo(); areas = areaDAO.listar(); Messages.addGlobalInfo("Area salvo com sucesso"); } catch (RuntimeException erro) { Messages.addGlobalError("Ocorreu um erro ao tentar salvar a AREA"); erro.printStackTrace(); } } public void excluir(ActionEvent evento) { try { area = (Area) evento.getComponent().getAttributes().get("areaSelecionado"); AreaDAO areaDAO = new AreaDAO(); areaDAO.excluir(area); areas = areaDAO.listar(); Messages.addGlobalInfo("Estado removido com sucesso"); } catch (RuntimeException erro) { Messages.addFlashGlobalError("Ocorreu um erro ao tentar remover o estado"); erro.printStackTrace(); } } public void editar(ActionEvent evento){ area = (Area) evento.getComponent().getAttributes().get("areaSelecionado"); } } meu xhtml: <?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://xmlns.jcp.org/jsf/html" xmlns:f="http://xmlns.jcp.org/jsf/core" xmlns:p="http://primefaces.org/ui"> <h:head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Are</title> </h:head> <h:body> <p:growl id="mensagem" /> <h:form id="formListagem"> <p:panel header="AREA - Listagem"> <p:dataTable id="tabela" emptyMessage="Nenhum registro encontrado." paginator="true" value="#{areaBean.areas}" var="item" rows="8"> <f:facet name="header"> <p:commandButton value="Novo" oncomplete="PF('dialogo').show();" actionListener="#{areaBean.novo}" update=":formCadastro:painel"> <f:actionListener type="org.omnifaces.eventlistener.ResetInputAjaxActionListener" /> </p:commandButton> </f:facet> <p:column headerText="Código" sortBy="#{item.codigo}" filterBy="#{item.codigo}"> <h:outputText value="#{item.codigo}" /> </p:column> <p:column headerText="Descricao" sortBy="#{item.nome}" filterBy="#{item.nome}"> <h:outputText value="#{item.nome}" /> </p:column> <p:column headerText="Status" sortBy="#{item.status}" filterBy="#{item.status}"> <h:outputText value="#{item.status}" /> </p:column> <p:column headerText="Cadastrado por" sortBy="#{item.cadpor}" filterBy="#{item.cadpor}"> <h:outputText value="#{item.cadpor}" /> </p:column> <p:column headerText="Data" sortBy="#{item.datcad}" filterBy="#{item.datcad}"> <h:outputText value="#{item.datcad}"> <f:convertDateTime locale="pt_BR" /> </h:outputText> </p:column> <p:column headerText="Hora"> <h:outputText value="#{item.hora}" /> </p:column> <p:column headerText="Opções"> <p:commandButton icon="ui-icon-trash" actionListener="#{areaBean.excluir}" update=":mensagem :formListagem:tabela"> <p:confirm header="Confirmação" message="Deseja excluir 'AREA'?" icon="ui-icon-alert" /> <f:attribute name="areaSelecionado" value="#{item}" /> </p:commandButton> <p:commandButton icon="ui-icon-pencil" actionListener="#{areaBean.editar}" update=":formCadastro:painel" oncomplete="PF('dialogo').show();"> <f:attribute name="areaSelecionado" value="#{item}" /> <f:actionListener type="org.omnifaces.eventlistener.ResetInputAjaxActionListener" /> </p:commandButton> </p:column> </p:dataTable> <p:confirmDialog global="true" showEffect="fade" hideEffect="fade"> <p:commandButton value="Sim" type="button" styleClass="ui-confirmdialog-yes" icon="ui-icon-check" /> <p:commandButton value="Não" type="button" styleClass="ui-confirmdialog-no" icon="ui-icon-close" /> </p:confirmDialog> </p:panel> </h:form> <p:dialog header="AREA - Cadastro" widgetVar="dialogo" draggable="false" resizable="false" modal="true" closable="false"> <h:form id="formCadastro"> <h:panelGrid id="painel" columns="2"> <p:outputLabel value="Descrição:" /> <p:inputText maxlength="30" size="20" value="#{areaBean.area.nome}" required="true" requiredMessage="O campo Descricao é obrigatório!" /> <p:outputLabel value="Situação:" /> <p:selectOneMenu value="#{areaBean.area.status}" required="true" requiredMessage="O campo Situacao é obrigatório!"> <f:selectItem itemValue="" itemLabel="Selecione.." /> <f:selectItem itemValue="Ativo" itemLabel="Ativo" /> <f:selectItem itemValue="Inativo" itemLabel="Inativo" /> </p:selectOneMenu> </h:panelGrid> <h:panelGrid columns="2"> <p:commandButton value="Salvar" actionListener="#{areaBean.salvar}" update=":mensagem :formCadastro:painel :formListagem:tabela" /> <p:commandButton value="Fechar" oncomplete="PF('dialogo').hide();" /> </h:panelGrid> </h:form> </p:dialog> </h:body> </html> ele grava de boa a data e a hora , mas quando é pra atualizar, só atualiza outros campos mas não a data e a hora. o que pode ser?
  2. gabriel.sistemasti

    JSF primefaces marcar opção e aparecer um modal ao marcar

    pessoal gostaria de fazer o seguinte: tenho um selectBooleanCheckbox que ao selecionar ele (selecionado = true) ele aparecesse um modal com um contratinho ... para a pessoa ler, alguem pode me ajudar como faço isto? m não consigo fazer aparecer o modal ao selecionar ocheck box meu SelectBooleanCheckbox : <h:selectBooleanCheckbox value="#{operacaoFinanciadaBean.tarifaCadastro}" id="checkTarifaC"> </h:selectBooleanCheckbox> segue abaixo imagem de como quero que seja , mais ou menos para voces entenderem minha ideia
  3. vanermiranda

    Tabela temporária primefaces

    Boa tarde companheiros. Gostaria de saber se é possível usar uma DataTable primefaces para armazenar temporariamente os dados inseridos através de um formulário, antes de persistir no banco. Tipo assim. Eu tenho um formulário de cadastro, ele jogar em uma tabela temporária, e depois, ao clicar em salvar, salva todos os dados cadastrados no banco. Desde já agradeço.
  4. Boa tarde colegas. Estou iniciando na área de programação deparei com um problema. Tenho um formulário de cadastro onde quero cadastrar uma empresa e todos os seus endereços . Eu estive pensando naqueles botões (+) que adiciona campos, mas nesse caso eu precisaria de clonar toda a parte de endereços. E se eu fosse editar, buscaria a empresa, e o formulário me possibilitaria cadastrar novos endereços Gostaria da opinião de vocês de como proceder. A ideia é parecida com a duplicação de campos que encontrei no fórum, mas para vários campos: https://forum.imasters.com.br/topic/325267-resolvido-adicionar-remover-campos-dinamicamente/ Estou usando o Primefaces e alguns me sugeriram criar uma DataTable onde através de um formulário eu vou cadastrando esses endereços que depois são persistidos no banco, mas não estou conseguindo. Agradeço desde já. Abraço a todos. Vaner Miranda
  5. luansilva71

    Wizard do primefaces pula de tab sem validar campos

    Criei uma função javascript para validar campos do formulário composto pelo componente <p:wizard> do Primefaces. A função é chamada através do evento onnext="" do <p:wizard>, ou seja, somente quando a pessoa clica em próximo (para ir para a próxima tab). O problema é que a minha função javascript ela não consegue fazer com que o <p:wizard> não pule a tab se as condições não forem satisfeitas. function onnext() { var nome = document.getElementById('nome'); var cpf = document.getElementById('cpf'); if (nome.value === '') { alert('Por favor preencha o campo nome'); nome.focus; return false; } else if (cpf.value === '') { alert('Por favor preencha o campo cpf'); cpf.focus; return false; } return true;} <p:wizard nextLabel="Próximo" onnext="onnext();" flowListener="#{alunoBean.onFlowProcess}"> <p:tab title="Dados Pessoais"> <p:panel header="Dados Pessoais"> <p:messages /> <h:panelGrid columns="2"> <p:outputLabel value="Nome Completo: " for="nome" /> <p:inputText id="nome" value="#{alunoBean.aluno.nome}" /> <p:outputLabel for="cpf" value="CPF: "/> <p:inputText id="cpf" value="#{alunoBean.aluno.cpf}" /> </h:panelGrid> </p:panel> </p:tab> <p:tab title="Dados Bancários"> </p:tab> <p:tab title="Dados Familiares"> </p:tab> </p:wizard> Com esse javascript aí, se você não preencher os campos e clicar em próximo, ele mostra o `alert('');` e já pula pra próxima tab. A partir dai você só consegue voltar, não consegue pular pra próxima tab!
  6. luansilva71

    Trocar classe de input quando estiver preenchido

    Estou fazendo um formulário utilizando primefaces, e queria que meu input trocasse de classe quando estivesse preenchido, só voltando a classe anterior caso o usuário apagasse o conteúdo. Isso é para fazer com que o outputLabel saia de dentro do input e fique vísivel conforme a figura que anexei. A primeira figura é como é inicialmente; A segunda figura é como é pra ficar; A terceira é como está ficando. Obs: não estou usando jquery, se for só o javascript puro é melhor
  7. rodrigomarden

    Problema com horário de verão no schedule primefaces

    Criei uma agenda utilizando o schedule-primefaces, mas quando chega o horário de verão essa agenda fica toda bagunçada. Em alguns outros tópicos, vi a respeito de configurar o horário no java para que se utilize o nosso GMT-3, mas não entendi muito bem como fazer. Alguém poderia me ajudar com uma solução direcionada ao schedule? Abaixo está o código da minha página, se precisar de algum outro código é só informar que eu posto. Obrigado. <?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:p="http://primefaces.org/ui" xmlns:f="http://java.sun.com/jsf/core"> <h:head> <title>Agenda</title> </h:head> <h:body> <h:form id="form"> <script language="javascript"> PrimeFaces.locales['pt'] = { closeText: 'Fechar', prevText: 'Anterior', nextText: 'Próximo', currentText: 'Começo', monthNames: ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'], monthNamesShort: ['Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez'], dayNames: ['Domingo', 'Segunda', 'Terça', 'Quarta', 'Quinta', 'Sexta', 'Sábado'], dayNamesShort: ['Dom', 'Seg', 'Ter', 'Qua', 'Qui', '---', 'Sáb'], dayNamesMin: ['D', 'S', 'T', 'Q', 'Q', 'S', 'S'], weekHeader: 'Semana', firstDay: 1, isRTL: false, showMonthAfterYear: false, yearSuffix: '', timeOnlyTitle: 'Só Horas', timeText: 'Tempo', hourText: 'Hora', minuteText: 'Minuto', secondText: 'Segundo', currentText: 'Data Atual', ampm: false, month: 'Mês', week: 'Semana', day: 'Dia', allDayText: 'Todo Dia' }; </script> <p:growl id="messages" showDetail="true" /> <h:panelGrid columns="3"> <p:commandButton value="Cadastrar Responsável" action="#{agendaController.cadastrarResponsavel()}" ajax="false"/> <p:commandButton value="Cadastrar Regional" action="#{agendaController.cadastrarRegional()}" ajax="false"/> <p:commandButton value="Cadastrar Resp / Reg" action="#{agendaController.juntarResponsavelRegional()}" ajax="false"/> <p:commandButton value="Relatórios" action="#{agendaController.gerarRelatorios()}" ajax="false"/> <p:commandButton value="Fechar" action="#{agendaController.redirect()}" ajax="false"/> </h:panelGrid> <p:schedule id="agenda" value="#{agendaController['eventModel']}" widgetVar="agenda" locale="pt"> <p:ajax event="dateSelect" listener="#{agendaController.onDateSelect}" update="detalhes" oncomplete="eventDialog.show()"/> <p:ajax event="eventSelect" listener="#{agendaController.onEventSelect}" update="editPanel" oncomplete="editDialog.show()" /> <p:ajax event="eventMove" listener="#{agendaController.onEventMove}" update="messages" /> <p:ajax event="eventResize" listener="#{agendaController.onEventResize}" update="messages" /> </p:schedule> <p:dialog id="editDialog" widgetVar="editDialog" header="Agendamento" showEffect="clip" hideEffect="clip"> <p:panelGrid id="editPanel" columns="2"> <h:outputText value="Responsável:"/> <h:outputText id="responsavel_nome_out" value="#{agendaController.agenda.origem.regionalHasResponsavel.responsavel.nome}"/> <h:outputText value="Regional:"/> <h:outputText id="origem_out" value="#{agendaController.agenda.origem.regionalHasResponsavel.regional.nome}"/> <h:outputText value="Qtde. caixa:"/> <h:outputText id="qtde_caixa_out" value="#{agendaController.agenda.origem.qtdeCaixa}"/> <h:outputText value="Qtde. equipamento:"/> <h:outputText id="qtde_equip_out" value="#{agendaController.agenda.origem.qtdeEquipamento}"/> </p:panelGrid> <p:commandButton id="deleteButton" actionListener="#{agendaController.deleteEvent}" value="Deletar" update="messages" oncomplete="editDialog.hide();agenda.update();" onclick="editDialog.hide();"/> </p:dialog> <p:dialog id="eventDialog" widgetVar="eventDialog" header="Agendamento" showEffect="clip" hideEffect="clip"> <p:panelGrid id="detalhes" columns="2"> <p:outputLabel for="responsavel_nome" value="Responsável:"/> <p:selectOneMenu id="responsavel_nome" value="#{agendaController.responsavel}" converter="responsavelConverter"> <p:ajax event="change" listener="#{agendaController.updateRegionalPorResponsavel()}" update="origem, messages"/> <f:selectItems value="#{agendaController.responsaveis}"/> </p:selectOneMenu> <p:outputLabel for="origem" value="Regional:"/> <p:selectOneMenu id="origem" value="#{agendaController.hasResponsavel}" converter="hasResponsavelConverter"> <f:selectItems value="#{agendaController.regionalByResponsavel}"/> </p:selectOneMenu> <p:outputLabel for="qtde_caixa" value="Qtde. caixa:"/> <p:inputText id="qtde_caixa" value="#{agendaController.agenda.origem.qtdeCaixa}" required="true" requiredMessage="A quantidade de caixas é obrigatória." size="5"/> <p:outputLabel for="qtde_equip" value="Qtde. equipamento:"/> <p:inputText id="qtde_equip" value="#{agendaController.agenda.origem.qtdeEquipamento}" required="true" requiredMessage="A quantidade de equipamentos é obrigatória." size="5"/> </p:panelGrid> <h:panelGrid columns="3"> <p:commandButton type="reset" value="Resetar campos" /> <p:commandButton id="saveButton" value="Salvar" actionListener="#{agendaController.addEvent}" update="messages" oncomplete="agenda.update();eventDialog.hide();" onclick="eventDialog.hide();"/> </h:panelGrid> </p:dialog> <p:blockUI block="form" trigger="saveButton"> LOADING<br /> <p:graphicImage value="/images/ajax-loader.gif"/> </p:blockUI> <p:blockUI block="form" trigger="saveButton"> LOADING<br /> <p:graphicImage value="/images/ajax-loader.gif"/> </p:blockUI> <p:blockUI block="form" trigger="deleteButton"> LOADING<br /> <p:graphicImage value="/images/ajax-loader.gif"/> </p:blockUI> </h:form> </h:body> </html>
  8. Galera, estou tentando mudar a cor de um componente do primefaces (schedule/agenda) dependendo de um valor que vem do banco de dados, não consegui achar nada a respeito disso. Eu já consegui alterar a cor do componente através de CSS, porém muda todos e não com a condição que eu quero. <p:schedule id="agenda" value="#{agendaController['eventModel']}" widgetVar="agenda" locale="pt" > <p:ajax event="dateSelect" listener="#{agendaController.onDateSelect}" update="detalhes" oncomplete="eventDialog.show()" /> <p:ajax event="eventSelect" listener="#{agendaController.onEventSelect}" update="editPanel" oncomplete="editDialog.show()" /> <p:ajax event="eventMove" listener="#{agendaController.onEventMove}" update="messages" /> <p:ajax event="eventResize" listener="#{agendaController.onEventResize}" update="messages" /> </p:schedule> No caso exatamente nesse componente acima. Eu instancio o css no head <link type="text/css" rel="stylesheet" href="corDeFundo.css" /> .fc-event-inner fc-event-skin{ background-color: #FF3535; border-bottom-color: #FF3535; } .fc-event-skin{ background-color: #FF3535; border-bottom-color: #FF3535; } Só que eu precisava alterar entre duas cores, (azul e vermelho), dependendo de uma string que vem do BD, (Aguardando para vermelho, Aprovado para azul) Já pesquisei muito, mas nada me ajudou, alguém da uma luz ai. Vlw
  9. Gostaria de que os eventos listados na minha agenda fossem diferenciados por cores, (vermelho para aguardando e azul para aprovado), eu já consegui criar o botão para aprovar dentro de cada evento comunicando com o banco de dados. Segue o código: <?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:p="http://primefaces.org/ui" xmlns:f="http://java.sun.com/jsf/core"> <h:head> <title>Agenda</title> </h:head> <h:body> <h:form id="form"> <script language="javascript"> PrimeFaces.locales['pt'] = { closeText: 'Fechar', prevText: 'Anterior', nextText: 'Próximo', currentText: 'Começo', monthNames: ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'], monthNamesShort: ['Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez'], dayNames: ['Domingo', 'Segunda', 'Terça', 'Quarta', 'Quinta', 'Sexta', 'Sábado'], dayNamesShort: ['Dom', 'Seg', 'Ter', 'Qua', 'Qui', '---', 'Sáb'], dayNamesMin: ['D', 'S', 'T', 'Q', 'Q', 'S', 'S'], weekHeader: 'Semana', firstDay: 1, isRTL: false, showMonthAfterYear: false, yearSuffix: '', timeOnlyTitle: 'Só Horas', timeText: 'Tempo', hourText: 'Hora', minuteText: 'Minuto', secondText: 'Segundo', currentText: 'Data Atual', ampm: false, month: 'Mês', week: 'Semana', day: 'Dia', allDayText: 'Todo Dia' }; </script> <p:growl id="messages" showDetail="true" /> <h:panelGrid columns="3"> <p:commandButton value="Cadastrar Responsável" action="#{agendaController.cadastrarResponsavel()}" ajax="false"/> <p:commandButton value="Cadastrar Regional" action="#{agendaController.cadastrarRegional()}" ajax="false"/> <p:commandButton value="Cadastrar Resp / Reg" action="#{agendaController.juntarResponsavelRegional()}" ajax="false"/> <p:commandButton value="Relatórios" action="#{agendaController.gerarRelatorios()}" ajax="false"/> <p:commandButton value="Fechar" action="#{agendaController.redirect()}" ajax="false"/> </h:panelGrid> <p:schedule id="agenda" value="#{agendaController['eventModel']}" widgetVar="agenda" locale="pt"> <p:ajax event="dateSelect" listener="#{agendaController.onDateSelect}" update="detalhes" oncomplete="eventDialog.show()" /> <p:ajax event="eventSelect" listener="#{agendaController.onEventSelect}" update="editPanel" oncomplete="editDialog.show()" /> <p:ajax event="eventMove" listener="#{agendaController.onEventMove}" update="messages" /> <p:ajax event="eventResize" listener="#{agendaController.onEventResize}" update="messages" /> </p:schedule> <p:dialog id="editDialog" widgetVar="editDialog" header="Agendamento" showEffect="clip" hideEffect="clip"> <p:panelGrid id="editPanel" columns="2"> <h:outputText value="Responsável:"/> <h:outputText id="responsavel_nome_out" value="#{agendaController.agenda.origem.regionalHasResponsavel.responsavel.nome}"/> <h:outputText value="Regional:"/> <h:outputText id="origem_out" value="#{agendaController.agenda.origem.regionalHasResponsavel.regional.nome}"/> <h:outputText value="Qtde. caixa:"/> <h:outputText id="qtde_caixa_out" value="#{agendaController.agenda.origem.qtdeCaixa}"/> <h:outputText value="Qtde. equipamento:"/> <h:outputText id="qtde_equip_out" value="#{agendaController.agenda.origem.qtdeEquipamento}"/> </p:panelGrid> <p:commandButton id="deleteButton" actionListener="#{agendaController.deleteEvent}" value="Deletar" update="messages" oncomplete="editDialog.hide();agenda.update();" onclick="editDialog.hide();"/> <p:commandButton id="aprovacaoButton" actionListener="#{agendaController.aprovacaoEvent}" value="Aprovar" update="messages" oncomplete="editDialog.hide();agenda.update();" onclick="editDialog.hide();"/> </p:dialog> <p:dialog id="eventDialog" widgetVar="eventDialog" header="Agendamento" showEffect="clip" hideEffect="clip"> <p:panelGrid id="detalhes" columns="2"> <p:outputLabel for="responsavel_nome" value="Responsável:"/> <p:selectOneMenu id="responsavel_nome" value="#{agendaController.responsavel}" converter="responsavelConverter"> <p:ajax event="change" listener="#{agendaController.updateRegionalPorResponsavel()}" update="origem, messages"/> <f:selectItems value="#{agendaController.responsaveis}"/> </p:selectOneMenu> <p:outputLabel for="origem" value="Regional:"/> <p:selectOneMenu id="origem" value="#{agendaController.hasResponsavel}" converter="hasResponsavelConverter"> <f:selectItems value="#{agendaController.regionalByResponsavel}"/> </p:selectOneMenu> <p:outputLabel for="qtde_caixa" value="Qtde. caixa:"/> <p:inputText id="qtde_caixa" value="#{agendaController.agenda.origem.qtdeCaixa}" required="true" requiredMessage="A quantidade de caixas é obrigatória." size="5"/> <p:outputLabel for="qtde_equip" value="Qtde. equipamento:"/> <p:inputText id="qtde_equip" value="#{agendaController.agenda.origem.qtdeEquipamento}" required="true" requiredMessage="A quantidade de equipamentos é obrigatória." size="5"/> </p:panelGrid> <h:panelGrid columns="3"> <p:commandButton type="reset" value="Resetar campos" /> <p:commandButton id="saveButton" value="Salvar" actionListener="#{agendaController.addEvent}" update="messages" oncomplete="agenda.update();eventDialog.hide();" onclick="eventDialog.hide();"/> </h:panelGrid> </p:dialog> <p:blockUI block="form" trigger="saveButton"> LOADING<br /> <p:graphicImage value="/images/ajax-loader.gif"/> </p:blockUI> <p:blockUI block="form" trigger="saveButton"> LOADING<br /> <p:graphicImage value="/images/ajax-loader.gif"/> </p:blockUI> <p:blockUI block="form" trigger="deleteButton"> LOADING<br /> <p:graphicImage value="/images/ajax-loader.gif"/> </p:blockUI> </h:form> </h:body> </html>
  10. WHd

    Criar barra de rolagem

    E aí pessoal, beleza? Seguinte.. preciso criar uma barra de rolagem dinamicamente, de acordo com o tamanho de uma <div> e não sei como fazer. O cenário é este: Tenho um p:dialog (primefaces), que representa uma tela mestre/detalhe.. para ser mais específico é uma tela de vendas. Então eu tenho os dados do mestre (cliente, data da venda, etc..) e os dados do detalhe (produtos, quantidade, valor unitário...); Conforme eu vou adicionando produtos (produtoVenda na verdade) na minha venda, eu populo uma tabela de produtos daquela venda.. Acontece que, conforme a tabela cresce, os dados vão ficando escondidos, porque não tenho uma barra de rolagem na página (isso mesmo, não acho legal uma scrollbar na tabela, ou no próprio dialog). Me ajudem com isso por favor!!!
  11. Guilherme do Vale

    CellEdit do datatable perde a edição

    ola pessoal, Estou com um problema chato que não consigo resolver. Criei um datatable com cellEditor dentro de uma tab e, dentro dessa tab, eu coloquei um ajax que muda a lista do datatable toda vez que muda para outra tab. O problema é que, quando eu clico em outra tab e carrega o outro datatable eu perco a edição das células e só aparece o output da célula. Gostaria de uma ajuda pra saber o que está acontecendo e como resolver: xhtml <p:tabView value="#{cadastroContasBean.listaTabela}" dynamic="true" closeable="true" activeIndex="#{cadastroContasBean.idTabela}" var="tabela" style="heigth:100%;width:100%" id="tabView"> <p:tab title="tab" closable="true" id="tab"> <div> <p:dataTable binding="#{cadastroContasBean.dataTable}" var="gasto" value="#{cadastroContasBean.listaGasto}" scrollable="true" scrollHeight="150" editable="true" editMode="cell" id="Tabela" widgetVar="wTabela"> <p:column headerText="Nome"> <p:cellEditor> <f:facet name="output"> <p:outputLabel value="#{gasto.nome}" /> </f:facet> <f:facet name="input"> <p:inputText id="inputTextNome" required="true" value="#{cadastroContasBean.nome}" style="width:96%" binding="#{cadastroContasBean.inputTextNome}"> <p:ajax event="change" update="Tabela" listener="#{cadastroContasBean.atualizaVT('inputTextNome')}" execute="inputTextNome" process="@this"> </p:ajax> </p:inputText> </f:facet> </p:cellEditor> </p:column> <p:column headerText="Quantidade"> <p:cellEditor> <f:facet name="output"> <p:outputLabel value="#{gasto.quantidade}" /> </f:facet> <f:facet name="input"> <p:inputText id="inputQtd" required="true" value="#{cadastroContasBean.qtd}" style="width:96%" onkeydown="MascaraNumero()" onkeyup="MascaraNumero()" binding="#{cadastroContasBean.inputTextQtd}"> <p:ajax event="change" update="Tabela" listener="#{cadastroContasBean.atualizaVT('inputTextQtd')}" execute="inputQtd" process="@this" /> </p:inputText> </f:facet> </p:cellEditor> </p:column> <p:column headerText="Valor"> <p:cellEditor> <f:facet name="output"> <p:outputLabel value="#{gasto.valor}"> <f:convertNumber currencySymbol="R$" type="currency" /> </p:outputLabel> </f:facet> <f:facet name="input"> <p:inputText id="inputValor" required="true" value="#{cadastroContasBean.valor}" style="width:96%" binding="#{cadastroContasBean.inputTextValor}"> <f:convertNumber pattern="#,##0.00"></f:convertNumber> <f:validator validatorId="MoedaValidator" /> <p:ajax event="change" update="Tabela" listener="#{cadastroContasBean.atualizaVT('inputTextValor')}" execute="inputValor" process="@this"> </p:ajax> </p:inputText> </f:facet> </p:cellEditor> </p:column> <p:column headerText="Valor Total" id="vt"> <p:outputLabel id="outputVT" value="#{gasto.valorTotal}"> <f:convertNumber currencySymbol="R$" type="currency" /> </p:outputLabel> </p:column> </p:dataTable> <div id="addGasto"> <p:commandButton value="Add gasto" style="width:100%" actionListener="#{cadastroContasBean.addGasto}" update="Tabela"></p:commandButton> </div> </div> <div> <p:outputLabel value="Comentários: " for="comentario"></p:outputLabel> <p:inputTextarea value="#{tabela.comentarios}" id="comentario" autoResize="true" style="width: 100%; height: 50%"></p:inputTextarea> </div> </p:tab> <p:ajax event="tabChange" execute="tab" listener="#{cadastroContasBean.mudaTab}" process="@this" /> </p:tabView> MB public void mudaTab(TabChangeEvent event) { tabelaAtual = (Tabela)event.getData(); idTabela =(tabelaAtual).getId(); listarGastos(); } public void listarGastos(){ listaGasto = tabelaAtual.getListaGastos(); } Tabela public class Tabela { @Id @GeneratedValue(strategy=GenerationType.IDENTITY) private Integer id; private String comentarios; @OneToMany (mappedBy="tabela") private List<Gastos> listaGastos = new ArrayList<Gastos>(); @ManyToOne private MesAno mesano; public List<Gastos> getListaGastos() { return listaGastos; } public void setListaGastos(List<Gastos> listaGastos) { this.listaGastos = listaGastos; } public MesAno getMesano() { return mesano; } public void setMesano(MesAno mesano) { this.mesano = mesano; } public String getComentarios() { return comentarios; } public void setComentarios(String comentarios) { this.comentarios = comentarios; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } } Obs: não consigo identar o xhtml ¬¬
  12. ArthurCosta

    Problema no Primefaces + Lightbox - Java

    Fala galera, boa tarde! Estou com um problema de quebrar a cabeça aqui no trabalho, utilizando primefaces e lightbox. Estou querendo exibir a imagem em miniatura em baixo da descrição, na tela pro cliente. Entretanto, ta dando um erro de Scoped. JSF <p:dataTable id="tabelaAnexos" var="data" value="#{registroInformacaoManipularBean.form.anexoDtoList}" style="width:100%; margin-top:20px" emptyMessage="Não existem anexos para este registro"> <p:column headerText="Anexo" > <h:outputText value="#{data.nome}"/> </p:column> <p:column headerText="Descrição" > <h:outputText value="#{data.descricao}"/> <p:lightBox styleClass="imagebox" id="lighbox1"> <f:event type="preRenderComponent" listener="#{anexoInformacaoCRUDBean.iniciarArquivo(data)}"/> <h:outputLink value="#{anexoInformacaoCRUDBean.imagem}"> <p:graphicImage value="#{anexoInformacaoCRUDBean.imagem}"/> </h:outputLink> </p:lightBox> </p:column> <p:column> <p:commandButton icon="fa fa-eye" title="Visualizar" ajax="false" actionListener="#{anexoInformacaoCRUDBean.obterArquivo(data)}"> <p:fileDownload value="#{anexoInformacaoCRUDBean.arquivo}" /> </p:commandButton> <p:commandButton icon="fa fa-trash-o" title="Excluir" update=":tabelaAnexos" actionListener="#{anexoInformacaoCRUDBean.removerArquivo(data)}" rendered="#{not registroInformacaoManipularBean.isVisualizar()}" /> </p:column> </p:dataTable> Java package br.com.petrobras.ticepes.swot.jsf.registroinformacao.anexoinformacao; import org.primefaces.event.FileUploadEvent; import org.primefaces.model.DefaultStreamedContent; import org.primefaces.model.StreamedContent; import br.com.petrobras.ticepes.swot.jsf.commons.BaseBean; import br.com.petrobras.ticepes.swot.jsf.registroinformacao.RegistroInformacaoManipularBean; import br.com.petrobras.ticepes.swot.usecase.anexoinformacao.dtos.AnexoInformacaoDto; import org.omnifaces.cdi.ViewScoped; import javax.inject.Inject; import javax.inject.Named; import java.io.*; import java.util.ArrayList; import java.util.List; import javax.annotation.PostConstruct; @Named @ViewScoped public class AnexoInformacaoCRUDBean extends BaseBean { private String nomeArquivo; private String descricao; private AnexoInformacaoDto anexoTemp; @Inject private transient RegistroInformacaoManipularBean manipularBean; @Inject private transient AnexoInformacaoService anexoInformacaoService; //OBTER private StreamedContent arquivo; //LIGHTBOX VISUALIZAR private StreamedContent imagem; //INICIAR O ARQUIVODTO private AnexoInformacaoDto arquivoSolicitado; public void obterArquivo(AnexoInformacaoDto arquivoSolicitado) { this.arquivo = new DefaultStreamedContent(new ByteArrayInputStream( arquivoSolicitado.getArquivo()), "", arquivoSolicitado.getNome() ); } public void iniciarArquivo(AnexoInformacaoDto arquivoSolicitado){ this.arquivoSolicitado = arquivoSolicitado; } public void setImagem(StreamedContent imagem) { this.imagem = imagem; } public StreamedContent getImagem(){ ByteArrayInputStream sdf = new ByteArrayInputStream(this.arquivoSolicitado.getArquivo()); return new DefaultStreamedContent(sdf, "image/jpg", this.arquivoSolicitado.getNome()); } public void removerArquivo(AnexoInformacaoDto arquivoRemover) { this.manipularBean.getForm().getAnexoDtoList().remove(arquivoRemover); } public void onFileUpload(FileUploadEvent event) { if(event.getFile().getSize() > 10000000){ super.messages.globalError("Tamanho do anexo superior a 10MB"); }else{ anexoTemp = new AnexoInformacaoDto(); nomeArquivo = event.getFile().getFileName(); anexoTemp.setArquivo(event.getFile().getContents()); anexoTemp.setNome(event.getFile().getFileName()); } } public void enviarArquivo(){ anexoTemp.setDescricao(this.descricao); if (this.manipularBean.getForm().getAnexoDtoList() == null){ this.manipularBean.getForm().setAnexoDtoList(new ArrayList<AnexoInformacaoDto>()); } this.manipularBean.getForm().getAnexoDtoList().add(anexoTemp); prepararProximoAnexo(); } private void prepararProximoAnexo(){ this.nomeArquivo = ""; this.descricao =""; this.anexoTemp = null; } public boolean desabilitarUpload(){ if(anexoTemp == null){ return true; }else { return false; } } public String getNomeArquivo() { return nomeArquivo; } public void setNomeArquivo(String nomeArquivo) { this.nomeArquivo = nomeArquivo; } public String getDescricao() { return descricao; } public void setDescricao(String descricao) { this.descricao = descricao; } public StreamedContent getArquivo() { return arquivo; } public void setArquivo(StreamedContent arquivo) { this.arquivo = arquivo; } } Erro Então, resumindo. Eu pego a imagem em byte, transformo utilizando o DefaultStreamedContent. Dá erro de Scoped. Outra observação é que o botão de download que criei funciona perfeitamente. Agradeço quem puder ajudar, serei muito grato!
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.