[JAVA] Ajuda com chat
Boa tarde.
Bem estou desenvolvendo o Chat para o meu tcc e está funcionando... Ele tem o mapeamento assim: Classe Negociação tem seu ID, Gerador (ator do Projeto), Reciclador (tb ator), Chat... A classe Chat tem uma List<ChatAplicacao>, o ID, e a Negociação que o Chat pertence. O ChatAplicacao tem ID, Mensagem(String) e PessoaJuridica (super classe de Gerador e Reciclador) que é quem está enviando aquela mensagem...
Está funcionando! Eu uso o AJAX POLL do Primefaces, a cada 5 segundos ele executa um método listener, que ele pega o ID do chat que ele se encontra, e pesquisa no banco de dados a lista de mensagens atualizadas. E dou um update na tela somente!!!
Porém, queria colocar um algo a mais no projeto, que seria assim: Quando o usuario começar a digitar, atualizar na Instância do outro cara (se ele tiver logado).Só que preciso pegar todas as sessões que estão na memória ram do servidor, exemplo: tem 50 pessoas logadas no sistema, preciso pegar a lista dessas 50 sessões, para iterar e fazer um equals com o usuário logado de cada uma, ai quando achar, vou pegar aquela instância, setar um valor do controlador dela e atualizar um componente na tela que renderiza a mensagem "Fulano está digitando...". Porém não sei se existe um método que retorno todas as sessões e seus ID, eu sei que tem o SessionMap, mas isso é de uma única instância
Essa dúvida foi gerada a partir de um comentário na aula [url:descricao=Populando DataTable de forma assíncrona - Fim – Curso JSF 2.0 com Primefaces - Parte 10]https://www.devmedia.com.br/populando-datatable-de-forma-assincrona-fim-curso-jsf-2-0-com-primefaces-parte-10/24433[/url]
Bem estou desenvolvendo o Chat para o meu tcc e está funcionando... Ele tem o mapeamento assim: Classe Negociação tem seu ID, Gerador (ator do Projeto), Reciclador (tb ator), Chat... A classe Chat tem uma List<ChatAplicacao>, o ID, e a Negociação que o Chat pertence. O ChatAplicacao tem ID, Mensagem(String) e PessoaJuridica (super classe de Gerador e Reciclador) que é quem está enviando aquela mensagem...
Está funcionando! Eu uso o AJAX POLL do Primefaces, a cada 5 segundos ele executa um método listener, que ele pega o ID do chat que ele se encontra, e pesquisa no banco de dados a lista de mensagens atualizadas. E dou um update na tela somente!!!
Porém, queria colocar um algo a mais no projeto, que seria assim: Quando o usuario começar a digitar, atualizar na Instância do outro cara (se ele tiver logado).Só que preciso pegar todas as sessões que estão na memória ram do servidor, exemplo: tem 50 pessoas logadas no sistema, preciso pegar a lista dessas 50 sessões, para iterar e fazer um equals com o usuário logado de cada uma, ai quando achar, vou pegar aquela instância, setar um valor do controlador dela e atualizar um componente na tela que renderiza a mensagem "Fulano está digitando...". Porém não sei se existe um método que retorno todas as sessões e seus ID, eu sei que tem o SessionMap, mas isso é de uma única instância
Essa dúvida foi gerada a partir de um comentário na aula [url:descricao=Populando DataTable de forma assíncrona - Fim – Curso JSF 2.0 com Primefaces - Parte 10]https://www.devmedia.com.br/populando-datatable-de-forma-assincrona-fim-curso-jsf-2-0-com-primefaces-parte-10/24433[/url]
Rafael
Curtidas 0