Imprimir vários registros de tabelas diferentes

Pessoal, é o seguinte:
Tenho duas tabelas (DAO): jogos e selecao

public class Jogo {

     private Long cod_jogo;
    private Long cod_selecao_a;
    private Long cod_selecao_b;
    private String dt_jogo;
    private String horario;
    private Integer gols_selecao_a;
    private Integer gols_selecao_b;
    private String estadio;
    private String fase;

// setters e getters
public class Selecao {

    private Long cod_selecao;
    private String nome;
    private String tecnico;
    private String grupo;
    private String logo;

// setters e getters

na minha JDBCDAO faço a seguinte pesquisa:

public List<Jogo> getLista() throws SQLException {
        PreparedStatement stmt =
                this.connection.prepareStatement("select *, sel_a.nome as selecao_a,"+
                "sel_b.nome as selecao_b from jogo j "+
                "inner join selecao sel_a on sel_a.cod_selecao = j.cod_selecao_a "+
                "inner join selecao sel_b on sel_b.cod_selecao = j.cod_selecao_b");
        ResultSet rs = stmt.executeQuery();

Assim, quando eu chamar uma action ela vai executar o jdbc que lista os valor pra mim e tudo mais. Até aqui tá funcionando (ela pesquisa e retorna tudo certinho), porém eu quero imprimir os seguintes valores:

 <c:forEach var="jogo" items="${jogos}">                         
     <tr>  
         <td>${jogo.selecao_a}</td>  
         <td>${jogo.selecao_b}</td>  
         <td>${jogo.estadio}</td>  
         <td>${jogo.fase}</td>         
     </tr>  
 </c:forEach> 

O problema é que só está sendo impresso o “estadio” e a “fase”

E gera o seguinte erro:

javax.el.PropertyNotFoundException: Property 'selecao_a' not found on type ef.jdbc.modelo.Jogo

Alguém poderia me auxiliar urgente. Fico grato.

Ah, estou utilizando struts tb.

Meu lista que está dentro do jdbcDAO é:

public List<Jogo> getLista() throws SQLException {
        PreparedStatement stmt =
                this.connection.prepareStatement("select *, sel_a.nome as selecao_a,"+
                "sel_b.nome as selecao_b from jogo j "+
                "inner join selecao sel_a on sel_a.cod_selecao = j.cod_selecao_a "+
                "inner join selecao sel_b on sel_b.cod_selecao = j.cod_selecao_b");
        ResultSet rs = stmt.executeQuery();
        List<Jogo> jogos = new ArrayList<Jogo>();
        while (rs.next()) {
            // criando o objeto Funcionario
            Jogo jogo = new Jogo();
            jogo.setCod_jogo(rs.getLong("cod_jogo"));
            jogo.setCod_selecao_a(rs.getLong("cod_selecao_a"));
            jogo.setCod_selecao_b(rs.getLong("cod_selecao_b"));
            jogo.setDt_jogo(rs.getString("dt_jogo"));
            jogo.setHorario(rs.getString("horario"));
            jogo.setGols_selecao_a(rs.getInt("gols_selecao_a"));
            jogo.setGols_selecao_b(rs.getInt("gols_selecao_b"));
            jogo.setEstadio(rs.getString("estadio"));
            jogo.setFase(rs.getString("fase"));
            // adicionando o objeto à lista
            jogos.add(jogo);

        }
        rs.close();
        stmt.close();
        return jogos;
    }

Fico no aguardo!
Valew.

você não tem esse atributo “selecao_a” no teu bean, então não vai achar mesmo, vc tem que passar os atributos dos teus beans e não da query.

Dica: para nomear suas variáveis e métodos use CamelCase http://en.wikipedia.org/wiki/CamelCase

E qual seria a melhor alternativa então?
Criar o atributo no meu bean?
Assim:

public class Jogo {

   [color=red] [b]private String selecao_a;[/b][/color]

    private Long cod_jogo;
    private Long cod_selecao_a;
    private Long cod_selecao_b;
    private String dt_jogo;
    private String horario;
    private Integer gols_selecao_a;
    private Integer gols_selecao_b;
    private String estadio;
    private String fase;

porque esse selecao_a pertence a uma outro tabelo (como percebe no sql)
Qual a melhor solução?

Eu colocaria um atributo no meu bean do tipo de dado selecao.

private Selecao selecao;

mas essa alternativa que você deu também funciona, só não sei se é o melhor jeito de se fazer.

Markin1, concordo com você que não ficaria muito elegante, mas se eu coloco-o como “private Selecao selecao” como eu setaria no meu JDBCDAO. Assim não funcionou:

jogo.setSelecao(rs.getString("selecao_a")); 

Alguma outra alternativa?

Ninguém para me auxiliar?

Pessoal, fiz como o Markin sugeriu. Mas e agora? Como chamar o arquivo no meu JDBC?

public class Jogo {  
   
    private Selecao selecao_a;
   
     private Long cod_jogo;  
     private Long cod_selecao_a;  
     private Long cod_selecao_b;  
     private String dt_jogo;  
     private String horario;  
     private Integer gols_selecao_a;  
     private Integer gols_selecao_b;  
     private String estadio;  
     private String fase;