Pessoal,
Não estou entendendo porque o Action q estou escrevendo não está sendo instanciado a cada request. Está sendo instanciado uma vez apenas. Nas vezes seguintes que chamo uma url mapeada para tal Action, ele não é instanciado novamente. Eis as configurações:
<action
attribute="form"
parameter="method"
path="/basico_cargo"
scope="request"
type="br.com.viamentor.sicof.struts.action.basico.CargoAction"
validate="false">
<forward name="lista" path="/jsp/basico/CargoLista.jsp" />
<forward name="carrega" path="/jsp/basico/Cargo.jsp" />
</action>
Meu Action está herdando de DispatchAction. E eu preciso de atributos de instância para um Action em cada request. Porém percebi um comportamento estranho e, pra testar, criei um construtor no-args e coloquei um breakpoint lá… ele só é chamado uma vez mesmo.
Por exemplo, o primeiro uso do Action é quando eu chamo um método que desenha a tela lista. Lá tem uma lista de entidades que, ao selecionar um, eu invoco o Action para chamar um método que vai desenhar a tela carrega. Só que ele usa a mesma instância do Action que foi usada para desenha a tela de lista e isso não pode acontecer na minha aplicação, devido aos atributos de instância.
O que estou estranhando é que no struts-config, no mapeamento, eu coloquei scope=“request” mas não tá funcionando (se é que é essa a idéia desse atributo).
Alguém tem alguma idéia?
[]'s