Passar mais de um parâmetro para um bean

4 respostas
thiago-hc

Ola pessoal bom dia a todos,

Estou construindo uma aplicação web e preciso pasasr para um de meus beans dentro de uma página jsp três parãmetros e não estou conseguindo… segue abaixo o bean de exemplo:

public void setParser(String bloco, String nomeParse, String valor){
	try{
		Pattern p = Pattern.compile("#%"+nomeParse+"%#");
		Matcher m = p.matcher(bloco);
		bfParser = m.replaceAll(valor);
	}
	catch(Exception e){
		csErro = e.getMessage();
	}
}

Agradeço a atenção de todos.

4 Respostas

deniswsrosa

Olá, Bem vindo ao fórum,

Você está tentando passar parametros para uma página jsp?? caso seja isso pode simplesmente colocar na request, veja:
request.setAttribute( "nomedoparametro", seuparametro);
thiago-hc

deniswsrosa:
Olá, Bem vindo ao fórum,

Você está tentando passar parametros para uma página jsp?? caso seja isso pode simplesmente colocar na request, veja:
request.setAttribute( "nomedoparametro", seuparametro);

ola obrigado pela resposta, na verdade o parãmetro vai da página jsp para o bean, mais ou menos assim: <jsp:setProperty name=“bean” property=“metodo” value=“valor” />

mais uma vez agradeço.

sauloarruda

Olá Thiago,

Neste caso, a tag jsp:setProperty tem essa limitação de chamar um método passando apenas um parâmetro. Você tem duas opções:

  1. Refatorar seu java bean criando as três propriedades e os respectivos setters
class ... {
  private String bloco; 
  private String nomeParser;
  private String valor;

/** setters ... */
}
  1. Usar scriptlet para chamar seu método.
SeuBean bean = new SeuBean(); 
// ou = (SeuBean) pageContext.getAttribute("seuBean") caso tenha sido instanciado usando <jsp:useBean>
bean.setParser("lere lere", "[lere]", "upa upa")

Espero ter ajudado

[]'s

thiago-hc

sauloarruda:
Olá Thiago,

Neste caso, a tag jsp:setProperty tem essa limitação de chamar um método passando apenas um parâmetro. Você tem duas opções:

  1. Refatorar seu java bean criando as três propriedades e os respectivos setters
class ... {
  private String bloco; 
  private String nomeParser;
  private String valor;

/** setters ... */
}
  1. Usar scriptlet para chamar seu método.
SeuBean bean = new SeuBean(); 
// ou = (SeuBean) pageContext.getAttribute("seuBean") caso tenha sido instanciado usando <jsp:useBean>
bean.setParser("lere lere", "[lere]", "upa upa")

Espero ter ajudado

[]'s

Valeu Saulo, assim resolve o problema vou fazer com scriptlet mesmo =D.

[]´s

Criado 7 de dezembro de 2006
Ultima resposta 8 de dez. de 2006
Respostas 4
Participantes 3