JSTL e EL com duas classes

Boa noite a todos do fórum.

Bem estou com um problema em exibir os campos de uma tabela em um formulário de alteração de usuarios.
Tenho as classes abaixos:

Cadastro:

[code]package classe.modelo.vo;

import java.sql.Date;

public class Cadastro{
private int id;
private String cnpjCpf;
private String razaoSocial;
private String nome;
private String inscrEstadual;
private String rg;
private String inscrMun;
private String rua;
private String complemento;
private String numero;
private String bairro;
private Municipio municipio; // campo municipio id
private String cep;
private String telefone;
private String www;
private String email;
private String obs;
private Date dtCadastro;
private String sts;
private Empresa empresa;

public int getId() {
	return id;
}
public void setId(int id) {
	this.id = id;
}
public String getCnpjCpf() {
	return cnpjCpf;
}
public void setCnpjCpf(String cnpjCpf) {
	this.cnpjCpf = cnpjCpf;
}
public String getRazaoSocial() {
	return razaoSocial;
}
public void setRazaoSocial(String razaoSocial) {
	this.razaoSocial = razaoSocial;
}
public String getNome() {
	return nome;
}
public void setNome(String nome) {
	this.nome = nome;
}
public String getInscrEstadual() {
	return inscrEstadual;
}
public void setInscrEstadual(String inscrEstadual) {
	this.inscrEstadual = inscrEstadual;
}
public String getRg() {
	return rg;
}
public void setRg(String rg) {
	this.rg = rg;
}
public String getInscrMun() {
	return inscrMun;
}
public void setInscrMun(String inscrMun) {
	this.inscrMun = inscrMun;
}
public String getRua() {
	return rua;
}
public void setRua(String rua) {
	this.rua = rua;
}
public String getComplemento() {
	return complemento;
}
public void setComplemento(String complemento) {
	this.complemento = complemento;
}
public String getNumero() {
	return numero;
}
public void setNumero(String numero) {
	this.numero = numero;
}
public String getBairro() {
	return bairro;
}
public void setBairro(String bairro) {
	this.bairro = bairro;
}
public Municipio getMunicipio() {
	return municipio;
}
public void setMunicipio(Municipio municipio) {
	this.municipio = municipio;
}
public String getCep() {
	return cep;
}
public void setCep(String cep) {
	this.cep = cep;
}
public String getTelefone() {
	return telefone;
}
public void setTelefone(String telefone) {
	this.telefone = telefone;
}
public String getWww() {
	return www;
}
public void setWww(String www) {
	this.www = www;
}
public String getEmail() {
	return email;
}
public void setEmail(String email) {
	this.email = email;
}
public String getObs() {
	return obs;
}
public void setObs(String obs) {
	this.obs = obs;
}
public Date getDtCadastro() {
	return dtCadastro;
}
public void setDtCadastro(Date dtCadastro) {
	this.dtCadastro = dtCadastro;
}
public String getSts() {
	return sts;
}
public void setSts(String sts) {
	this.sts = sts;
}
public Empresa getEmpresa() {
	return empresa;
}
public void setEmpresa(Empresa empresa) {
	this.empresa = empresa;
}    

}
[/code]
A classe Usuario:

[code]
package classe.modelo.vo;

public class Usuario extends Cadastro{
private int id;
private String login;
private String senha;
private String status;

@Override
public int getId() {
	return id;
}
@Override
public void setId(int id) {
	this.id = id;
}
public String getLogin() {
	return login;
}
public void setLogin(String login) {
	this.login = login;
}
public String getSenha() {
	return senha;
}
public void setSenha(String senha) {
	this.senha = senha;
}
public String getStatus() {
	return status;
}
public void setStatus(String status) {
	this.status = status;
}

}[/code]
Aí eu fiz um método chamado procurar, para trazer o usuário a ser alterado.

O método procurar na classe UsuarioDao:

public Usuario procurar(int Id){
    	try {
			Usuario usuario = null;
			String sql="SELECT c.cad_id ,c.cad_nome ,c.cad_email ,c.cad_telefone ,c.cad_cnpjcpf , " +
			"c.cad_rg ,c.cad_rua ,c.cad_complemento ,c.cad_numero ,c.cad_bairro ,c.cad_dtcadastro , " +
			"u.usu_id ,u.usu_login ,u.usu_senha ,u.usu_sts ,m.mun_descricao FROM cadastro c " +
			"INNER JOIN usuario u " +
			"ON " +
			"u.usu_id = c.cad_id " +
			"INNER JOIN municipio m " +
			"ON " +
			"m.mun_id = c.cad_munid " +
			"where u.usu_id = ? ";
			PreparedStatement consulta = conexao.prepareStatement(sql);
			consulta.setInt(1,Id);
			ResultSet resultado = consulta.executeQuery();
			if(resultado.next()){
				  usuario = new Usuario();
				  usuario.setMunicipio(new Municipio());
				  usuario.setId(resultado.getInt("cad_id"));
				  usuario.setNome(resultado.getString("cad_nome"));
				  usuario.setEmail(resultado.getString("cad_email"));
				  usuario.setTelefone(resultado.getString("cad_telefone"));
				  usuario.setCnpjCpf(resultado.getString("cad_cnpjcpf"));
				  usuario.setRg(resultado.getString("cad_rg"));
				  usuario.setRua(resultado.getString("cad_rua"));
				  usuario.setComplemento(resultado.getString("cad_complemento"));
				  usuario.setNumero(resultado.getString("cad_numero")); 
				  usuario.setBairro(resultado.getString("cad_bairro"));
				  usuario.setDtCadastro(resultado.getDate("cad_dtcadastro"));
				  usuario.setId(resultado.getInt("usu_id"));
				  usuario.setLogin(resultado.getString("usu_login"));
				  usuario.setSenha(resultado.getString("usu_senha"));
				  usuario.setStatus(resultado.getString("usu_sts"));
				  usuario.getMunicipio().setDescricao(resultado.getString("mun_descricao"));
			}
			return usuario;
		} catch (Exception e) {
			e.printStackTrace();
			return null;
		}
    }

e por último a JSP para alterar o usuário:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<jsp:useBean id="usuario" scope="session" class= "classe.modelo.vo.Usuario" />
<jsp:useBean id="cadastro" scope="session" class= "classe.modelo.vo.Cadastro" /> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Alterar Usuário</title>
</head>
<body>
<jsp:include page="menu.jsp" />
        <fieldset>
            <h2> Alterar Usuário</h2>
            <!-- Colocar imagem para cadastro de usuarios           -->
            <!--            <center><img id="photo_compagny" src="images/business_7.jpg" alt="company xhdzy" title="photo_compagny" /></center>
                        <div class="clear"></div><br>-->
            <form method="post" action="ServletUsuario?acao=Cadastrar">
                <fieldset>
                    <legend>Informações pessoais</legend>
                    <br />
                    <table cellpadding=0 cellspacing=0  border="0">
                        <tr>
                            <td>Nome completo: </td>
                            <td><input type="text" name="nome" required="true" size="50" value="${cadastro.nome}"></td>
                        </tr>
                        //só exibe os dados daqui...
                        <tr>
                            <td>Login: </td>
                            <td><input type="text" name="login" required="true" value="${usuario.login}"></td>
                        </tr>
                        <tr>
                            <td>Senha: </td>
                            <td><input type="password" name="senha" required="true" value="${usuario.senha}"></td>
                        </tr>
                        <tr>
                            <td>Status do Usuário: </td>
                            <td>
                            //...até aqui.
                            <c:if test="${usuario.status == 'AT'}">
                                <input type="radio" name="sts" value="AT" checked="true"/>Ativo
                            </c:if>                           
                                <input type="radio" name="sts" value="IN" />Inativo
                            </td>
                        </tr>
                        <tr>
                            <td>Endereço de E-Mail: </td>
                            <td><input type="text" name="email" required="true" size="50" value="${cadastro.email}"></td>
                        </tr>
                        <tr>
                            <td>Telefone de Contato: </td>
                            <td><input type="text" name="telefone" required="true" value="${cadastro.telefone}"></td>
                        </tr>
                        <tr>
                            <td>Cpf: </td>
                            <td><input type="text" name="cnpjCpf" required="true" value="${cadastro.cnpjCpf}"></td>
                        </tr>
                        <tr>
                            <td>RG: </td>
                            <td><input type="text" name="rg" required="true" value="${cadastro.rg}"></td>
                        </tr>

                    </table>
                </fieldset>
                <br>
                <fieldset>
                    <legend>Endereço</legend>
                    <table cellpadding=0 cellspacing=0 border="0">
                        <tr>
                            <td>Rua: </td>
                            <td><input type="text" name="rua" required="true" size="50" value="${cadastro.rua}"></td>
                        </tr>
                        <tr>
                            <td>Complemento: </td>
                            <td><input type="text" name="complemento" size="50" value="${cadastro.complemento}"></td>
                        </tr>
                        <tr>
                            <td>Número: </td>
                            <td><input type="text" name="numero" size="50" value="${cadastro.numero}"></td>
                        </tr>
                        <tr>
                            <td>Bairro: </td>
                            <td><input type="text" name="bairro" size="50" value="${cadastro.bairro}"></td>
                        </tr>
                        <tr>
                            <td>Município: </td>
                            <td><select name="municipio" required="true">
                                   <c:forEach items="${Municipio}" var="item">
                                        <option value="${item.id}" <c:if test="${item.id == usuario.municipio.id}"> selected</c:if> >${item.descricao}</option>
                                   </c:forEach>
                                </select></td>
                        </tr>
                        <tr>
                            <td>Cep: </td>
                            <td><input type="text" name="cep" value="${cadastro.cep}"></td>
                        </tr>
                        <tr>
                            <td  valign="top">Observação: </td>
                            <td height="52" valign="bottom"><textarea name="obs">${cadastro.obs}</textarea></td>
                        </tr>
                    </table>
                </fieldset>
                <table cellpadding=0 cellspacing=0 style="width:100%;height:100%;" border="0">
                    <tr>
                        <td colspan="2" align="center"><input  type="submit" name="salvar" value="Salvar"/></td>
                        <td colspan="2" align="center"><input  type="reset" name="reset" value="Cancelar"/></td>
                        <td colspan="2" align="center"><input  type="button" name="btn" onclick="window.location.href='menu.jsp'" value="Home"/></td>
                    </tr>
                </table>
            </form>
        </fieldset>
</body>
</html>

O problema é que não dá nenhuma mensagem de erro mas também não exibe os dados do cadastro, somente exibe o login, a senha e status que pertence a classe usuario.
O que está errado? :?:

Gente eu resolvi este problema. Onde estava a EL cadastro, eu troquei por usuário e funcionou.
O problema agora é outro: Não está listando o município e quando listar, tenho que saber qual municipio o usuário está cadastrado.
Eu fiz uma comparação na JSP que não funciona:

...
<tr>  
    <td>Município: </td>  
    <td>
       <select name="municipio" required="true">  
           <c:forEach items="${Municipio}" var="item">  
           <option value="${item.id}" <c:if test="${item.id == usuario.municipio.id}"> selected</c:if> >${item.descricao}</option>  
           </c:forEach>  
       </select></td>  
    </tr>
... 

Só aparece a palavra selected quando exibe a jsp.
Como fazer esta comparação :?: