Webwork c/ velocity se desentendendo

5 respostas
Lucas_Teixeira

Pessoal, eu estou enfrentando alguns problemas que são, no mínimo sinistros.

Nosso sistema aqui é com webwork e velocity como camada de visão. De uma hora para outra, os meus templates do velocity não mais consegue atribuir valores à variáveis das Actions. Simplesmente param. Algo muito simples como por exemplo isto abaixo, não está funcionando:

<html><head></head>
	<body><form action="process.action">
		Nome: &lt;input name="nome"&gt;<br>
		Telefone: &lt;input name="telefone"&gt;<br>
		Apelido: &lt;input name="apelido"&gt;<br>
		Idade: &lt;input name="idade"&gt;<br>
		&lt;input type="submit"&gt;
	&lt;/form&gt;&lt;/body&gt;
&lt;/html&gt;

fazendo uma requisão para esta action:

package lucas;
import com.opensymphony.xwork.ActionSupport;
public class TesteAction extends ActionSupport { 
    private String nome, telefone, apelido;
    private int idade;

    public String process() throws Exception {
    	return SUCCESS;
    }
       
	public String getApelido() { return apelido; }
	public int getIdade() { return idade; }
	public String getNome() { return nome; }
    public String getTelefone() { return telefone; }
    
    public void setApelido(String apelido) { this.apelido = apelido; }
    public void setIdade(int idade) { this.idade = idade; }
	public void setNome(String nome) { this.nome = nome; }
	public void setTelefone(String telefone) { this.telefone = telefone; 	}
}

Não funciona.... Muito estranho né? Meu xwork está desta forma:

&lt;!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN" "http://www.opensymphony.com/xwork/xwork-1.0.dtd"&gt;
&lt;xwork&gt;
	&lt;include file="webwork-default.xml"/&gt;
	&lt;package name="default" extends="webwork-default"&gt;
        &lt;default-interceptor-ref name="defaultStack"/&gt;
		&lt;action name="process" class="lucas.TesteAction" method="process"&gt;
			&lt;result name="success" type="velocity"&gt;
				&lt;param name="location"&gt;depois.vm&lt;/param&gt;
			&lt;/result&gt;
		&lt;/action&gt;
  &lt;/package&gt;
&lt;/xwork&gt;

E mesmo assim nada.... Neste template de saída:

&lt;html&gt;&lt;head&gt;&lt;/head&gt;
	&lt;body&gt;
		Nome: $nome <br />
		Idade: $idade <br />
		Telefone: $telefone <br />
		Apelido: $apelido <br />
	&lt;/body&gt;
&lt;/html&gt;

Não obtenho meus resultados... Cheguei a pensar nestas possibilidades:

:arrow: Versão do WW
... Derrubada ao se ter algumas actions que funcionam e outras não.

:arrow: Versão do Velocity
... Derrubada pelo mesmo motivo da anterior, e ainda por ela conseguir recuperar listas das actions

:arrow: Falta de gets/sets
... Todos ali

:arrow: Versão do jar da ognl
... Atualizado e mesmo pau

:arrow: Interceptors
... Todos no webwork-default.xml que está incluido

:arrow: Erro ao incluir o webwork-default.xml
... Incluido "na mão" dentro do meu xml, e mesmo assim nada.

Ressalto que algumas actions como a de login, funciona corretamente, o que me tira o sono é uma para inclusão de dados no banco. Para meu DAO, o TO já chega nulo, fiz todas as verificações e os valores não são setados na action, o TO permanece do mesmo jeito (apenas instanciado por mim). Este exemplo que postei aqui também não funciona.

Bom, alguem já passou por isto? O que fez? E mesmo que não tenha passado, tem alguma dica sobre o que possa ser?

Valeu...

[]s

5 Respostas

_fs

Certeza que dentro do interceptor-stack tem o atributo param?

&lt;interceptor-stack name="defaultStack"&gt; &lt;interceptor-ref name="component" /&gt; &lt;interceptor-ref name="static-params" /&gt; &lt;interceptor-ref name="params" /&gt; <-- esse daqui &lt;interceptor-ref name="logger" /&gt; &lt;interceptor-ref name="timer" /&gt; &lt;/interceptor-stack&gt;

Lucas_Teixeira

LIPE:
Certeza que dentro do interceptor-stack tem o atributo param?

&lt;interceptor-stack name="defaultStack"&gt; &lt;interceptor-ref name="component" /&gt; &lt;interceptor-ref name="static-params" /&gt; &lt;interceptor-ref name="params" /&gt; <-- esse daqui &lt;interceptor-ref name="logger" /&gt; &lt;interceptor-ref name="timer" /&gt; &lt;/interceptor-stack&gt;

sim… ela está na defaultStack… =)

Lucas_Teixeira

Achei…

Eu achei que packages ao herdarem um dos outros herdassem junto as propriedades… (é este o conceito de OO, não estou correto? :wink: )

Maaaaaasssssss, quando herdava um pacote, este vinha com as stacks do super-package definida, porém não com a stack default setada…

“Vivendo e aprendendo, errando e se fudendo…”

:stuck_out_tongue:

_fs

Posta isso lá no Jira do WW :smiley:

Lucas_Teixeira

ótima idéia…

:stuck_out_tongue:

Criado 12 de janeiro de 2005
Ultima resposta 12 de jan. de 2005
Respostas 5
Participantes 2