Validate Struts - Array

4 respostas
Flavio_Luiz

Bom pessoal, seguinte…

Tenho em um form um array de String.
Queria validar quando esse array estiver nulo, sem string alguma.
Tentei de varias formas, procurei a documentação mas não achei.
O que eu mais achei que chegou proximo é o codigo a seguir.

<formset> <form name="form"> <field property="quantity" indexedListProperty="myArray" depends="validwhen"> <var> <var-name>test</var-name> <var-value>((myArray != null) or (*this*[] != null))</var-value> </var> </field> </form> </formset>

Entretanto não sei se estou usando a validação correta e se esta aplicado corretamente,
espero contar com a ajuda de vocês.

4 Respostas

caraujocruz

Você pode usar uma ACTION que faça essa validação.

ublic class Teste extends Action{
	@Override
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
			
		if(myArray != null){
			
			/*Faça alguma coisa*/
			return mapping.findForward("nao e nulo");
			}
		return mapping.findForward("e nulo");

Depois você mapeia no struts.xml e passa no seu form < form action= /myarray> …

&lt;action path="/myarray"  scope="request" type="sua action"&gt;
		&lt;forward name="nao e nulo" path="faz alguma coisa"&gt;&lt;/forward&gt;
		&lt;forward name="e nulo " path="/.jsp ou .do"&gt;&lt;/forward&gt;		
		
	&lt;/action&gt;

Espero ter ajudado.
Falow

ivandasilva

Não seria o caso de você usar o método validate() ?

Ele é declarado também no struts-config

Flavio_Luiz

Preciso usar as validações do Struts…
me explica melhor sobre o metodo validate(), pois eu não entendi…

ivandasilva

Dentro do seu struts-config você faz a declaração do form bean exemplo:

<form-beans type="org.apache.struts.action.ActionFormBean">
        <form-bean name="loginForm" type="br.com.login.LoginForm"/>
    </form-beans>

Crie um bean que extenda uma classe chamada ActionForm e na classe sobrescreva o método validate(), dentro deste método você faz a validação.

Isto é simples, mas é melhor você pesquisar um exemplo na net e ver como se faz o tratamento das mensagens de erro por um resource-boundle.

Abraços

Criado 2 de dezembro de 2009
Ultima resposta 4 de dez. de 2009
Respostas 4
Participantes 3