Como faço pra colocar informações que estão em tabelas diferentes no mesmo ComboBox?

Olá, Estou com dificuldades ao tentar colocar Clientes físicos e Clientes jurídicos em um mesmo comboBox, tenho essas duas tabelas no meu banco de Dados e até agora eu só consigo passar os dados de uma tabela. eu tenho um ComboModel pra cada que sao estes:

Cliente Juridico:

[code]/*

  • To change this template, choose Tools | Templates
  • and open the template in the editor.
    */
    package combomodel;

import dao.DAOClienteJur;
import java.util.List;
import javax.swing.AbstractListModel;
import javax.swing.ComboBoxModel;
import modelo.ClienteJur;

/**
*

  • @author 111010ClienteJurComboModel8-3
    */
    public class ClienteComboModel extends AbstractListModel implements ComboBoxModel {

    private List lista;

    /* Seleciona um objeto na caixa de seleção */
    private ClienteJur selecionado;

    /* Método construtor /
    public ClienteComboModel(){
    /
    Popula a lista */
    popular();

     /* Define o objeto selecionado */
     setSelectedItem(lista.get(0));
    

    }

    /* Captura o tamanho da listagem */
    public int getSize() {
    int totalElementos = lista.size();
    return totalElementos;
    }

    /* Captura um elemento da lista em uma posição informada */
    public ClienteJur getElementAt(int indice) {
    ClienteJur t = lista.get(indice);
    return t;
    }

    /* Marca um objeto na lista como selecionado */
    public void setSelectedItem(Object item) {
    selecionado = (ClienteJur) item;
    }

    /* Captura o objeto selecionado da lista */
    public Object getSelectedItem() {
    return selecionado;
    }

    private void popular(){
    try{
    /* Cria o DAO */
    DAOClienteJur tdao = new DAOClienteJur();

         /* Cria um modelo vazio */
         ClienteJur t = new ClienteJur();
         t.setNomeEmpresa("");
         
         /* Recupera os registros da tabela */
         lista = tdao.buscar(t);
         
         /* Cria o primeiro registro da lista */
         ClienteJur primeiro = new ClienteJur();
         primeiro.setCodigo(0);
         primeiro.setNomeEmpresa("SELECIONE");
         
         /* Adiciona o primeiro registro a lista */
         lista.add(0, primeiro);     
     }catch(Exception ex){
         ex.printStackTrace();
     }
    

    }
    }
    [/code]

Cliente Fisico:

[code]/*

  • To change this template, choose Tools | Templates
  • and open the template in the editor.
    */
    package combomodel;

import dao.DAOClienteFis;
import java.util.List;
import javax.swing.AbstractListModel;
import javax.swing.ComboBoxModel;
import modelo.ClienteFis;

/**
*

  • @author 111010ClienteJurComboModel8-3
    */
    public class ClienteFisComboModel extends AbstractListModel implements ComboBoxModel {

    private List lista;

    /* Seleciona um objeto na caixa de seleção */
    private ClienteFis selecionado;

    /* Método construtor /
    public ClienteFisComboModel(){
    /
    Popula a lista */
    popular();

     /* Define o objeto selecionado */
     setSelectedItem(lista.get(0));
    

    }

    /* Captura o tamanho da listagem */
    public int getSize() {
    int totalElementos = lista.size();
    return totalElementos;
    }

    /* Captura um elemento da lista em uma posição informada */
    public ClienteFis getElementAt(int indice) {
    ClienteFis t = lista.get(indice);
    return t;
    }

    /* Marca um objeto na lista como selecionado */
    public void setSelectedItem(Object item) {
    selecionado = (ClienteFis) item;
    }

    /* Captura o objeto selecionado da lista */
    public Object getSelectedItem() {
    return selecionado;
    }

    private void popular(){
    try{
    /* Cria o DAO */
    DAOClienteFis tdao = new DAOClienteFis();

         /* Cria um modelo vazio */
         ClienteFis t = new ClienteFis();
         t.setNome("");
         
         /* Recupera os registros da tabela */
         lista = tdao.buscar(t);
         
         /* Cria o primeiro registro da lista */
         ClienteFis primeiro = new ClienteFis();
         primeiro.setCodigo(0);
         primeiro.setNome("SELECIONE");
         
         /* Adiciona o primeiro registro a lista */
         lista.add(0, primeiro);     
     }catch(Exception ex){
         ex.printStackTrace();
     }
    

    }
    }
    [/code]

na minha tela eu fui no combo box e nas probriedades, no model e no codigo personalizado coloquei:

new ClienteComboBox()

E funcionou normalmente, mas nao consigo colocar os dados dos dois juntos no mesmo combo, se alguém puder ajudar agradeço.

Corrigindo, coloquei

new ClienteComboModel

[quote=sinkz]Corrigindo, coloquei

new ClienteComboModel

Amigo, já tentou fazer da seguinte forma…
cria 1 classe que adiciona os jurídicos e outro que adiciona os físicos
e no método de preencher o jtable chamar essas 2 classes?

Acho que isso irá resolver seu problema…

Se vc quer adicionar todos os clientes independente de ser pessoa física ou jurídica, crie um model que adicione os dois tipos de cliente na mesma lista, no seu caso vc está inserindo apenas um tipo de cliente na lista, basta inserir o outro tipo na mesma lista.