acho que vc não entendeu a minha colocação, falei que o que buga é esse redirect do view....
por exemplo, para demosttrar que o flash funciona, veja o exemplo abaixo...
Primeira página: index.jsp
<body>
<form action="teste.enviar.logic">
<input type="text" name="teste">
</form>
</body>
Primeira logica: Teste
import org.vraptor.annotations.Component;
import org.vraptor.annotations.Out;
import org.vraptor.annotations.Parameter;
import org.vraptor.scope.ScopeType;
@Component("teste")
public class Teste {
@Parameter
private String teste;
@Out(scope=ScopeType.FLASH)
private String enviaTeste;
public String getEnviaTeste() {
return enviaTeste;
}
public void enviar() {
enviaTeste = "enviado \"" +teste + "\"";
}
}
Como vc pode ver, estou recebendo o parametro na variável "teste" e exportando via FLASH na variável "enviaTeste"
Segnda página: enviar.ok.jsp
<body>
O Texto recebido foi:
<br>FLASH = ${enviaTeste}
<br>agora vamos a proxima página: <a >segundoTeste.receber.logic</a>
</body>
Se tudo ocorrer bem, e ocorre, o texto tem que aparecer la na segunda lógica, desde que eu a receba por flash.
Segunda logica: SegundoTeste
import org.vraptor.annotations.Component;
import org.vraptor.annotations.In;
import org.vraptor.annotations.Out;
import org.vraptor.scope.ScopeType;
@Component("segundoTeste")
public class SegundoTeste {
@In(scope=ScopeType.FLASH,required=false)
@Out(scope=ScopeType.REQUEST)
private String enviaTeste;
public String getEnviaTeste() {
return enviaTeste;
}
public void receber() { }
}
Arqui é simples, eu estou recebendo pelo scopo FLASH, e estou exportando pelo scopo REQUEST
terceira página:
<body>
Vamos ver o que recebemos:
<br>FLASH / REQUEST = ${enviaTeste}
<br>Se tentarmos denovo com scopo REQUEST, não receberemos o valor de "enviaTeste"
<br>teste clicando aqui => <a >segundoTeste.receber.logic</a>
</body>
Bom quando chegamos aqui a primeira vez, ENVIA TESTE ainda existe, pois veio via escopo flash, quando clicamos no link pela segunda vez, a msg some, pois exportamos ela pelo RESQUEST, o que não sustenta ate a segunda pagina.
espero que veja como funciona o flash, e que realmente o scopo funciona e é util...
vou colocar aqui as telas em sequencia...
Enviado dados,
[img]http://img21.imageshack.us/img21/8994/pagina1vn.jpg[/img]
Recendo dados, e colocando ele no flash
[img]http://img5.imageshack.us/img5/8929/pagina2c.jpg[/img]
Indo para outra pagina, com outro logica (sem enviar nada via post ou get), e retirando o valor do FLASH, e o locando agora em request
[img]http://img7.imageshack.us/img7/6080/pagina3jp.jpg[/img]
e finalmente, acessando a mesma pagina, so que agora sem o objeto no FLASH não exibindo nada
[img]http://img5.imageshack.us/img5/8733/pagina4v.jpg[/img]