Valor já preenchido ou pré-enchido :)  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
andrepestana
JavaEvangelist
[Avatar]

Membro desde: 23/03/2004 09:57:28
Mensagens: 380
Offline

Olá pessoal,

Sou novo no Struts e tenho uma dúvida:

Como faço para um campo texto já aparecer preenchido na primeira vez que abrir a página. Fiz uma Action que roda antes do jsp e que coloca a String IdNota que eu preciso como atributo da sessão:


No início do jsp fiz referencia ao meu bean:




e no form, o campo que desejo que já seja preenchido pelo valor:



tudo roda sem erros mas não sei como fazer para setar o valor desse campo com o valor passado pela Action...acredito que seja com o atributo value=<algumacoisa>.

Obrigado desde já!

Pestana

Pestana
http://andrepestana.wordpress.com/
[Email] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

No seu caso, creio que seja melhor colocar o valor no request do que na sessão.

Não precisa usar o <jsp:useBean .../>.

E tenta assim:

Action:


No JSP:


Falou!

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
andrepestana
JavaEvangelist
[Avatar]

Membro desde: 23/03/2004 09:57:28
Mensagens: 380
Offline

Daniel,

Não precisa usar o <jsp:useBean .../>.


ok, tirei o <jsp:useBean .../>

Na action deixei:


No JSP:


Mas aí vem a mensagem:

javax.servlet.ServletException: Cannot find bean id in any scope

Não sei se expliquei muito bem...

Eu chamo primeiro uma Action para pegar o valor do último id de notas emitidas que está gravado no banco (isso eu sei q ela faz, ela pega o último id e joga no console para debugar) e passo esse valor para o campo já vir preenchido no formulário.

E agora?

Pestana


Pestana
http://andrepestana.wordpress.com/
[Email] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Tenta:

<bean:write name="id" property="idNota" />

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
andrepestana
JavaEvangelist
[Avatar]

Membro desde: 23/03/2004 09:57:28
Mensagens: 380
Offline

hum....

mesma coisa:

javax.servlet.ServletException: Cannot find bean id in any scope

Pestana

Pestana
http://andrepestana.wordpress.com/
[Email] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

weird!

E com isso:

<jsp:useBean id="id" class="bank.NotaForm" />
<jsp:getProperty id="id" property="idNota" />

This message was edited 1 time. Last update was at 17/01/2005 13:51:39


gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
andrepestana
JavaEvangelist
[Avatar]

Membro desde: 23/03/2004 09:57:28
Mensagens: 380
Offline

bom,

legal, agora o que eu mudei:



Mas o campo vem com valor 0...

Com <jsp:getProperty name="id" property="idNota" /> tb fica zerado o valor do campo....

Pestana

Pestana
http://andrepestana.wordpress.com/
[Email] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Então o valor não está sendo colocado no request.
Seu action não deve estar sendo chamado.

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
andrepestana
JavaEvangelist
[Avatar]

Membro desde: 23/03/2004 09:57:28
Mensagens: 380
Offline

olha, dei uma verificada e realmente com request, não passa nada para o form...então resolví mudar para session como tinha feito inicialmente. Verifiquei que se eu fizer isso:



obtenho o resultado esperado mas gostaria de não usar scriptlets.

Não funciona com:



tenho que mexer no struts-config.xml?

Pestana

Pestana
http://andrepestana.wordpress.com/
[Email] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Veja se no seu struts-config.xml, na configuração do seu action tem algo que fala do request. Uma vez tive problemas com isso. Tem um atributo que não repassa o conteúdo do request.

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
andrepestana
JavaEvangelist
[Avatar]

Membro desde: 23/03/2004 09:57:28
Mensagens: 380
Offline

Nada feito... alguém tem alguma idéia?

Estava vendo em alguns sites que vc pode usar uma subtag da tag <action> chamada <set-property> mas não sei se tem a ver... estou com struts 1.1

Qualquer ajuda é bem-vinda...

Pestana

Pestana
http://andrepestana.wordpress.com/
[Email] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Coloca aqui a configuração do seu struts-config.xml.

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
andrepestana
JavaEvangelist
[Avatar]

Membro desde: 23/03/2004 09:57:28
Mensagens: 380
Offline



Pestana
http://andrepestana.wordpress.com/
[Email] [MSN]
danieldestro
Moderador
[Avatar]

Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline

Parece normal. Que estranho!
Você está chamando diretamento o seu JSP ou o .do?

gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol
[WWW]
Diogenes
Virtual Machine Man
[Avatar]

Membro desde: 17/07/2003 14:08:01
Mensagens: 646
Localização: Belo Horizonte
Offline

André,

Eu acho q vc tah fazendo uma confusãozinha na hora de passar o objeto pro request....

O lance eh o seguinte....
Sua action deve ser chamada antes da jsp....feito isso a sua action vai criar um objeto do tipo bank.NotaForm e atribuir esse objeto como um atributo da requisição....(pelo amor de Deus não use sessao cara! soh qdo for realmente necessario...), mais ou menos assim...


Depois disso, em sua jsp vc obterah os dados do bean da maneira q vc estava fazendo:




(Presumindo q o objeto nota tenha uma propriedade chamada idNota....)

Mas se ainda assim a propriedade estiver vindo zerada, pode olhar q vc não estah setando a propriedade idNota do seu bean, ou estah setando-a com 0.




Diogenes

"É possível resistir a invasão de exércitos, mas não a invasão de idéias." - (Victor Hugo)


[Email] [MSN]
 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team