[Logo] Mentawai Forum - Mentawai Web Framework
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
getContext do application [RESOLVIDO]  XML
Forum Index -> Comentários Gerais
Author Message
IceW0lf


[Avatar]

Joined: 16/03/2006 08:33:38
Messages: 1546
Location: Brasília
Offline

Pessoal uma dúvida,

Sabemos que para usarmos o contexto nos JSPs precisamente simplemente fazer isto: <mtw:contextPath />.

Também sabemos, ou pelo menos eu sei que podemos dar um application.getAttribute("context") dentro de uma classe que extende BaseAction que também pega o valor do mesmo.

A pergunta é como pegar isto dentro de uma classe que não extende BaseAction.

Um exemplo displaytags mesmo quando utilizamos decorators, e por muitas vezes precisamos do contexto ali.

Leiber Wallace
Voixy ::: Soluções em Telecomunicações
saoj



Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline


Se vc está usando o jar beta:

Code:
 
 ApplicationManager.getApplication();
 
 


Sergio Oliveira

IceW0lf


[Avatar]

Joined: 16/03/2006 08:33:38
Messages: 1546
Location: Brasília
Offline

Nem sabia q tinha saido outro beta

Baixei e funciona perfeitinho...

Maravilha Sérgio, muito bom, mas muito bom mesmo, isso tava sendo um "pé no saco" na hora de se usar o decorator pra quem colocava imagem ou mesmo actions.

Vlw.

Leiber Wallace
Voixy ::: Soluções em Telecomunicações
YkyMatt



Joined: 15/08/2007 15:47:05
Messages: 229
Location: RS / Brasil
Offline

Estou usando isso:

Code:
 (String) ApplicationManager.getApplication().getAttribute("context")
 


Em um filtro global e está resultando em um NullPointerException no construtor do StringBuffer. Já tentei mudar a chave para contextPath mas permaneceu a ausência de valor.
O que pode estar havendo?

Jéferson C. Flores
Compusoft - Desenv. de Sistemas Empresariais

Mentawai Evangelist
http://www.chronusteam.com
[MSN]
saoj



Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline

Mas o que está null e gerando o NPE ?

Que "context" é esse ali ?

Se vc quer o context path da sua aplicação, dá uma olhada no código fonte da tag contextPath.

Eu não me lembro (posso ter me esquecido) de nada referente a isso que o Leiber falou:


Também sabemos, ou pelo menos eu sei que podemos dar um application.getAttribute("context") dentro de uma classe que extende BaseAction que também pega o valor do mesmo.
 



Sergio Oliveira

YkyMatt



Joined: 15/08/2007 15:47:05
Messages: 229
Location: RS / Brasil
Offline

saoj wrote:
Mas o que está null e gerando o NPE ?

Que "context" é esse ali ?

Se vc quer o context path da sua aplicação, dá uma olhada no código fonte da tag contextPath.

Eu não me lembro (posso ter me esquecido) de nada referente a isso que o Leiber falou:


Também sabemos, ou pelo menos eu sei que podemos dar um application.getAttribute("context") dentro de uma classe que extende BaseAction que também pega o valor do mesmo.
 


 


Esse context é aquilo ali que o Leiber falou no início desse tópico. A NPE está ocorrendo porque o getAttribute("context") retorna nulo. Fiz um teste imprimindo todos os valores encontrados no Context retornado pelo ApplicationManager.getApplication() mas realmente não encontrei o tal context citado pelo IceWolf. Vamos esperar ele entrar no fórum e ver esse tópico.

De qualquer forma, saoj, como eu faço para pegar o contextPath da aplicação dentro de um Filtro?

Jéferson C. Flores
Compusoft - Desenv. de Sistemas Empresariais

Mentawai Evangelist
http://www.chronusteam.com
[MSN]
saoj



Joined: 01/07/2005 09:59:17
Messages: 2846
Location: Rio de Janeiro, RJ
Offline


Para pegar o context path vc precisa chamar o getContextPath do HttpServletRequest...

Futuramente vou dar um jeito de colocar o context path no ApplicationManager de forma que vc possa pegá-lo assim:

ApplicationManager.getContextPath()

Não entendo como isso é pego do HttpServletRequest, visto que isso, no meu entendimento, é FIXO pela vida inteira da aplicação e não é variável por request...

Sergio Oliveira

YkyMatt



Joined: 15/08/2007 15:47:05
Messages: 229
Location: RS / Brasil
Offline

Hmmm... ok.

Só que, cara, agora estou noutra dúvida: como pego o HttpServletRequest dentro de um filtro? Estou procurando aqui mas... não encontrei nada. oO

Jéferson C. Flores
Compusoft - Desenv. de Sistemas Empresariais

Mentawai Evangelist
http://www.chronusteam.com
[MSN]
YkyMatt



Joined: 15/08/2007 15:47:05
Messages: 229
Location: RS / Brasil
Offline

Consegui!

No filtro:

Code:
 SessionContext session = (SessionContext) action.getSession();
 String contextPath = session.getRequest().getContextPath();
 

Jéferson C. Flores
Compusoft - Desenv. de Sistemas Empresariais

Mentawai Evangelist
http://www.chronusteam.com
[MSN]
 
Forum Index -> Comentários Gerais
Go to:   
Powered by JForum 2.1.6 © JForum Team