Dúvida sobre Struts 2

2 respostas
Maikon_Parreira

Ola, gostaria de saber como faço para o valor de uma variável da action para a view. Por incrível que pareça, não consigo fazer isso. Estou trabalhando com Struts a pouco tempo.

Para ser mais objetivo o que quero é o seguinte: O <TITLE> de cada view será diferente, logo o nome do title deve vir de sua action. A pergunta é : Como faço para passar o valor de uma variável, no caso o nome do TITLE para a view ?

2 Respostas

Metaleiro

[color=darkblue] Bem, responderei isso da forma que faço com ExtJS, com JavaScript o procedimento seria o mesmo, primeiro gero o valor em código java, no caso vou gerar o retorno de um insert, o id gerado, mas poderia ser outro valor:[/color]

public int insertData(int cod, String tx) {
        int resultReturn;
        Connection conn = null;
        PreparedStatement pstmt = null;
        ResultSet rs = null;
        StringBuilder sql = new StringBuilder();
        sql.append(" INSERT INTO teste.teste (cod, tx, num) " +
                " VALUE(?, ?, ?);");
        try {
            conn = ConnectionPooler.getConexao();
            pstmt = conn.prepareStatement(sql.toString());
            pstmt.clearParameters();
            pstmt.setInt(1, cod=);
            pstmt.setString(2, tx);
            ResultSet rsGenerated = pstmt.getGeneratedKeys();
            rsGenerated.first();
            if (rsGenerated.isFirst()) {
                resultReturn = rsGenerated.getInt(1);
            } else {
                resultReturn = -1;
            }
        } catch (SQLException e) {
            Logger.getLogger(CcmDao.class.getName()).log(Level.SEVERE, e.getMessage(), e);
            resultReturn = -2;
        } finally {
            ConnectionPooler.closeAll(null, pstmt, rs);
        }
        return resultReturn;
    }

[color=darkblue] Isso tudo era para mostrar como fiz pegando o valor do ID de retorno, ou seja primeiro você tem que retornar um valor, você deve fazer o tratamento dele em sua classe que pode ser um Action, depois é só pegar o retorno em uma função do tipo:[/color]

succeded: function(form, action) {
        this.new = action.result.data;
    }

[color=darkblue] Depois você dá uma procurada para retornar um JSON, dai você procura fazer da maneira que achar melhor[/color]

F

Não sei se to falando besteira, mas você poderia usar EL, tipo:

${param.}
Criado 23 de setembro de 2010
Ultima resposta 23 de set. de 2010
Respostas 2
Participantes 3