package it.consip.cafe.sicurezza.webapp.action;
/**
* Created by IntelliJ IDEA.
* User: hp
* Date: 21-lug-2010
* Time: 16.44.50
* To change this template use File | Settings | File Templates.
*/
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.Preparable;
import com.opensymphony.xwork2.interceptor.annotations.After;
import it.consip.cafe.common.webapp.action.AbstractAction;
import it.consip.cafe.security.business.manager.RuoloManager;
import it.consip.cafe.security.business.manager.UtenteManager;
import it.consip.cafe.security.business.model.Ruolo;
import it.consip.cafe.security.business.model.Utente;
import org.apache.commons.lang.xwork.StringUtils;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.convention.annotation.*;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.List;
import java.util.Map;
import static org.apache.struts2.ServletActionContext.*;
@Results({
@Result(location = "/WEB-INF/jsp/sicurezza/ricercaUtente.jsp"),
@Result(name = "associaRuoli", location = "/WEB-INF/jsp/sicurezza/associaRuoli.jsp")
})
@Namespace("/sicurezza")
public class UtenteAction extends AbstractAction {
@Autowired
UtenteManager utenteManager;
@Autowired
RuoloManager ruoloManager;
private final
String ASSOCIARUOLI = "associaRuoli";
private final String INSERISCI = "inserisci";
private String matricola;
private String cognome;
private List<Utente> utentiRicerca;
private List<Ruolo> listaRuoli;
private Long idUtenteSelezionato;
private Utente utenteSelezionato;
private Long[] ruoliSelezionati;
@Action(value = "cerca",
results = {@Result(name = "input", location = "/WEB-INF/jsp/sicurezza/ricercaUtente.jsp"),
@Result(location = "/WEB-INF/jsp/sicurezza/ricercaUtente.jsp")})
public String cerca() {
setUtentiRicerca(utenteManager.ricercaUtente(getMatricola(), getCognome()));
return SUCCESS;
}
@Action(value = "associaRuoli",
results = {@Result(name = "input", type = "chain", params = {"method", "cerca"} ),
@Result(location = "/WEB-INF/jsp/sicurezza/ricercaUtente.jsp")})
public String associaRuoli() {
setUtenteSelezionato(utenteManager.findById(idUtenteSelezionato));
setListaRuoli(ruoloManager.findAll());
return ASSOCIARUOLI;
}
@Action(value = "inserisci",
results = {@Result(name = "input", type = "chain", params = {"method", "associaruoli"}),
@Result(location = "/WEB-INF/jsp/sicurezza/associaRuoli.jsp")})
public String inserisci() {
return SUCCESS ;
}
public void validateCerca() {
if (StringUtils.isBlank(getCognome()) && StringUtils.isBlank(getMatricola())) {
addActionError(getText("ricerca.campiObbligatori"));
}
}
public void validateAssociaRuoli() {
if (getIdUtenteSelezionato() == null) {
addActionError(getText("ricerca.radioObbligatorio"));
}
}
public void validateInserisci() {
if (getRuoliSelezionati() == null) {
addActionError(getText("ricerca.checkboxObbligatori"));
}
}
public String getCognome() {
return cognome;
}
public void setCognome(String cognome) {
this.cognome = cognome;
}
public String getMatricola() {
return matricola;
}
public void setMatricola(String matricola) {
this.matricola = matricola;
}
public List<Utente> getUtentiRicerca() {
return utentiRicerca;
}
public void setUtentiRicerca(List<Utente> utentiRicerca) {
this.utentiRicerca = utentiRicerca;
}
public Long getIdUtenteSelezionato() {
return idUtenteSelezionato;
}
public void setIdUtenteSelezionato(Long idUtenteSelezionato) {
this.idUtenteSelezionato = idUtenteSelezionato;
}
public Utente getUtenteSelezionato() {
return utenteSelezionato;
}
public void setUtenteSelezionato(Utente utenteSelezionato) {
this.utenteSelezionato = utenteSelezionato;
}
public List<Ruolo> getListaRuoli() {
return listaRuoli;
}
public void setListaRuoli(List<Ruolo> listaRuoli) {
this.listaRuoli = listaRuoli;
}
public Long[] getRuoliSelezionati() {
return ruoliSelezionati;
}
public void setRuoliSelezionati(Long[] ruoliSelezionati) {
this.ruoliSelezionati = ruoliSelezionati;
}
}
I have this action with validate method that i call when i do a submit and i have differente submit action in the js , now i want that :
after the jsp pass through the validate method forward on the same jsp with the same object selected?? how can it??
i try uses the type="chain" with parameter but don't function...
thanks