Expandir a altura da linha JList, dependendo do conteúdo

Tenho um problema simples que me deixa totalmente louco.

Eu tenho uma JList e gostaria que suas células se expandissem dependendo do conteúdo, que é um texto de tamanho variáve

ntão, eu criei um CustomCellRenderer assim:

@Override
public Component getListCellRendererComponent(final JList list, final Object value, final int index, final boolean isSelected, final boolean hasFocus)
{
    final String text = (String) value;

    final JTextArea ta = new JTextArea();
    ta.setText(text);
    ta.setFont(new Font("Dialog", Font.PLAIN, (int) Theme.FONTSIZE_TEXT));
    ta.setForeground(Theme.FONTCOLOR_CONTENT);
    ta.setLineWrap(true);
    ta.setWrapStyleWord(true);
    ta.setColumns(0);
    ta.setBorder(BorderFactory.createEmptyBorder(10, Theme.PADDING, 0, 0));
    return ta;
}

mas as células têm apenas uma linha de texto e o restante da JTextArea é cortado. Se eu adicionar

ta.setPreferredSize(new Dimension(0, 70));

Recebo uma altura de linha de 70 e consigo ver mais do texto do JTextArea, mas ainda não tud

Existe alguma maneira de fazer o JList expandir suas células para que todo o conteúdo do JTextArea seja exibid

questionAnswers(3)

yourAnswerToTheQuestion