Struts e javascript

Galera consegui fazer o validator do struts está funcionando blz, mais não como eu quero, por isso quero ver se vcs me ajudam :smiley:

Fiz as configurações devidas do meu struts para validar meu formulario, so que ainda continua validando todo meu form independente do botao que eu clico, sendo que eu preciso que valide somente quando eu clicar em salvar, vou colocar meu codigo para vcs darem uma olhada

Validation.xml

<form name="UsuarioForm">
            <field
                property="idusuario"
                depends="required">
                    <msg name="required" key="error.idusuario.required"/>                    
                </field>
            <field
                property="nome"
                depends="required">
                    <msg name="required" key="error.nome.required"/>                    
                </field>
           <field
                property="senha"
                depends="required,mask">
                    <msg name="required" key="error.senha.required"/>
                    <var>
                        <var-name>mask</var-name>
                        <var-value>^[0-9a-zA-Z]*$</var-value>
                    </var>
                </field>
        </form>

Struts-config

<form-beans>
        <form-bean name="UsuarioForm" type="usuario.action.form.UsuarioForm"/>
</form-beans>
<action input="/usuario.jsp" name="UsuarioForm" parameter="method" validate="true" path="/usuario" scope="session" type="usuario.action.UsuarioAction">
            <forward name="success" path="/usuario.jsp"/>
            <forward name="fail" path="/usuario.jsp"/>
        </action>

Action

public class UsuarioAction extends LookupDispatchAction{
    
private final static String SUCCESS = "success";
private final static String FAIL = "fail";
PersistenciaDAO persistencia = new PersistenciaDAO();        

    protected Map getKeyMethodMap(){
        Map map = new HashMap();
        map.put("button.salvar", "salvar");
        map.put("button.deletar", "deletar");        
        map.put("button.buscar", "buscar");        
        return map;
    }

    public ActionForward salvar(ActionMapping mapping, ActionForm  form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {
        
        HttpSession session = request.getSession();
        
        UsuarioForm usuarioForm = (UsuarioForm) form;
        Usuario usuario = new Usuario();
        
        BeanUtils.copyProperties(usuario, usuarioForm);
                
        persistencia.salvar(usuario);
        
        return mapping.findForward(SUCCESS);        
                 
    }
    
    public ActionForward deletar(ActionMapping mapping, ActionForm  form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {
           
        HttpSession session = request.getSession();
        
        UsuarioForm usuarioForm = (UsuarioForm) form;
        Usuario usuario = new Usuario();
        BeanUtils.copyProperties(usuario, usuarioForm);                
        
        persistencia.deletar(usuario);              
        
        return mapping.findForward(SUCCESS);        
        
    }   

    public ActionForward buscar(ActionMapping mapping, ActionForm  form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {
        
        HttpSession session = request.getSession();
        
        UsuarioForm usuarioForm = (UsuarioForm) form;        
        
        Usuario usuario = new Usuario();                                       
        
        usuario = (Usuario) persistencia.buscar(Usuario.class,usuarioForm.getIdusuario());        
        
        BeanUtils.copyProperties(usuarioForm, usuario);                 
                
        return mapping.findForward(SUCCESS);
        
    }
      
}

ActionForm

public class UsuarioForm extends org.apache.struts.validator.ValidatorForm {
    
    private Long idusuario;
    private String nome;
    private String senha;
    
    Usuario usuario = new Usuario();
    
    public Long getIdusuario() {
        return idusuario;
    }

    public void setIdusuario(Long idusuario) {
        this.idusuario = idusuario;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getSenha() {
        return senha;
    }

    public void setSenha(String senha) {
        this.senha = senha;
    }                      

}

JSP

<%@page contentType="text/html" pageEncoding="UTF-8"%>

<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>

<html:html locale="true">
    <head>       
        <title><bean:message key="titulo"/></title>
    <html:base/>     
    </head>
    <body>             
        <html:javascript formName="UsuarioForm" dynamicJavascript="true" staticJavascript="true"/>
        <html:form action="usuario" focus="idusuario" onsubmit="return validateUsuarioForm(this)">                    
            <bean:message key="label.id"/><html:text property="idusuario"/>
            <bean:message key="label.nome"/><html:text property="nome"/>
            <bean:message key="label.senha"/><html:password property="senha"/>
            <html:submit property="method"><bean:message key="button.salvar" /></html:submit>
            <html:submit property="method"><bean:message key="button.deletar" /></html:submit>
            <html:submit property="method"><bean:message key="button.buscar" /></html:submit>          
        </html:form>           
    </body>
</html:html>

E ai o que posso fazer para resolver meu problema?