Bom Dia galera.
sou novo neste forum, e preciso de ajuda.
comecei agora numa empresa, para trabalhar com java, eu conheço o basico do basico e me contrataram mesmo assim para ver se no tempo de experiencia aprendo alguma coisa.
é o seguinte:
tenho um codigo de venda e cada tela que aparece eu tenmho que selecionar um produto, e ela vai guardando numa session.
Quando chega na tela de finalizar, eu vou no link voltar da pagina, e volto para selecionar mais um produto, porém eu passo por uma tela onde eu tenho que escolher um antivirus, só que nessa tela, eu já tinha escolhido, mas ele aparece não selecionado, aí eu seleciono e na tela de finalização aparece duplicado:
ex:
Antivirus
Antivirus,
teria que ser :
Antivirus (quantidade 2).
eu sei que é algum erro no servlet, mas como disse entendo o basico do basico e quero passar neste tempo de experiencias aprendendo alguma coisa.
se precisarem do codigo, é só falarem.
preciso de ajuda.
Pelo que entendi o problema ai é lógica, você tem que verificar se já tem aquele produto na session e aumentar a quantidade, caso contrário você sempre terá n itens duplicados.
Posta o seu código que fica mais fácil ajudar também.
InstanceinstanceBandaLarga=(Instance)sessao.getAttribute("tbnInstance");booleanisOnNet=instanceBandaLarga.getInstallAddress().isOnNet();intbandaLargaDownloadStream=0;try{IteratoriElements=instanceBandaLarga.getElements().iterator();while(iElements.hasNext()){InstanceElementiElem=(InstanceElement)iElements.next();Elementelem=iElem.getElement();ElementParamdownloadParam=elem.getParameterByName("download");if(downloadParam!=null){bandaLargaDownloadStream=downloadParam.getMaxValue().intValue()/1024;break;}}}catch(GvtExceptionex){Stringlog="DEA-STR-005 - Erro na recuperação do Elemento.";uniqueLog.error(log);thrownewGvtException(log);}/* Carrega os elementos pagos da suite de segurança Protect. */CollectioncolProtectElements=newArrayList();try{Bundlebundle=Bundle.ejbFindByBundleName("PROTECT_SUITE");colProtectElements=BundleElement.ebjFindElementsByBundleCode(bundle.getBundleCode(),newString[]{"PRT"},isOnNet);}catch(GvtExceptionex){Stringlog="DEA-STR-005 - Erro na recuperação do Elemento.";uniqueLog.error(log);thrownewGvtException(log);}request.setAttribute("colProtectElements",colProtectElements);/* Seta no request e finaliza. *//* Carrega os elementos gratuitos da suite de segurança Protect. */ElementmodemWiFi=null;// Apenas para banda larga igual ou acima de 15Mbpsif(bandaLargaDownloadStream>=15){// A colecao eh a mesma, apenas para controle de tela se deve mostrarrequest.setAttribute("colFreeProtectElements",colProtectElements);// Modem WiFi apenas para o 15Mbpsif(bandaLargaDownloadStream==15){try{modemWiFi=Element.ejbFindByName("Modem/Router Wi-Fi");request.setAttribute("modemWiFiElement",modemWiFi);}catch(GvtExceptionex){Stringlog="DEA-STR-005 - Erro na recuperação do Elemento.";uniqueLog.error(log);thrownewGvtException(log);}}/* Carrega os elementos da campanha para verificar se tem gratuitos / modem. */if(!"bandaLarga".equals(clientType)){CollectioncampaignElements=CampaignUtil.findElementsByCampaign(instanceBandaLarga.getCampaign());if(campaignElements.size()>0){IteratorcampaignElementsIterator=campaignElements.iterator();while(campaignElementsIterator.hasNext()){LongelemCode=Long.valueOf((String)campaignElementsIterator.next());Elementelement=Element.ejbFindByPrimaryKey(elemCode);StringelemName=element.getName().toUpperCase();if(elemName.indexOf("GRATUITO")>0){// element gratuito, não pode ter mais de um na vendarequest.setAttribute("freeProtectFromCampaign",element.getPrimaryKey());}if(elemName.equals("MODEM/ROUTER WI-FI")){// modem router wi-fi na campanha, nao permite que seja retiradorequest.setAttribute("modemWiFiFromCampaign",element.getPrimaryKey());}}}}/* Fim tratamento de campanhas. */}//redirecionaforward("/store/"+alternateContext.getContext()+"protectElements.jsp",request,response);}catch(Exceptione){HttpSessionsessao=request.getSession(false);AlternateContextalternateContext=(AlternateContext)sessao.getAttribute("context");//variavel para controle de palme.printStackTrace();request.setAttribute("errorMessage",e.getMessage());forward("/"+alternateContext.getContext()+"erro.jsp",request,response);}}
aí está o codigo.
M
markin1
coloca isso ai entre as tags [code]
caso contrário fica difícil a leitura.