Como utilizar Vector.contains?

if (“incluirItem”.equals(request.getParameter(“lista”)))
{
Produto produtoSelecionado = new Produto();
try
{

			HttpSession sessaoVector = request.getSession(true);

			produtoSelecionado.setDados(
			request.getParameter("codProd"), 
			request.getParameter("codMarca"), 				
			request.getParameter("nomeProduto"),
			request.getParameter("txtQuantidade"),
			request.getParameter("txtQtdMin"),
			request.getParameter("txtPrecoVenda"),
			request.getParameter("txtPrecoCusto"));
			
			if (sessaoVector.getAttribute("matriz") != null)				
			{
		 		lista = (Vector)sessaoVector.getAttribute("matriz");
				if (lista.contains(produtoSelecionado))
				{	%>	
					Este item já existe na lista.	
				<%} else {
					lista.addElement(produtoSelecionado);		
					sessaoVector.setAttribute("matriz", lista);	
				}
			}
			else
			{				
				vetor.addElement(produtoSelecionado);									
				sessaoVector.setAttribute("matriz", vetor);				
			}
		}
		catch(Exception e)
		{ }		 		  
 	}

%>

Opa galera eu postei e esqueci de falar o que está ocorrendo.

E o seguinte, não posso deixar o usuário informar o mesmo produto no Vector

Tenho que verificar se o objeto inserido já existe no vector, mas essa rotina não está fazendo isso!

Na verdade eu preciso verificar se o codigo do produto ja esta no vector, caso afirmativo eu tenho que atualizar se os valores forem diferentes e se forem iguais, tenho que informar ao usuário que o produto consta na lista

O teu codigo esta correto, mas provavelmente o teu objeto Produto nao. Voce precisa sobrescrever os metodos “hashCode()” e equals(Object)", da classe object.

Por exemplo,

public class Produto {
    ...
    public boolean equals(Object o) {
        if (!(o instanceof Produto)) {
            return false;
        }

        Produto p = (Produto)o;
        // faca aqui comparacoes de igualdade
        // entre os membros relevantes da classe
        // Exemplo:
        if (p.getNome().equals(this.nome) 
           && p.getEmail().equals(this.email)) {
            return true;
        }

        return false;
}

Rafael

Valeu Rafael, muito obrigado!