📄 connectiondialog.java
字号:
java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
setBounds((screenSize.width-403)/2, (screenSize.height-415)/2, 403, 415);
}//GEN-END:initComponents
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
String fileName = "";
javax.swing.JFileChooser jfc = new javax.swing.JFileChooser( MainFrame.getMainInstance().getCurrentDirectory());
jfc.setDialogTitle("Select XML file....");
jfc.addChoosableFileFilter( new javax.swing.filechooser.FileFilter() {
public boolean accept(java.io.File file) {
String filename = file.getName();
return (filename.toLowerCase().endsWith(".xml") || file.isDirectory()) ;
}
public String getDescription() {
return "XML *.xml";
}
});
jfc.setMultiSelectionEnabled(false);
jfc.setDialogType( javax.swing.JFileChooser.OPEN_DIALOG);
if (jfc.showOpenDialog( this) == javax.swing.JOptionPane.OK_OPTION) {
java.io.File file = jfc.getSelectedFile();
try {
jTextFieldXMLFile.setText( file.getAbsolutePath() );
} catch (Exception ex){}
}
}//GEN-LAST:event_jButton2ActionPerformed
private void jButtonCSVFilenameActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonCSVFilenameActionPerformed
String fileName = "";
javax.swing.JFileChooser jfc = new javax.swing.JFileChooser( MainFrame.getMainInstance().getCurrentDirectory());
jfc.setDialogTitle("Select CSV file....");
jfc.addChoosableFileFilter( new javax.swing.filechooser.FileFilter() {
public boolean accept(java.io.File file) {
String filename = file.getName();
return (filename.toLowerCase().endsWith(".csv") || file.isDirectory()) ;
}
public String getDescription() {
return "CSV *.csv";
}
});
jfc.setMultiSelectionEnabled(false);
jfc.setDialogType( javax.swing.JFileChooser.OPEN_DIALOG);
if (jfc.showOpenDialog( this) == javax.swing.JOptionPane.OK_OPTION) {
java.io.File file = jfc.getSelectedFile();
try {
jTextFieldCSVFilename.setText( file.getAbsolutePath() );
} catch (Exception ex){}
}
}//GEN-LAST:event_jButtonCSVFilenameActionPerformed
private void jComboBoxJDBCDriverActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jComboBoxJDBCDriverActionPerformed
// Run the wizard to populate Connection URL
jButtonWizardActionPerformed(null);
}//GEN-LAST:event_jComboBoxJDBCDriverActionPerformed
private void jRadioButtonJBSetArrayActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jRadioButtonJBSetArrayActionPerformed
// Add your handling code here:
}//GEN-LAST:event_jRadioButtonJBSetArrayActionPerformed
private void jButtonOK1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonOK1ActionPerformed
//java.awt.Frame parent = Misc.frameFromComponent(this);
//
MainFrame.getMainInstance().getReportClassLoader().rescanLibDirectory();
if (jComboBoxConnectionType.getSelectedIndex() == 0)
{
// Try the java connection...
Connection conn = null;
Statement stmt = null;
try {
DriverPool.registerDriver( (String)jComboBoxJDBCDriver.getSelectedItem(), MainFrame.getMainInstance().getReportClassLoader() );
java.sql.Driver driver = DriverPool.getDriver( this.jTextFieldJDBCUrl.getText() );
java.util.Properties connectProps = new java.util.Properties();
connectProps.setProperty("user", this.jTextFieldUsername.getText());
connectProps.setProperty("password", this.jTextFieldPassword.getText());
conn = driver.connect( this.jTextFieldJDBCUrl.getText(), connectProps);
stmt = conn.createStatement();
}catch (NoClassDefFoundError ex)
{
JOptionPane.showMessageDialog((Component)getParent(),"NoClassDefFoundError!!\nCheck your classpath!\nIf not present put your JDBC driver in lib directory of iReport and try again.","Error",JOptionPane.ERROR_MESSAGE);
return;
}
catch (ClassNotFoundException ex)
{
JOptionPane.showMessageDialog((Component)getParent(),"ClassNotFoundError:\n"+ ex.getMessage() +"\n\nCheck your classpath!","Error",JOptionPane.ERROR_MESSAGE);
return;
}
catch (java.sql.SQLException ex)
{
JOptionPane.showMessageDialog((Component)getParent(),"SQL problems:\n"+ex.getMessage()+"\n"+this.jTextFieldJDBCUrl.getText() ,"Error",JOptionPane.ERROR_MESSAGE);
return;
}
catch (Exception ex)
{
JOptionPane.showMessageDialog((Component)getParent(),"General problem:\n"+ex.getMessage()+"\n\nPlease chack your username and password. The DBMS is running?!","Error",JOptionPane.ERROR_MESSAGE);
return;
} finally {
// Clean up
if( stmt!=null ) try{ stmt.close(); } catch(Exception e) { /* anyone really care? */ }
if( conn!=null ) try{ conn.close(); } catch(Exception e) { /* anyone really care? */ }
}
JOptionPane.showMessageDialog((Component)getParent(),"Connection test successful!","",JOptionPane.INFORMATION_MESSAGE);
return;
}
else if (jComboBoxConnectionType.getSelectedIndex() == 3)
{
try {
Object obj = Class.forName((String)jTextFieldJRCustomDataSourceFactoryClass.getText().trim()).newInstance();
obj.getClass().getMethod( (String)jTextFieldJRCustomDataSourceMethod.getText().trim(), new Class[0]).invoke(obj,new Object[0]);
} catch (NoClassDefFoundError ex)
{
JOptionPane.showMessageDialog((Component)getParent(),"NoClassDefFoundError!!\nCheck your classpath!","Error",JOptionPane.ERROR_MESSAGE);
return;
}
catch (ClassNotFoundException ex)
{
JOptionPane.showMessageDialog((Component)getParent(),"ClassNotFoundError:\n"+ ex.getMessage() +"\n\nCheck your classpath!","Error",JOptionPane.ERROR_MESSAGE);
return;
}
catch (Exception ex)
{
JOptionPane.showMessageDialog((Component)getParent(),"Exception:\n"+ ex.getMessage() +"\n","Error",JOptionPane.ERROR_MESSAGE);
return;
}
JOptionPane.showMessageDialog((Component)getParent(),"Connection test successful!","",JOptionPane.INFORMATION_MESSAGE);
return;
}
else if (jComboBoxConnectionType.getSelectedIndex() == 2)
{
try {
Object obj = Class.forName((String)jTextFieldJBSetFactoryClass.getText().trim()).newInstance();
Object ret_obj = obj.getClass().getMethod( (String)jTextFieldJBSetMethodToCall.getText().trim(), new Class[0]).invoke(null,new Object[0]);
if (ret_obj != null && !jRadioButtonJBSetArray.isSelected() && (ret_obj instanceof java.util.Collection))
{
JOptionPane.showMessageDialog((Component)getParent(),"Connection test successful!","",JOptionPane.INFORMATION_MESSAGE);
}
else if (ret_obj != null && jRadioButtonJBSetArray.isSelected() && (ret_obj instanceof Object[]))
{
JOptionPane.showMessageDialog((Component)getParent(),"Connection test successful!","",JOptionPane.INFORMATION_MESSAGE);
}
else
{
JOptionPane.showMessageDialog((Component)getParent(),"The method don't return a valid Array or java.util.Collection!\n","Error",JOptionPane.ERROR_MESSAGE);
}
} catch (NoClassDefFoundError ex)
{
JOptionPane.showMessageDialog((Component)getParent(),"NoClassDefFoundError!!\nCheck your classpath!","Error",JOptionPane.ERROR_MESSAGE);
return;
}
catch (ClassNotFoundException ex)
{
JOptionPane.showMessageDialog((Component)getParent(),"ClassNotFoundError:\n"+ ex.getMessage() +"\n\nCheck your classpath!","Error",JOptionPane.ERROR_MESSAGE);
return;
}
catch (Exception ex)
{
JOptionPane.showMessageDialog((Component)getParent(),"Exception:\n"+ ex.getMessage() +"\n","Error",JOptionPane.ERROR_MESSAGE);
return;
}
return;
}
else if (jComboBoxConnectionType.getSelectedIndex() == 4)
{
String csv_file = jTextFieldCSVFilename.getText().trim();
try {
JRCSVDataSourceConnection con = new JRCSVDataSourceConnection();
java.io.File f = new java.io.File(csv_file);
if (!f.exists())
{
JOptionPane.showMessageDialog((Component)getParent(),"File " + csv_file + " not found","Error",JOptionPane.ERROR_MESSAGE);
return;
}
con.setFilename( csv_file );
if (con.getJRDataSource() != null)
{
JOptionPane.showMessageDialog((Component)getParent(),"Connection test successful!","",JOptionPane.INFORMATION_MESSAGE);
return;
}
}
catch (Exception ex)
{
JOptionPane.showMessageDialog((Component)getParent(),"Exception:\n"+ ex.getMessage() +"\n","Error",JOptionPane.ERROR_MESSAGE);
return;
}
return;
}
}//GEN-LAST:event_jButtonOK1ActionPerformed
private void jButtonWizardActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonWizardActionPerformed
if (jComboBoxJDBCDriver.getSelectedIndex() < 0) return;
String driver = ""+jComboBoxJDBCDriver.getSelectedItem();
driver = driver.trim();
if (driver.equals("")) return;
String server = jTextFieldServerAddress.getText().trim();
if( server.length()==0 ) {
server = "localhost";
}
String databaseName = jTextFieldDBName.getText().trim();
if (driver.equalsIgnoreCase("org.gjt.mm.mysql.Driver")) {
String url = "jdbc:mysql://" + server + "/";
if ( databaseName.length()>0 )
url += databaseName;
else
url += "MYDATABASE";
jTextFieldJDBCUrl.setText(url);
}
else if (driver.equalsIgnoreCase("com.mysql.jdbc.Driver")) {
String url = "jdbc:mysql://" + server + "/";
if (databaseName.length()>0)
url += databaseName;
else
url += "MYDATABASE";
jTextFieldJDBCUrl.setText(url);
}
else if (driver.equalsIgnoreCase("com.internetcds.jdbc.tds.Driver")) {
String url = "jdbc:freetds:sqlserver://localhost/";
if (databaseName.length()>0)
url += databaseName;
else
url += "MYDATABASE";
jTextFieldJDBCUrl.setText(url);
}
else if (driver.equalsIgnoreCase("com.microsoft.jdbc.sqlserver.SQLServerDriver")) {
String url = "jdbc:microsoft:sqlserver://" + server + ":1433;DatabaseName=";
if (databaseName.length()>0)
url += databaseName;
else
url += "MYDATABASE";
jTextFieldJDBCUrl.setText(url);
}
else if (driver.equalsIgnoreCase("sun.jdbc.odbc.JdbcOdbcDriver")) {
String url = "jdbc:odbc:";
if (databaseName.length()>0)
url += jTextFieldDBName.getText();
else
url += "DSNAME";
jTextFieldJDBCUrl.setText(url);
}
else if (driver.equalsIgnoreCase("com.ms.jdbc.odbc.JdbcOdbcDriver")) {
String url = "jdbc:odbc:";
if (databaseName.length()>0)
url += databaseName;
else
url += "DSNAME";
jTextFieldJDBCUrl.setText(url);
}
else if (driver.equalsIgnoreCase("oracle.jdbc.driver.OracleDriver")) {
String url = "jdbc:oracle:thin:@" + server + ":1521:";
if (databaseName.length()>0)
url += databaseName;
else
url += "MYDATABASE";
jTextFieldJDBCUrl.setText(url);
}
else if (driver.equalsIgnoreCase("COM.ibm.db2.jdbc.app.DB2Driver")) {
String url = "jdbc:db2:";
if (databaseName.length()>0)
url += databaseName;
else
url += "MYDATABASE";
jTextFieldJDBCUrl.setText(url);
}
else if (driver.equalsIgnoreCase("com.informix.jdbc.IfxDriver")) {
String url = "jdbc:informix-sqli://" + server + ":port/";
if (databaseName.length()>0)
url += databaseName;
else
url += "MYDATABASE";
url += ":informixserver=SERVERNAME";
jTextFieldJDBCUrl.setText(url);
}
else if (driver.equalsIgnoreCase("com.sybase.jdbc2.jdbc.SybDriver")) {
String url = "jdbc:sybase:Tds:" + server + ":2638";
if (databaseName.length()>0)
url += databaseName;
else
url += "MYDATABASE";
jTextFieldJDBCUrl.setText(url);
}
else if (driver.equalsIgnoreCase("com.mysql.jdbc.Driver")) {
String url = "jdbc:mysql://"+server+"/";
if (databaseName.length()>0)
url += databaseName;
else
url += "MYDATABASE";
jTextFieldJDBCUrl.setText(url);
}
else if (driver.equalsIgnoreCase("com.merant.datadirect.jdbc.sqlserver.SQLServerDriver")) {
String url = "jdbc:sqlserver://" + server + ":1433/";
if (databaseName.length()>0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -