ok mi è bastato usare lo JScrollPane.
così funziona:
codice:
public class WindowImage extends JFrame {

    private final File file;
    private PanelDetail left;
    private JScrollPane right;
    private JSplitPane splitPane;

    public WindowImage(File file) {
        super("Dettaglio immagine");
        this.file = file;
        createGui();
    }

    private void createGui() {
        setPreferredSize(new Dimension(800, 500));
        setDefaultCloseOperation(DISPOSE_ON_CLOSE);
        left = new PanelDetail(file);
        right = new JScrollPane(new PanelImage(file), JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
        splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, left, right);
        splitPane.setOneTouchExpandable(true);
        splitPane.setDividerLocation(0.5);
        splitPane.setResizeWeight(0.5);
        add(splitPane);
        pack();
        setLocationRelativeTo(null);

        getRootPane().registerKeyboardAction(e -> {
            dispose();
        }, KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), JComponent.WHEN_IN_FOCUSED_WINDOW);
    }
}