Remover item de JList

Olá galera,
estou tentanto remover um intem de um JList e nao estou conseguindo estou gerando uma exeção:
java.lang.ArrayIndexOutOfBoundsException: Array index out of range

estou tentado removar assim:

testa =  selected[jl_selected.getSelectedIndex()];   
                   jl_selected.remove(jl_selected.getSelectedIndex());   
                   jl_selected.validate();  
 testa =  selected[jl_selected.getSelectedIndex()];
                    jl_selected.remove(jl_selected.getSelectedIndex());
                    jl_selected.validate();

como deve ser?
Grato.

verifica qual o valor que esse metodo retorna jl_selected.getSelectedIndex(), pode ser que ele esteja retornando se é primeiro segundo terceiro e assim por diante, como o jList começa do zero isso seria um problema, outro é ele não estar retornando nada. Não tenho como testar, pois estou sem java temporariamente. Da uma verificada

bem isso…

Toda vez que você remover itens de uma estrutura tipo vetor de dados, sempre faça o loop do final para o começo pois a medida que você vai removendo itens o tamanho do vetor é alterado. Segue um exemplo de um listener para remover dados de um JList.

list = é o meu objeto JList
modeloLista = é meu objeto DefaultListModel

jbRem.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent arg0) 
			{
				int[] selecionados = lista.getSelectedIndices();
				int size = selecionados.length-1;
				
				for(int i=size;i>=0;i--)
				{
					modeloLista.remove(selecionados[i]);
				}
			}
		});