Problemas com Sessão IE9

0 respostas
E

Olá,

Tenho uma aplicacao com um carrinho de compras implementado, funciona normalmente no FF e no GC, porém no IE9 as variaveis de sessão são setadas mas não são apresentadas ao carregar a página. somente quando eu adiciono um item no carrinho.
No FF e GC eu consigo adicionar dois itens iguais e no IE9 também não dá.
Abaixo seguem os códigos:

Action para adicionar ao carrinho:

package action;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import itens.cd.Cd;
import itens.cd.CdDAO;
import java.util.ArrayList;
import java.util.Map;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;


public class LojaAddCarrinho extends ActionSupport {

    private Cd cd;
    private ArrayList<Cd> cds = new ArrayList<Cd>();

    @Action(value = "addCarrinho", results = {
        @Result(name = "ok", location = "loja/carrinho.jsp")
    })
    @Override
    public String execute() {
        Map session = ActionContext.getContext().getSession();

        if (ActionContext.getContext().getParameters().get("cd.id") != null) {
            // id = 0 usado ao carregar a página.
            if (cd.getId() == 0) {
                return "ok";
            }
            if (session.get("carrinhoCds") != null) {
                cds = (ArrayList<Cd>) session.get("carrinhoCds");
            }
            cds.add(new CdDAO().buscaPorId(cd.getId()));
            session.put("carrinhoCds", cds);
        }

        return "ok";
    }

    public Cd getCd() {
        return cd;
    }

    public void setCd(Cd cd) {
        this.cd = cd;
    }

    public ArrayList<Cd> getCds() {
        return cds;
    }

    public void setCds(ArrayList<Cd> cds) {
        this.cds = cds;
    }
    
}

JavaScript com Ajax:

this.addCarrinho = function(cd){
            
            var url = "addCarrinho?cd.id="+cd.getId();
                
            $.ajax({
                url: url,
                dataType: 'html',
                success: function (html) {
                    //#carrinho é a div container para mostrar o carrinho
                    $('#carrinho').html(html);
                    
                }
            });

        };

JSP do carrinho:

<c:forEach var="cd" items="${carrinhoCds}" varStatus="id">
    <div class="itemCarrinho">
        <table>
            <tr>
                <td>
                    <img align="top" src="${cd.capa}">
                </td>
                <td>
                    <b>${cd.titulo}</b>
                    <br>
                    ${cd.artista}
                </td>
            </tr>
        </table>
    </div>
</c:forEach>
Criado 9 de janeiro de 2013
Respostas 0
Participantes 1