:?: :?:
Gostaria de saber como passar como parâmetro através de uma tela JSP o nome de uma classe para uma outra tela JSP para que esta execute o método desta classe.
:?: :?:
:?: :?:
Gostaria de saber como passar como parâmetro através de uma tela JSP o nome de uma classe para uma outra tela JSP para que esta execute o método desta classe.
:?: :?:
Object.getClass();
:?:
Como é que eu uso isto?
o método getClass() pertence à classe Object de forma que todo objeto java tem esse método…
vc poderia fazer o seguinte:
<INPUT type=“hidden” name=“nmClasse” value=“SeuObjeto.getClass()”>
na outra JSP vc recupera esse parametro e instancia um objeto Class usando o Class.forName(“nmClasse”);
deu pra entender ?¿
Eu faria assim…
na primeira pagina
request.getSession().setAttribute(“param”, “o teu parametro”);
na segunda pagina
String param = (String) request.getSession().getAttribute(“param”);
Q c acha?
t+
Na JSP que vai receber o parâmetro eu coloquei assim:
String classe = request.getParameter(Class.forName(“classe”);
O “classe” é o nome do parâmetro que está na outra JSP.
Está dando um erro!
O que eu faço?
:?: :?:
[quote=“broering”]Eu faria assim…
na primeira pagina
request.getSession().setAttribute(“param”, “o teu parametro”);
na segunda pagina
String param = (String) request.getSession().getAttribute(“param”);
Q c acha?
t+[/quote]
Depois que eu mandar a classe (junto com o nome do método) como parâmetro eu preciso instanciá-la.
Será que dá pra fazer isto?
Pois a segunda tela JSP não sabe qual classes e método ela vai receber para depois instanciar.
Pode sim.
Dá uma olhada nas classes Class e Method. Aliás, olha o tutorial sobre Reflection que tem no java.sun.com, lá mostra como é que vc vai fazer pra instanciar a classe e chamar seus métodos.
Cara,
Que eu saiba objetos não trafegam pelo request(me corrijam se estiver errado).Então a melhor form de passar um objeto é pela session.E na sua pagina vc recupera com o getAtribute.
E depois vc pode instanciar o objeto usando reflection.
Espero ter ajudado.
[]'s
É isso mesmo. O que se pode fazer é passar o nome da classe como parâmetro, pegar com getAtribute, como você disse, e instanciá-la usando Reflection.