/** Invoked when an action occurs. */ public void actionPerformed(final ActionEvent e) { final ReportDesignerContext reportDesignerContext = getReportDesignerContext(); final ReportRenderContext activeContext = getActiveContext(); if (activeContext == null) { return; } if (activeContext.isChanged()) { // ask the user and maybe save the report.. final int option = JOptionPane.showConfirmDialog( reportDesignerContext.getParent(), Messages.getInstance() .getString("PublishToServerAction.ReportModifiedWarning.Message"), Messages.getInstance().getString("PublishToServerAction.ReportModifiedWarning.Title"), JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE); if (option == JOptionPane.YES_OPTION) { if (SaveReportAction.saveReport( reportDesignerContext, activeContext, reportDesignerContext.getParent()) == false) { return; } } if (option == JOptionPane.CANCEL_OPTION) { return; } } final PublishToServerTask publishToServerTask = new PublishToServerTask(reportDesignerContext, reportDesignerContext.getParent()); final LoginTask loginTask = new LoginTask( reportDesignerContext, reportDesignerContext.getParent(), publishToServerTask); SwingUtilities.invokeLater(loginTask); }