Scroll + jtextarea

Fiz um programa usando java e em um JPanel tem um JScrollPane.
Dentro desse JPanel tem um JTextArea que quase preenche toda a horizontal do JPanel.
Quando tento usar o scroll do mouse ele para naquele JTextArea e não desce mais. Existe alguma maneira de deixar o scroll do mouse funcionar e mexer o JScrollPane sem interferência do JTextArea?

Não entendi.

Sim, mas teria que remover o ScrollPane “parente” do TextArea.

Em algum lugar está adicionando o TextArea em um ScrollPane, se remover esse ScrollPane e inserir o TextArea diretamente no Panel, o ScrollPane do Panel funcionará sem interferência.

Não é possível fazer funcionar desse jeito com um ScrollPane dentro de um outro.

O problema de fazer isso é que se o usuário escrever mais do que o tamanho do JTextArea vai dar ruim né?

Isso mesmo. Vi na documentação que tem o método setWheelScrollingEnabled, mas acho que não vai funcionar. Infelizmente não conheço uma forma de resolver esse problema.

Talvez se capturar os eventos de Scroll do TextArea e transferir para o outro ScrollPane dê certo.

Fiz um teste, e funcionou removendo ScrollPane do TextArea

    JFrame f = new JFrame();
    
    JTextArea a = new JTextArea();
    JPanel panel = new JPanel(new BorderLayout());
    panel.add(a, BorderLayout.CENTER);
    JScrollPane p = new JScrollPane(panel);
    f.getContentPane().add(p);
    
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    f.setVisible(true);

Acho que vai depender do Layout, se usar o setPreferredSize no TextArea também não funciona.

E porque você precisa do JScrollPane se não vai rolar nada dentro dele?

Se eu retirar o JScrollPane do JTextArea ele funciona normal, porem se o JTextArea for pequeno e eu começar a inserir dados e dar ENTER ele não vai ficar legal e eu não vou conseguir ler a parte de cima que eu escrevi.

vou rolar sim…dependendo de quanto o usuário escrever no JTextArea ele vai ultrapassar a quantidade de linhas que eu tenho de espeço e dai ele não vai ver o que escreveu.
O JPanel já está do tamanho certo da tela do usuário também e como a quantidade de informação é grande no JPanel eu preciso de um JScrollPane para descer e visualizar o resto do JPanel

Seus argumentos estão estranhos pra mim.
Me parece que talvez é só uma confusão em como organizar os painéis e respectivos gerenciadores de layout.

JScrollPane
->JInternaFrame
->JScrollPane
->JTextArea
O que pode ter de errado neles? Está desse jeito que te mostrei. Usei a própria interface do netbeans para criar o layout. Ele já cria desta maneira.
O diego12 entendeu certinho qual era o problema, porem não conseguiu achar uma resolução para o meu problema.

Quando se tem um ScrollPane (interno) dentro de um outro ScrollPane (externo), o scroll do mouse quando está rolando o externo e o ponteiro passa sobre o interno, o externo para de rolar e passa rolar o interno. O desejado é que não role o interno e que continue rolando o externo mesmo quando o ponteiro está sobre o interno.

Agora sim, mais claro e objetivo, impossível!
Obrigado.

Se você desabilitar a rodinha do mouse no JScrollPane interno, não resolve teu problema?

Veja o método setWheelScrollingEnabled.
https://docs.oracle.com/javase/8/docs/api/javax/swing/JScrollPane.html#setWheelScrollingEnabled-boolean-

O problema é que eu preciso que o interno funcione tambem