Recuperar objeto de Sessão?

Forum sobre a ferramenta Oracle JDeveloper, ADF, OAF, etc. (Não é destinado ao aprendeziado da Linguagem Java em geral)
Responder
rohling
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 20
Registrado em: Qua, 26 Ago 2009 7:43 pm
Localização: PR

Como recupero um objeto armazenado em uma sessão assim:

Selecionar tudo

    FacesContext ctx = FacesContext.getCurrentInstance();
    ExternalContext ectx = ctx.getExternalContext();
    ectx.getSessionMap().put(key, val);
Precisso deste objeto(urerid) em uma classe que implementa Filter(filtro de segurança) para verificar se o usuário está logado. Também tento assim:
User user = (User)JSFUtils.resolveExpression("#{User}"); mas este bean de sessão nesta classe não funciona.


Atenciosamente,
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

Selecionar tudo

ectx.getSessionMap().get(key)
rohling
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 20
Registrado em: Qua, 26 Ago 2009 7:43 pm
Localização: PR

Realmente funciona em outras classe mas não funciona em uma classe que implementa Filter(filtro de segurança), no

Selecionar tudo

FacesContext ctx = FacesContext.getCurrentInstance(); 
ocorre erro Nullpointer..

Atenciosamente,
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

então..

você esta usando o SSO?

posta seu filtro
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

pode ser problemas com seu lifeCycle..

da uma olhada nesse phaselistner aqui
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

rohling
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 20
Registrado em: Qua, 26 Ago 2009 7:43 pm
Localização: PR

Interessante os links só que todos os filtros de autenticação recupera o userid do http session assim: request.getSession().getAttribute("userid"), que é o que não estou conseguindo

Eu estou tentando fazer isso:

http://oracletechtips.blogspot.com/2008 ... -jaas.html
este tem o exemplo do filtro porém usa CAS (Central Authentication Service)
http://my.opera.com/dominionspy/blog/show.dml/575983

Estou quase desistindo de usar Http Session para usar Application Module session em virtude disso:
http://forums.oracle.com/forums/thread. ... 6&#3967156

Preciso fazer autenticação e usar o recurso de history colunm, então pra autenticação deva usar phaselistner e para o historico usar http://kuba.zilp.pl/?id=761
Vou testar me pareçe a melhor solução sem querer usar jaas?
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

Application Module session != Http Session

o AM ta ligado a sessao de banco já a Http ta ligado ao browser do cliente
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

então..

essa gambiarra ai do cara do blog e um jeito.. ele ta forcando o usuario ficar toda hora no request ao invés de guardar na sessao o que seria uma boa pratica.. mas funciona.

para fazer esse history colunm basta ir ate a implementacao do seu EO e no método create setar a sua coluna created_by.. tambem seria uma forma
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 5 visitantes