Tenha essa parte de código que deve mostrar uma caixa de diálogo para seleção de um diretório para onde vai ser exportado um relatório para Excel, porém rodando local mostra a caixa de diálogo, mas quando eu coloco essa aplicação no servidor e rodo ela usando o JWS não mostra a caixa de diálogo "nem a pau", por que será?
Não dá nenhuma Exception mas também não mostrada nada, não chega nem a imprimir o número 1 no console.
System.out.println("Exportar para Excel");
final JFileChooser fc = new JFileChooser();
int choice = 0;
try {
// restringe a amostra a diretorios apenas
fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
System.out.println("1");
fc.setDialogTitle("Selecionar Diretório Onde Vai Salvar a Planilha");
System.out.println("2");
fc.setApproveButtonText("Selecionar");
System.out.println("3");
fc.setMultiSelectionEnabled(false);
System.out.println("4");
fc.setCurrentDirectory(new File("C:/Kooky/SigGraf"));
System.out.println("5");
choice = fc.showOpenDialog(frame);
System.out.println("6");
} catch (Exception ex) {
ex.printStackTrace();
}
if (choice == JFileChooser.APPROVE_OPTION) {
Thread worker = new Thread() {
@Override
public void run() {
glassPane.setVisible(true, "Exportando arquivo, aguarde...");
String msg = "";
try {
File diretorio = fc.getSelectedFile();
String local = diretorio.getPath();
msg = Report.exportarParaExcel(dataInicio, dataFim, local);
} catch (Exception ex) {
ex.printStackTrace();
}
final String msg2 = msg;
SwingUtilities.invokeLater(new Runnable() {
public void run() {
glassPane.setVisible(false);
JOptionPane.showMessageDialog(frame, msg2);
}
});
}
};
worker.start();
} else {
JOptionPane.showMessageDialog(frame, "Você não selecionou um diretório, o relatório não foi exportado.");
}