KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > it > businesslogic > ireport > gui > ConnectionDialog


1 /*
2  * Copyright (C) 2005 - 2006 JasperSoft Corporation. All rights reserved.
3  * http://www.jaspersoft.com.
4  *
5  * Unless you have purchased a commercial license agreement from JasperSoft,
6  * the following license terms apply:
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as published by
10  * the Free Software Foundation.
11  *
12  * This program is distributed WITHOUT ANY WARRANTY; and without the
13  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14  * See the GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, see http://www.gnu.org/licenses/gpl.txt
18  * or write to:
19  *
20  * Free Software Foundation, Inc.,
21  * 59 Temple Place - Suite 330,
22  * Boston, MA USA 02111-1307
23  *
24  *
25  *
26  *
27  * ConnectionDialog.java
28  *
29  * Created on 9 maggio 2003, 17.25
30  *
31  */

32
33 package it.businesslogic.ireport.gui;
34
35 import it.businesslogic.ireport.connection.JRCsvDataSourceInspector;
36 import it.businesslogic.ireport.connection.JRHibernateConnection;
37 import it.businesslogic.ireport.gui.sheet.Tag;
38 import it.businesslogic.ireport.util.*;
39 import it.businesslogic.ireport.*;
40 import it.businesslogic.ireport.connection.*;
41
42 import java.awt.Component JavaDoc;
43 import java.io.File JavaDoc;
44 import java.sql.*;
45 import java.text.SimpleDateFormat JavaDoc;
46 import java.util.HashMap JavaDoc;
47 import java.util.Iterator JavaDoc;
48 import java.util.Vector JavaDoc;
49 import javax.swing.*;
50 import javax.swing.table.DefaultTableModel JavaDoc;
51 import org.hibernate.SessionFactory;
52 import org.hibernate.cfg.Configuration;
53
54 import rex.metadata.*;
55 import rex.graphics.datasourcetree.elements.*;
56
57 /**
58  *
59  * @author Administrator
60  */

61 public class ConnectionDialog extends javax.swing.JDialog JavaDoc {
62     /** Creates new form JRParameterDialog */
63     JRParameter tmpParameter = null;
64     private boolean init = false;
65     
66        
67      public ConnectionDialog(java.awt.Dialog JavaDoc parent, boolean modal) {
68         super(parent, modal);
69         initAll();
70      }
71      
72     public ConnectionDialog(java.awt.Frame JavaDoc parent, boolean modal) {
73         
74         super(parent, modal);
75         initAll();
76     }
77         
78     public void initAll()
79     {
80         initComponents();
81 // this.setSize(400, 300);
82
applyI18n();
83         this.pack();
84         Misc.centerFrame(this);
85         init = true;
86         jComboBoxConnectionType.addItem(new Tag("0", I18n.getString("connectionType.jdbc", "Database JDBC connection") )); // Type 0
87
jComboBoxConnectionType.addItem(new Tag("1", I18n.getString("connectionType.xml", "XML file datasource"))); // Type 1
88
jComboBoxConnectionType.addItem(new Tag("2", I18n.getString("connectionType.javabeans", "JavaBeans set datasource"))); // Type 2
89
jComboBoxConnectionType.addItem(new Tag("3", I18n.getString("connectionType.customDataSource", "Custom JRDataSource"))); // Type 3
90
jComboBoxConnectionType.addItem(new Tag("4", I18n.getString("connectionType.csv", "File CSV datasource"))); // Type 4
91
jComboBoxConnectionType.addItem(new Tag("5", I18n.getString("connectionType.datasourceProvider", "JRDataSourceProvider"))); // Type 5
92
jComboBoxConnectionType.addItem(new Tag("6", I18n.getString("connectionType.hibernate", "Hibernate connection"))); // Type 6
93
jComboBoxConnectionType.addItem(new Tag("9", I18n.getString("connectionType.hibernateSpring", "Spring loaded Hibernate connection"))); // Type 6
94
jComboBoxConnectionType.addItem(new Tag("7", I18n.getString("connectionType.ejbql", "EJBQL connection"))); // Type 7
95
jComboBoxConnectionType.addItem(new Tag("8", I18n.getString("connectionType.olap", "Mondrian OLAP connection"))); // Type 8
96
jComboBoxConnectionType.addItem(new Tag("10", I18n.getString("connectionType.queryExecuter", "Query Executer mode"))); // Type 10
97
jComboBoxConnectionType.addItem(new Tag("11", I18n.getString("connectionType.emptyDataSource", "Empty data source"))); // Type 11
98
jComboBoxConnectionType.addItem(new Tag("12", I18n.getString("connectionType.customIReportConnection", "Custom iReport connection"))); // Type 12
99
/**
100          * Copyright (C) 2005, 2006 CINCOM SYSTEMS, INC.
101          * All Rights Reserved
102          * www.cincom.com
103          *
104          */

105         /* Adding XMLA Server Connection Type */
106         jComboBoxConnectionType.addItem(new Tag("13", I18n.getString("connectionType.xmlaServer", "XMLA Server"))); // Type 13
107

108         jComboBoxJDBCDriver.addItem("com.mysql.jdbc.Driver");
109         jComboBoxJDBCDriver.addItem("org.gjt.mm.mysql.Driver");
110         jComboBoxJDBCDriver.addItem("com.internetcds.jdbc.tds.Driver");
111     jComboBoxJDBCDriver.addItem("net.sourceforge.jtds.jdbc.Driver");
112         jComboBoxJDBCDriver.addItem("com.microsoft.jdbc.sqlserver.SQLServerDriver");
113     jComboBoxJDBCDriver.addItem("sun.jdbc.odbc.JdbcOdbcDriver");
114     jComboBoxJDBCDriver.addItem("com.ms.jdbc.odbc.JdbcOdbcDriver");
115     jComboBoxJDBCDriver.addItem("oracle.jdbc.driver.OracleDriver");
116     jComboBoxJDBCDriver.addItem("COM.ibm.db2.jdbc.app.DB2Driver");
117     jComboBoxJDBCDriver.addItem("com.informix.jdbc.IfxDriver");
118     jComboBoxJDBCDriver.addItem("com.sybase.jdbc2.jdbc.SybDriver");
119     jComboBoxJDBCDriver.addItem("com.merant.datadirect.jdbc.sqlserver.SQLServerDriver");
120     jComboBoxJDBCDriver.addItem("com.inet.tds.TdsDriver");
121     jComboBoxJDBCDriver.addItem("org.postgresql.Driver");
122     jComboBoxJDBCDriver.addItem("org.hsqldb.jdbcDriver");
123     jComboBoxJDBCDriver.addItem("COM.cloudscape.JDBCDriver");
124         
125         
126         Vector JavaDoc conns = MainFrame.getMainInstance().getConnections();
127         for (int i=0; i<conns.size(); ++i)
128         {
129             IReportConnection con = (IReportConnection)conns.elementAt(i);
130             if (con instanceof JDBCConnection)
131             {
132                 jComboBoxMondrianJdbc.addItem( con.getName() );
133             }
134         }
135         
136         if (jComboBoxMondrianJdbc.getItemCount() > 0)
137         {
138             jComboBoxMondrianJdbc.setSelectedIndex(0);
139         }
140         
141         init = false;
142         
143         jComboBoxConnectionType.setSelectedIndex(0);
144         //System.out.println(jListCVSColumns);
145
jListCVSColumns.setModel( new DefaultListModel());
146         jTextFieldCVSDateFormat.setText( new SimpleDateFormat JavaDoc().toPattern());
147         
148         
149         javax.swing.KeyStroke JavaDoc escape = javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false);
150         javax.swing.Action JavaDoc escapeAction = new javax.swing.AbstractAction JavaDoc() {
151             public void actionPerformed(java.awt.event.ActionEvent JavaDoc e) {
152                 jButtonCancelActionPerformed(e);
153             }
154         };
155        
156         getRootPane().getInputMap(javax.swing.JComponent.WHEN_IN_FOCUSED_WINDOW).put(escape, "ESCAPE");
157         getRootPane().getActionMap().put("ESCAPE", escapeAction);
158
159
160         //to make the default button ...
161
this.getRootPane().setDefaultButton(this.jButtonOK);
162     }
163
164     /** This method is called from within the constructor to
165      * initialize the form.
166      * WARNING: Do NOT modify this code. The content of this method is
167      * always regenerated by the Form Editor.
168      */

169     // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
170
private void initComponents() {
171         java.awt.GridBagConstraints JavaDoc gridBagConstraints;
172
173         buttonGroupBeansSetType = new javax.swing.ButtonGroup JavaDoc();
174         buttonGroupCVSFieldSeparator = new javax.swing.ButtonGroup JavaDoc();
175         buttonGroupCVSFieldSeparator1 = new javax.swing.ButtonGroup JavaDoc();
176         buttonGroup1 = new javax.swing.ButtonGroup JavaDoc();
177         jPanel1 = new javax.swing.JPanel JavaDoc();
178         jPanelConnectionType = new javax.swing.JPanel JavaDoc();
179         jLabel4 = new javax.swing.JLabel JavaDoc();
180         jComboBoxConnectionType = new javax.swing.JComboBox JavaDoc();
181         jLabel1 = new javax.swing.JLabel JavaDoc();
182         jTextFieldName = new javax.swing.JTextField JavaDoc();
183         jSeparator2 = new javax.swing.JSeparator JavaDoc();
184         jPanelConnectionRoot = new javax.swing.JPanel JavaDoc();
185         jPanelXML = new javax.swing.JPanel JavaDoc();
186         jLabel9 = new javax.swing.JLabel JavaDoc();
187         jTextFieldXMLFile = new javax.swing.JTextField JavaDoc();
188         jButton2 = new javax.swing.JButton JavaDoc();
189         jRadioButtonXML_connection = new javax.swing.JRadioButton JavaDoc();
190         jRadioButtonXML_datasource = new javax.swing.JRadioButton JavaDoc();
191         jPanel13 = new javax.swing.JPanel JavaDoc();
192         jLabelXMLRecordPath = new javax.swing.JLabel JavaDoc();
193         jTextFieldRecordPath = new javax.swing.JTextField JavaDoc();
194         jPanel3 = new javax.swing.JPanel JavaDoc();
195         jSeparator7 = new javax.swing.JSeparator JavaDoc();
196         jPanelBeansSet = new javax.swing.JPanel JavaDoc();
197         jLabel12 = new javax.swing.JLabel JavaDoc();
198         jTextFieldJBSetFactoryClass = new javax.swing.JTextField JavaDoc();
199         jRadioButtonJBSetCollection = new javax.swing.JRadioButton JavaDoc();
200         jRadioButtonJBSetArray = new javax.swing.JRadioButton JavaDoc();
201         jLabel13 = new javax.swing.JLabel JavaDoc();
202         jTextFieldJBSetMethodToCall = new javax.swing.JTextField JavaDoc();
203         jCheckBoxisUseFieldDescription = new javax.swing.JCheckBox JavaDoc();
204         jSeparator6 = new javax.swing.JSeparator JavaDoc();
205         jPanelJDBC = new javax.swing.JPanel JavaDoc();
206         jLabel2 = new javax.swing.JLabel JavaDoc();
207         jLabel3 = new javax.swing.JLabel JavaDoc();
208         jComboBoxJDBCDriver = new javax.swing.JComboBox JavaDoc();
209         jTextFieldJDBCUrl = new javax.swing.JTextField JavaDoc();
210         jPanel2 = new javax.swing.JPanel JavaDoc();
211         jLabel14 = new javax.swing.JLabel JavaDoc();
212         jLabel5 = new javax.swing.JLabel JavaDoc();
213         jTextFieldDBName = new javax.swing.JTextField JavaDoc();
214         jTextFieldServerAddress = new javax.swing.JTextField JavaDoc();
215         jButtonWizard = new javax.swing.JButton JavaDoc();
216         jLabel6 = new javax.swing.JLabel JavaDoc();
217         jLabel7 = new javax.swing.JLabel JavaDoc();
218         jTextArea1 = new javax.swing.JTextArea JavaDoc();
219         jTextFieldPassword = new javax.swing.JPasswordField JavaDoc();
220         jTextFieldUsername = new javax.swing.JTextField JavaDoc();
221         jCheckBoxSavePassword = new javax.swing.JCheckBox JavaDoc();
222         jSeparator5 = new javax.swing.JSeparator JavaDoc();
223         jPanelCustomDataSourceFactory = new javax.swing.JPanel JavaDoc();
224         jLabel10 = new javax.swing.JLabel JavaDoc();
225         jTextFieldJRCustomDataSourceFactoryClass = new javax.swing.JTextField JavaDoc();
226         jLabel11 = new javax.swing.JLabel JavaDoc();
227         jTextFieldJRCustomDataSourceMethod = new javax.swing.JTextField JavaDoc();
228         jSeparator1 = new javax.swing.JSeparator JavaDoc();
229         jPanelCSV = new javax.swing.JPanel JavaDoc();
230         jLabel15 = new javax.swing.JLabel JavaDoc();
231         jTextFieldCSVFilename = new javax.swing.JTextField JavaDoc();
232         jButtonCSVFilename = new javax.swing.JButton JavaDoc();
233         jTabbedPane1 = new javax.swing.JTabbedPane JavaDoc();
234         jPanel11 = new javax.swing.JPanel JavaDoc();
235         jPanel8 = new javax.swing.JPanel JavaDoc();
236         jScrollPane1 = new javax.swing.JScrollPane JavaDoc();
237         jListCVSColumns = new javax.swing.JList JavaDoc();
238         jPanel9 = new javax.swing.JPanel JavaDoc();
239         jButtonNewParameter = new javax.swing.JButton JavaDoc();
240         jButtonModifyParameter = new javax.swing.JButton JavaDoc();
241         jButtonDeleteParameter = new javax.swing.JButton JavaDoc();
242         jPanel10 = new javax.swing.JPanel JavaDoc();
243         jButtonNewParameter1 = new javax.swing.JButton JavaDoc();
244         jPanel6 = new javax.swing.JPanel JavaDoc();
245         jCheckBoxCVSDateFormat = new javax.swing.JCheckBox JavaDoc();
246         jTextFieldCVSDateFormat = new javax.swing.JTextField JavaDoc();
247         jButtonCVSDateFormat = new javax.swing.JButton JavaDoc();
248         jCheckBoxCVSFirstRowAsHeader = new javax.swing.JCheckBox JavaDoc();
249         jPanel7 = new javax.swing.JPanel JavaDoc();
250         jPanel4 = new javax.swing.JPanel JavaDoc();
251         jRadioButtonCVSSeparatorComma = new javax.swing.JRadioButton JavaDoc();
252         jRadioButtonCVSSeparatorSpace = new javax.swing.JRadioButton JavaDoc();
253         jRadioButtonCVSSeparatorTab = new javax.swing.JRadioButton JavaDoc();
254         jRadioButtonCVSSeparatorSemicolon = new javax.swing.JRadioButton JavaDoc();
255         jRadioButtonCVSSeparatorOther = new javax.swing.JRadioButton JavaDoc();
256         jTextFieldCVSSeparatorText = new javax.swing.JTextField JavaDoc();
257         jRadioButtonCVSSeparatorNewLine = new javax.swing.JRadioButton JavaDoc();
258         jPanel5 = new javax.swing.JPanel JavaDoc();
259         jRadioButtonCVSSeparatorComma1 = new javax.swing.JRadioButton JavaDoc();
260         jRadioButtonCVSSeparatorSpace1 = new javax.swing.JRadioButton JavaDoc();
261         jRadioButtonCVSSeparatorTab1 = new javax.swing.JRadioButton JavaDoc();
262         jRadioButtonCVSSeparatorSemicolon1 = new javax.swing.JRadioButton JavaDoc();
263         jRadioButtonCVSSeparatorNewLine1 = new javax.swing.JRadioButton JavaDoc();
264         jRadioButtonCVSSeparatorOther1 = new javax.swing.JRadioButton JavaDoc();
265         jTextFieldCVSSeparatorText1 = new javax.swing.JTextField JavaDoc();
266         jPanel12 = new javax.swing.JPanel JavaDoc();
267         jSeparator4 = new javax.swing.JSeparator JavaDoc();
268         jPanelDatasourceProvider = new javax.swing.JPanel JavaDoc();
269         jLabel17 = new javax.swing.JLabel JavaDoc();
270         jTextFieldJRDataSourceProvider = new javax.swing.JTextField JavaDoc();
271         jSeparator3 = new javax.swing.JSeparator JavaDoc();
272         jPanelHibernate = new javax.swing.JPanel JavaDoc();
273         jTextPane1 = new javax.swing.JTextPane JavaDoc();
274         jLabel8 = new javax.swing.JLabel JavaDoc();
275         jPanelEJBQL = new javax.swing.JPanel JavaDoc();
276         jLabel18 = new javax.swing.JLabel JavaDoc();
277         jTextFieldPersistanceUnit = new javax.swing.JTextField JavaDoc();
278         jScrollPane2 = new javax.swing.JScrollPane JavaDoc();
279         jTextPane2 = new javax.swing.JTextPane JavaDoc();
280         jPanelMondrian = new javax.swing.JPanel JavaDoc();
281         jLabel20 = new javax.swing.JLabel JavaDoc();
282         jComboBoxMondrianJdbc = new javax.swing.JComboBox JavaDoc();
283         jLabel19 = new javax.swing.JLabel JavaDoc();
284         jTextFieldCatalogURI = new javax.swing.JTextField JavaDoc();
285         jButtonBrowseCatalog = new javax.swing.JButton JavaDoc();
286         jPanel14 = new javax.swing.JPanel JavaDoc();
287         jPanelSpringLoadedHibernate = new javax.swing.JPanel JavaDoc();
288         jLabel21 = new javax.swing.JLabel JavaDoc();
289         jTextFieldSLHSpringConfig = new javax.swing.JTextField JavaDoc();
290         jLabel22 = new javax.swing.JLabel JavaDoc();
291         jTextFieldSLHSessionFactory = new javax.swing.JTextField JavaDoc();
292         jLabel16 = new javax.swing.JLabel JavaDoc();
293         jPanelQueryExecutorMode = new javax.swing.JPanel JavaDoc();
294         jLabel23 = new javax.swing.JLabel JavaDoc();
295         jPanelEmptyDataSource = new javax.swing.JPanel JavaDoc();
296         jLabel24 = new javax.swing.JLabel JavaDoc();
297         jSpinnerNumRecords = new javax.swing.JSpinner JavaDoc();
298         jPanelCustomConnection = new javax.swing.JPanel JavaDoc();
299         jLabel25 = new javax.swing.JLabel JavaDoc();
300         jTextFieldIReportConnectionClassName = new javax.swing.JTextField JavaDoc();
301         jPanel15 = new javax.swing.JPanel JavaDoc();
302         jLabelPropertiesTable = new javax.swing.JLabel JavaDoc();
303         jScrollPane3 = new javax.swing.JScrollPane JavaDoc();
304         jTableCustomProperties = new javax.swing.JTable JavaDoc();
305         jButtonAddProp = new javax.swing.JButton JavaDoc();
306         jButtonRemoveProp = new javax.swing.JButton JavaDoc();
307         jPanelXMLA = new javax.swing.JPanel JavaDoc();
308         jLabelXMLAUrl = new javax.swing.JLabel JavaDoc();
309         jTextFieldXMLAUrl = new javax.swing.JTextField JavaDoc();
310         jButtonGetXMLAMetadata = new javax.swing.JButton JavaDoc();
311         jLabelXMLADatasource = new javax.swing.JLabel JavaDoc();
312         jComboBoxXMLADatasource = new javax.swing.JComboBox JavaDoc();
313         jLabelXMLACatalog = new javax.swing.JLabel JavaDoc();
314         jComboBoxXMLACatalog = new javax.swing.JComboBox JavaDoc();
315         jSeparator8 = new javax.swing.JSeparator JavaDoc();
316         jLabelXMLACube = new javax.swing.JLabel JavaDoc();
317         jComboBoxXMLACube = new javax.swing.JComboBox JavaDoc();
318         jPanelButtons = new javax.swing.JPanel JavaDoc();
319         jButtonOK = new javax.swing.JButton JavaDoc();
320         jButtonCancel = new javax.swing.JButton JavaDoc();
321         jButtonOK1 = new javax.swing.JButton JavaDoc();
322
323         setTitle("Connections properties");
324         setModal(true);
325         addWindowListener(new java.awt.event.WindowAdapter JavaDoc() {
326             public void windowClosing(java.awt.event.WindowEvent JavaDoc evt) {
327                 closeDialog(evt);
328             }
329         });
330
331         jPanel1.setLayout(new java.awt.BorderLayout JavaDoc());
332
333         jPanelConnectionType.setLayout(new java.awt.GridBagLayout JavaDoc());
334
335         jPanelConnectionType.setMinimumSize(new java.awt.Dimension JavaDoc(164, 90));
336         jPanelConnectionType.setPreferredSize(new java.awt.Dimension JavaDoc(10, 90));
337         jLabel4.setText("Type of connection / datasource");
338         jLabel4.setMaximumSize(new java.awt.Dimension JavaDoc(157, 21));
339         jLabel4.setPreferredSize(new java.awt.Dimension JavaDoc(157, 14));
340         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
341         gridBagConstraints.gridx = 0;
342         gridBagConstraints.gridy = 2;
343         gridBagConstraints.gridwidth = 2;
344         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
345         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 5, 0, 3);
346         jPanelConnectionType.add(jLabel4, gridBagConstraints);
347
348         jComboBoxConnectionType.setMinimumSize(new java.awt.Dimension JavaDoc(25, 21));
349         jComboBoxConnectionType.setPreferredSize(new java.awt.Dimension JavaDoc(25, 21));
350         jComboBoxConnectionType.addActionListener(new java.awt.event.ActionListener JavaDoc() {
351             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
352                 jComboBoxConnectionTypeActionPerformed(evt);
353             }
354         });
355
356         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
357         gridBagConstraints.gridx = 0;
358         gridBagConstraints.gridy = 3;
359         gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER;
360         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
361         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
362         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 5, 2, 5);
363         jPanelConnectionType.add(jComboBoxConnectionType, gridBagConstraints);
364
365         jLabel1.setText("Name");
366         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
367         gridBagConstraints.gridx = 0;
368         gridBagConstraints.gridy = 0;
369         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
370         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
371         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 5, 0, 3);
372         jPanelConnectionType.add(jLabel1, gridBagConstraints);
373
374         jTextFieldName.setMinimumSize(new java.awt.Dimension JavaDoc(6, 21));
375         jTextFieldName.setPreferredSize(new java.awt.Dimension JavaDoc(11, 21));
376         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
377         gridBagConstraints.gridx = 0;
378         gridBagConstraints.gridy = 1;
379         gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER;
380         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
381         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
382         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 4, 5);
383         jPanelConnectionType.add(jTextFieldName, gridBagConstraints);
384
385         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
386         gridBagConstraints.gridx = 0;
387         gridBagConstraints.gridy = 4;
388         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
389         gridBagConstraints.weightx = 1.0;
390         gridBagConstraints.weighty = 1.0;
391         jPanelConnectionType.add(jSeparator2, gridBagConstraints);
392
393         jPanel1.add(jPanelConnectionType, java.awt.BorderLayout.NORTH);
394
395         jPanelConnectionRoot.setLayout(new java.awt.BorderLayout JavaDoc());
396
397         jPanelConnectionRoot.setPreferredSize(new java.awt.Dimension JavaDoc(400, 350));
398         jPanelXML.setLayout(new java.awt.GridBagLayout JavaDoc());
399
400         jPanelXML.setPreferredSize(new java.awt.Dimension JavaDoc(1, 30));
401         jLabel9.setText("XML file");
402         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
403         gridBagConstraints.gridx = 0;
404         gridBagConstraints.gridy = 0;
405         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
406         gridBagConstraints.ipadx = 24;
407         gridBagConstraints.weightx = 1.0;
408         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
409         jPanelXML.add(jLabel9, gridBagConstraints);
410
411         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
412         gridBagConstraints.gridx = 1;
413         gridBagConstraints.gridy = 0;
414         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
415         gridBagConstraints.ipadx = 232;
416         gridBagConstraints.ipady = 1;
417         gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHWEST;
418         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
419         jPanelXML.add(jTextFieldXMLFile, gridBagConstraints);
420
421         jButton2.setText("Browse");
422         jButton2.setPreferredSize(new java.awt.Dimension JavaDoc(70, 25));
423         jButton2.setMaximumSize(new java.awt.Dimension JavaDoc(100, 25));
424         jButton2.setMinimumSize(new java.awt.Dimension JavaDoc(70, 25));
425         jButton2.setMargin(new java.awt.Insets JavaDoc(2, 4, 2, 4));
426         jButton2.addActionListener(new java.awt.event.ActionListener JavaDoc() {
427             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
428                 jButton2ActionPerformed(evt);
429             }
430         });
431
432         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
433         gridBagConstraints.gridx = 2;
434         gridBagConstraints.gridy = 0;
435         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
436         gridBagConstraints.ipadx = 21;
437         gridBagConstraints.ipady = -3;
438         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 7);
439         jPanelXML.add(jButton2, gridBagConstraints);
440
441         buttonGroup1.add(jRadioButtonXML_connection);
442         jRadioButtonXML_connection.setText("Use the report XPath expression when filling the report");
443         jRadioButtonXML_connection.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
444         jRadioButtonXML_connection.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
445         jRadioButtonXML_connection.addActionListener(new java.awt.event.ActionListener JavaDoc() {
446             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
447                 jRadioButtonXML_connectionActionPerformed(evt);
448             }
449         });
450
451         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
452         gridBagConstraints.gridx = 0;
453         gridBagConstraints.gridwidth = 3;
454         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
455         gridBagConstraints.weightx = 1.0;
456         gridBagConstraints.insets = new java.awt.Insets JavaDoc(8, 4, 0, 4);
457         jPanelXML.add(jRadioButtonXML_connection, gridBagConstraints);
458
459         buttonGroup1.add(jRadioButtonXML_datasource);
460         jRadioButtonXML_datasource.setSelected(true);
461         jRadioButtonXML_datasource.setText("Create a datasource using this expression");
462         jRadioButtonXML_datasource.setActionCommand("Create a datasource using the following expression");
463         jRadioButtonXML_datasource.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
464         jRadioButtonXML_datasource.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
465         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
466         gridBagConstraints.gridx = 0;
467         gridBagConstraints.gridwidth = 3;
468         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
469         gridBagConstraints.weightx = 1.0;
470         gridBagConstraints.insets = new java.awt.Insets JavaDoc(8, 4, 0, 4);
471         jPanelXML.add(jRadioButtonXML_datasource, gridBagConstraints);
472
473         jPanel13.setLayout(new java.awt.GridBagLayout JavaDoc());
474
475         jLabelXMLRecordPath.setText("Select Expression");
476         jLabelXMLRecordPath.setMaximumSize(new java.awt.Dimension JavaDoc(2000, 14));
477         jLabelXMLRecordPath.setMinimumSize(new java.awt.Dimension JavaDoc(2, 14));
478         jLabelXMLRecordPath.setPreferredSize(new java.awt.Dimension JavaDoc(60, 14));
479         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
480         gridBagConstraints.gridx = 0;
481         gridBagConstraints.gridy = 4;
482         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
483         gridBagConstraints.ipadx = 24;
484         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
485         jPanel13.add(jLabelXMLRecordPath, gridBagConstraints);
486
487         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
488         gridBagConstraints.gridx = 1;
489         gridBagConstraints.gridy = 4;
490         gridBagConstraints.gridwidth = 2;
491         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
492         gridBagConstraints.ipadx = 232;
493         gridBagConstraints.ipady = 1;
494         gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTHWEST;
495         gridBagConstraints.weightx = 1.0;
496         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 7);
497         jPanel13.add(jTextFieldRecordPath, gridBagConstraints);
498
499         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
500         gridBagConstraints.gridx = 0;
501         gridBagConstraints.gridwidth = 3;
502         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
503         gridBagConstraints.weightx = 1.0;
504         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 40, 0, 0);
505         jPanelXML.add(jPanel13, gridBagConstraints);
506
507         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
508         gridBagConstraints.gridx = 0;
509         gridBagConstraints.gridy = 5;
510         gridBagConstraints.gridwidth = 3;
511         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
512         gridBagConstraints.weightx = 1.0;
513         gridBagConstraints.weighty = 1.0;
514         jPanelXML.add(jPanel3, gridBagConstraints);
515
516         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
517         gridBagConstraints.gridx = 0;
518         gridBagConstraints.gridy = 99;
519         gridBagConstraints.gridwidth = 3;
520         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
521         gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTH;
522         gridBagConstraints.weightx = 1.0;
523         gridBagConstraints.weighty = 1.0;
524         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
525         jPanelXML.add(jSeparator7, gridBagConstraints);
526
527         jPanelConnectionRoot.add(jPanelXML, java.awt.BorderLayout.CENTER);
528
529         jPanelBeansSet.setLayout(new java.awt.GridBagLayout JavaDoc());
530
531         jLabel12.setText("Factory class (the class that will produce the set)");
532         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
533         gridBagConstraints.gridx = 0;
534         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
535         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 0, 4);
536         jPanelBeansSet.add(jLabel12, gridBagConstraints);
537
538         jTextFieldJBSetFactoryClass.setText("it.businesslogic.ireport.connection.SampleJRDataSourceFactory");
539         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
540         gridBagConstraints.gridx = 0;
541         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
542         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 4, 4, 4);
543         jPanelBeansSet.add(jTextFieldJBSetFactoryClass, gridBagConstraints);
544
545         buttonGroupBeansSetType.add(jRadioButtonJBSetCollection);
546         jRadioButtonJBSetCollection.setSelected(true);
547         jRadioButtonJBSetCollection.setText(" Collection of javaBeans");
548         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
549         gridBagConstraints.gridx = 0;
550         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
551         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 0, 4);
552         jPanelBeansSet.add(jRadioButtonJBSetCollection, gridBagConstraints);
553
554         buttonGroupBeansSetType.add(jRadioButtonJBSetArray);
555         jRadioButtonJBSetArray.setText("Array of javaBeans");
556         jRadioButtonJBSetArray.addActionListener(new java.awt.event.ActionListener JavaDoc() {
557             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
558                 jRadioButtonJBSetArrayActionPerformed(evt);
559             }
560         });
561
562         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
563         gridBagConstraints.gridx = 0;
564         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
565         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 4, 4);
566         jPanelBeansSet.add(jRadioButtonJBSetArray, gridBagConstraints);
567
568         jLabel13.setText("The static method to call to retrive the array or the the collection of javaBeans");
569         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
570         gridBagConstraints.gridx = 0;
571         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
572         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 0, 4);
573         jPanelBeansSet.add(jLabel13, gridBagConstraints);
574
575         jTextFieldJBSetMethodToCall.setText("createBeanCollection");
576         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
577         gridBagConstraints.gridx = 0;
578         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
579         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 4, 4, 4);
580         jPanelBeansSet.add(jTextFieldJBSetMethodToCall, gridBagConstraints);
581
582         jCheckBoxisUseFieldDescription.setText("Use field description");
583         jCheckBoxisUseFieldDescription.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
584         jCheckBoxisUseFieldDescription.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
585         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
586         gridBagConstraints.gridx = 0;
587         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
588         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
589         jPanelBeansSet.add(jCheckBoxisUseFieldDescription, gridBagConstraints);
590
591         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
592         gridBagConstraints.gridx = 0;
593         gridBagConstraints.gridy = 99;
594         gridBagConstraints.gridwidth = 3;
595         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
596         gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTH;
597         gridBagConstraints.weightx = 1.0;
598         gridBagConstraints.weighty = 1.0;
599         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
600         jPanelBeansSet.add(jSeparator6, gridBagConstraints);
601
602         jPanelConnectionRoot.add(jPanelBeansSet, java.awt.BorderLayout.CENTER);
603
604         jPanelJDBC.setLayout(new java.awt.GridBagLayout JavaDoc());
605
606         jLabel2.setText("JDBC Driver");
607         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
608         gridBagConstraints.gridx = 0;
609         gridBagConstraints.gridy = 0;
610         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
611         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 0);
612         jPanelJDBC.add(jLabel2, gridBagConstraints);
613
614         jLabel3.setText("JDBC URL");
615         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
616         gridBagConstraints.gridx = 0;
617         gridBagConstraints.gridy = 1;
618         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
619         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 0);
620         jPanelJDBC.add(jLabel3, gridBagConstraints);
621
622         jComboBoxJDBCDriver.setEditable(true);
623         jComboBoxJDBCDriver.addActionListener(new java.awt.event.ActionListener JavaDoc() {
624             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
625                 jComboBoxJDBCDriverActionPerformed(evt);
626             }
627         });
628
629         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
630         gridBagConstraints.gridx = 1;
631         gridBagConstraints.gridy = 0;
632         gridBagConstraints.gridwidth = 2;
633         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
634         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 6);
635         jPanelJDBC.add(jComboBoxJDBCDriver, gridBagConstraints);
636
637         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
638         gridBagConstraints.gridx = 1;
639         gridBagConstraints.gridy = 1;
640         gridBagConstraints.gridwidth = 2;
641         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
642         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 6);
643         jPanelJDBC.add(jTextFieldJDBCUrl, gridBagConstraints);
644
645         jPanel2.setLayout(new java.awt.GridBagLayout JavaDoc());
646
647         jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder("JDBC URL Wizard"));
648         jPanel2.setMinimumSize(new java.awt.Dimension JavaDoc(300, 100));
649         jLabel14.setText("Server Address");
650         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
651         gridBagConstraints.gridx = 0;
652         gridBagConstraints.gridy = 0;
653         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
654         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 0);
655         jPanel2.add(jLabel14, gridBagConstraints);
656
657         jLabel5.setText("Database");
658         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
659         gridBagConstraints.gridx = 0;
660         gridBagConstraints.gridy = 1;
661         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
662         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 0);
663         jPanel2.add(jLabel5, gridBagConstraints);
664
665         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
666         gridBagConstraints.gridx = 1;
667         gridBagConstraints.gridy = 1;
668         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
669         gridBagConstraints.weightx = 1.0;
670         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 0);
671         jPanel2.add(jTextFieldDBName, gridBagConstraints);
672
673         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
674         gridBagConstraints.gridx = 1;
675         gridBagConstraints.gridy = 0;
676         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
677         gridBagConstraints.weightx = 1.0;
678         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 0);
679         jPanel2.add(jTextFieldServerAddress, gridBagConstraints);
680
681         jButtonWizard.setText("Wizard");
682         jButtonWizard.setMargin(new java.awt.Insets JavaDoc(2, 2, 2, 2));
683         jButtonWizard.setMaximumSize(new java.awt.Dimension JavaDoc(60, 23));
684         jButtonWizard.setMinimumSize(new java.awt.Dimension JavaDoc(60, 23));
685         jButtonWizard.setPreferredSize(new java.awt.Dimension JavaDoc(60, 23));
686         jButtonWizard.addActionListener(new java.awt.event.ActionListener JavaDoc() {
687             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
688                 jButtonWizardActionPerformed(evt);
689             }
690         });
691
692         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
693         gridBagConstraints.gridx = 2;
694         gridBagConstraints.gridy = 1;
695         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
696         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 2, 0);
697         jPanel2.add(jButtonWizard, gridBagConstraints);
698
699         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
700         gridBagConstraints.gridx = 0;
701         gridBagConstraints.gridy = 4;
702         gridBagConstraints.gridwidth = 3;
703         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
704         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
705         gridBagConstraints.weightx = 1.0;
706         jPanelJDBC.add(jPanel2, gridBagConstraints);
707
708         jLabel6.setText("Username");
709         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
710         gridBagConstraints.gridx = 0;
711         gridBagConstraints.gridy = 5;
712         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
713         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 0);
714         jPanelJDBC.add(jLabel6, gridBagConstraints);
715
716         jLabel7.setText("Password");
717         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
718         gridBagConstraints.gridx = 0;
719         gridBagConstraints.gridy = 6;
720         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
721         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 0);
722         jPanelJDBC.add(jLabel7, gridBagConstraints);
723
724         jTextArea1.setEditable(false);
725         jTextArea1.setFont(new java.awt.Font JavaDoc("Tahoma", 0, 11));
726         jTextArea1.setLineWrap(true);
727         jTextArea1.setRows(3);
728         jTextArea1.setText("ATTENTION! Passwords are stored in clear text. If you dont specify a password now, iReport will ask you for one only when required and will not save it.");
729         jTextArea1.setWrapStyleWord(true);
730         jTextArea1.setBorder(javax.swing.BorderFactory.createEtchedBorder());
731         jTextArea1.setMargin(new java.awt.Insets JavaDoc(2, 2, 2, 2));
732         jTextArea1.setOpaque(false);
733         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
734         gridBagConstraints.gridx = 0;
735         gridBagConstraints.gridy = 7;
736         gridBagConstraints.gridwidth = 3;
737         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
738         gridBagConstraints.weightx = 1.0;
739         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 6, 6, 6);
740         jPanelJDBC.add(jTextArea1, gridBagConstraints);
741
742         jTextFieldPassword.setFont(new java.awt.Font JavaDoc("Tahoma", 0, 11));
743         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
744         gridBagConstraints.gridx = 1;
745         gridBagConstraints.gridy = 6;
746         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
747         gridBagConstraints.weightx = 1.0;
748         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 0);
749         jPanelJDBC.add(jTextFieldPassword, gridBagConstraints);
750
751         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
752         gridBagConstraints.gridx = 1;
753         gridBagConstraints.gridy = 5;
754         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
755         gridBagConstraints.weightx = 1.0;
756         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 0);
757         jPanelJDBC.add(jTextFieldUsername, gridBagConstraints);
758
759         jCheckBoxSavePassword.setText("Save password");
760         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
761         gridBagConstraints.gridx = 2;
762         gridBagConstraints.gridy = 6;
763         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
764         gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 6, 0, 6);
765         jPanelJDBC.add(jCheckBoxSavePassword, gridBagConstraints);
766
767         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
768         gridBagConstraints.gridx = 0;
769         gridBagConstraints.gridy = 99;
770         gridBagConstraints.gridwidth = 3;
771         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
772         gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTH;
773         gridBagConstraints.weightx = 1.0;
774         gridBagConstraints.weighty = 1.0;
775         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
776         jPanelJDBC.add(jSeparator5, gridBagConstraints);
777
778         jPanelConnectionRoot.add(jPanelJDBC, java.awt.BorderLayout.CENTER);
779
780         jPanelCustomDataSourceFactory.setLayout(new java.awt.GridBagLayout JavaDoc());
781
782         jLabel10.setText("Factory class");
783         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
784         gridBagConstraints.gridx = 0;
785         gridBagConstraints.gridy = 0;
786         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
787         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 5, 3, 3);
788         jPanelCustomDataSourceFactory.add(jLabel10, gridBagConstraints);
789
790         jTextFieldJRCustomDataSourceFactoryClass.setText("it.businesslogic.ireport.connection.SampleJRDataSourceFactory");
791         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
792         gridBagConstraints.gridx = 0;
793         gridBagConstraints.gridy = 1;
794         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
795         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
796         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 5, 3, 3);
797         jPanelCustomDataSourceFactory.add(jTextFieldJRCustomDataSourceFactoryClass, gridBagConstraints);
798
799         jLabel11.setText("The static method to call to retrive the JRDataSource");
800         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
801         gridBagConstraints.gridx = 0;
802         gridBagConstraints.gridy = 2;
803         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
804         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 5, 3, 3);
805         jPanelCustomDataSourceFactory.add(jLabel11, gridBagConstraints);
806
807         jTextFieldJRCustomDataSourceMethod.setText("createDatasource");
808         jTextFieldJRCustomDataSourceMethod.setPreferredSize(new java.awt.Dimension JavaDoc(314, 21));
809         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
810         gridBagConstraints.gridx = 0;
811         gridBagConstraints.gridy = 3;
812         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
813         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
814         gridBagConstraints.weightx = 1.0;
815         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 5, 3, 3);
816         jPanelCustomDataSourceFactory.add(jTextFieldJRCustomDataSourceMethod, gridBagConstraints);
817
818         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
819         gridBagConstraints.gridx = 0;
820         gridBagConstraints.gridy = 4;
821         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
822         gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTH;
823         gridBagConstraints.weightx = 1.0;
824         gridBagConstraints.weighty = 1.0;
825         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
826         jPanelCustomDataSourceFactory.add(jSeparator1, gridBagConstraints);
827
828         jPanelConnectionRoot.add(jPanelCustomDataSourceFactory, java.awt.BorderLayout.CENTER);
829
830         jPanelCSV.setLayout(new java.awt.GridBagLayout JavaDoc());
831
832         jPanelCSV.setPreferredSize(new java.awt.Dimension JavaDoc(1, 30));
833         jLabel15.setText("CSV file");
834         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
835         gridBagConstraints.gridx = 0;
836         gridBagConstraints.gridy = 0;
837         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
838         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 6, 0, 0);
839         jPanelCSV.add(jLabel15, gridBagConstraints);
840
841         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
842         gridBagConstraints.gridx = 1;
843         gridBagConstraints.gridy = 0;
844         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
845         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
846         gridBagConstraints.weightx = 1.0;
847         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 6, 0, 0);
848         jPanelCSV.add(jTextFieldCSVFilename, gridBagConstraints);
849
850         jButtonCSVFilename.setText("Browse");
851         jButtonCSVFilename.setMargin(new java.awt.Insets JavaDoc(2, 4, 2, 4));
852         jButtonCSVFilename.addActionListener(new java.awt.event.ActionListener JavaDoc() {
853             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
854                 jButtonCSVFilenameActionPerformed(evt);
855             }
856         });
857
858         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
859         gridBagConstraints.gridx = 2;
860         gridBagConstraints.gridy = 0;
861         gridBagConstraints.ipadx = 27;
862         gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
863         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 0, 4);
864         jPanelCSV.add(jButtonCSVFilename, gridBagConstraints);
865
866         jPanel11.setLayout(new java.awt.GridBagLayout JavaDoc());
867
868         jPanel8.setLayout(new java.awt.GridBagLayout JavaDoc());
869
870         jPanel8.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Column names"));
871         jListCVSColumns.addListSelectionListener(new javax.swing.event.ListSelectionListener JavaDoc() {
872             public void valueChanged(javax.swing.event.ListSelectionEvent JavaDoc evt) {
873                 jListCVSColumnsValueChanged(evt);
874             }
875         });
876         jListCVSColumns.addMouseListener(new java.awt.event.MouseAdapter JavaDoc() {
877             public void mouseClicked(java.awt.event.MouseEvent JavaDoc evt) {
878                 jListCVSColumnsMouseClicked(evt);
879             }
880         });
881
882         jScrollPane1.setViewportView(jListCVSColumns);
883
884         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
885         gridBagConstraints.gridx = 0;
886         gridBagConstraints.gridy = 1;
887         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
888         gridBagConstraints.weightx = 1.0;
889         gridBagConstraints.weighty = 1.0;
890         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
891         jPanel8.add(jScrollPane1, gridBagConstraints);
892
893         jPanel9.setLayout(new java.awt.GridBagLayout JavaDoc());
894
895         jPanel9.setPreferredSize(new java.awt.Dimension JavaDoc(71, 200));
896         jButtonNewParameter.setText("New");
897         jButtonNewParameter.addActionListener(new java.awt.event.ActionListener JavaDoc() {
898             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
899                 jButtonNewParameterActionPerformed1(evt);
900             }
901         });
902
903         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
904         gridBagConstraints.gridx = 0;
905         gridBagConstraints.gridy = 0;
906         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
907         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
908         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
909         jPanel9.add(jButtonNewParameter, gridBagConstraints);
910
911         jButtonModifyParameter.setText("Modify");
912         jButtonModifyParameter.setEnabled(false);
913         jButtonModifyParameter.addActionListener(new java.awt.event.ActionListener JavaDoc() {
914             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
915                 jButtonModifyParameterActionPerformed1(evt);
916             }
917         });
918
919         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
920         gridBagConstraints.gridx = 0;
921         gridBagConstraints.gridy = 1;
922         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
923         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
924         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 5, 3);
925         jPanel9.add(jButtonModifyParameter, gridBagConstraints);
926
927         jButtonDeleteParameter.setText("Delete");
928         jButtonDeleteParameter.setEnabled(false);
929         jButtonDeleteParameter.addActionListener(new java.awt.event.ActionListener JavaDoc() {
930             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
931                 jButtonDeleteParameterActionPerformed1(evt);
932             }
933         });
934
935         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
936         gridBagConstraints.gridx = 0;
937         gridBagConstraints.gridy = 2;
938         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
939         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
940         gridBagConstraints.weightx = 1.0;
941         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 3, 5, 3);
942         jPanel9.add(jButtonDeleteParameter, gridBagConstraints);
943
944         jPanel10.setLayout(null);
945
946         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
947         gridBagConstraints.gridx = 0;
948         gridBagConstraints.weighty = 1.0;
949         jPanel9.add(jPanel10, gridBagConstraints);
950
951         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
952         gridBagConstraints.gridx = 1;
953         gridBagConstraints.gridy = 1;
954         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
955         gridBagConstraints.weighty = 1.0;
956         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 0, 4, 4);
957         jPanel8.add(jPanel9, gridBagConstraints);
958
959         jButtonNewParameter1.setText("Get columns name from the first row of the file");
960         jButtonNewParameter1.addActionListener(new java.awt.event.ActionListener JavaDoc() {
961             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
962                 jButtonNewParameterActionPerformed11(evt);
963             }
964         });
965
966         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
967         gridBagConstraints.gridx = 0;
968         gridBagConstraints.gridy = 0;
969         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
970         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
971         gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
972         jPanel8.add(jButtonNewParameter1, gridBagConstraints);
973
974         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
975         gridBagConstraints.gridy = 5;
976         gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
977         gridBagConstraints.weightx = 1.0;
978         gridBagConstraints.weighty = 1.0;
979         gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
980         jPanel11.add(jPanel8, gridBagConstraints);
981
982         jPanel6.setLayout(new java.awt.GridBagLayout JavaDoc());
983
984         jPanel6.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Other"));
985         jCheckBoxCVSDateFormat.setText("Use custom date format");
986         jCheckBoxCVSDateFormat.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
987         jCheckBoxCVSDateFormat.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
988         jCheckBoxCVSDateFormat.addActionListener(new java.awt.event.ActionListener JavaDoc() {
989             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
990                 jCheckBoxCVSDateFormatActionPerformed(evt);
991             }
992         });
993
994         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
995         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 0, 0);
996         jPanel6.add(jCheckBoxCVSDateFormat, gridBagConstraints);
997
998         jTextFieldCVSDateFormat.setEnabled(false);
999         jTextFieldCVSDateFormat.setPreferredSize(new java.awt.Dimension JavaDoc(100, 19));
1000        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1001        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1002        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
1003        gridBagConstraints.weightx = 1.0;
1004        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 10, 0, 0);
1005        jPanel6.add(jTextFieldCVSDateFormat, gridBagConstraints);
1006
1007        jButtonCVSDateFormat.setText("Date format");
1008        jButtonCVSDateFormat.setEnabled(false);
1009        jButtonCVSDateFormat.addActionListener(new java.awt.event.ActionListener JavaDoc() {
1010            public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
1011                jButtonCVSDateFormatActionPerformed(evt);
1012            }
1013        });
1014
1015        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1016        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 0, 0);
1017        jPanel6.add(jButtonCVSDateFormat, gridBagConstraints);
1018
1019        jCheckBoxCVSFirstRowAsHeader.setText("Skip the first line (the column names will be read from the first line)");
1020        jCheckBoxCVSFirstRowAsHeader.setActionCommand("Skip the first line (column names will be read from the first line)");
1021        jCheckBoxCVSFirstRowAsHeader.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1022        jCheckBoxCVSFirstRowAsHeader.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1023        jCheckBoxCVSFirstRowAsHeader.addActionListener(new java.awt.event.ActionListener JavaDoc() {
1024            public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
1025                jCheckBoxCVSDateFormatActionPerformed1(evt);
1026            }
1027        });
1028
1029        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1030        gridBagConstraints.gridx = 0;
1031        gridBagConstraints.gridwidth = 3;
1032        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1033        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 0, 0);
1034        jPanel6.add(jCheckBoxCVSFirstRowAsHeader, gridBagConstraints);
1035
1036        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1037        gridBagConstraints.gridx = 0;
1038        gridBagConstraints.gridy = 20;
1039        gridBagConstraints.gridwidth = 3;
1040        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1041        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1042        jPanel11.add(jPanel6, gridBagConstraints);
1043
1044        jTabbedPane1.addTab("Columns", jPanel11);
1045
1046        jPanel7.setLayout(new java.awt.GridBagLayout JavaDoc());
1047
1048        jPanel4.setLayout(new java.awt.GridBagLayout JavaDoc());
1049
1050        jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Field separator (char)"));
1051        buttonGroupCVSFieldSeparator.add(jRadioButtonCVSSeparatorComma);
1052        jRadioButtonCVSSeparatorComma.setSelected(true);
1053        jRadioButtonCVSSeparatorComma.setText("Comma");
1054        jRadioButtonCVSSeparatorComma.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1055        jRadioButtonCVSSeparatorComma.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1056        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1057        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1058        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
1059        gridBagConstraints.weightx = 1.0;
1060        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1061        jPanel4.add(jRadioButtonCVSSeparatorComma, gridBagConstraints);
1062
1063        buttonGroupCVSFieldSeparator.add(jRadioButtonCVSSeparatorSpace);
1064        jRadioButtonCVSSeparatorSpace.setText("Space");
1065        jRadioButtonCVSSeparatorSpace.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1066        jRadioButtonCVSSeparatorSpace.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1067        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1068        gridBagConstraints.gridx = 0;
1069        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1070        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
1071        gridBagConstraints.weightx = 1.0;
1072        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1073        jPanel4.add(jRadioButtonCVSSeparatorSpace, gridBagConstraints);
1074
1075        buttonGroupCVSFieldSeparator.add(jRadioButtonCVSSeparatorTab);
1076        jRadioButtonCVSSeparatorTab.setText("Tab");
1077        jRadioButtonCVSSeparatorTab.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1078        jRadioButtonCVSSeparatorTab.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1079        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1080        gridBagConstraints.gridx = 1;
1081        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1082        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
1083        gridBagConstraints.weightx = 1.0;
1084        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1085        jPanel4.add(jRadioButtonCVSSeparatorTab, gridBagConstraints);
1086
1087        buttonGroupCVSFieldSeparator.add(jRadioButtonCVSSeparatorSemicolon);
1088        jRadioButtonCVSSeparatorSemicolon.setText("Semicolon");
1089        jRadioButtonCVSSeparatorSemicolon.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1090        jRadioButtonCVSSeparatorSemicolon.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1091        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1092        gridBagConstraints.gridx = 1;
1093        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1094        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
1095        gridBagConstraints.weightx = 1.0;
1096        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1097        jPanel4.add(jRadioButtonCVSSeparatorSemicolon, gridBagConstraints);
1098
1099        buttonGroupCVSFieldSeparator.add(jRadioButtonCVSSeparatorOther);
1100        jRadioButtonCVSSeparatorOther.setText("Other");
1101        jRadioButtonCVSSeparatorOther.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1102        jRadioButtonCVSSeparatorOther.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1103        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1104        gridBagConstraints.gridx = 2;
1105        gridBagConstraints.gridy = 1;
1106        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1107        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
1108        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1109        jPanel4.add(jRadioButtonCVSSeparatorOther, gridBagConstraints);
1110
1111        jTextFieldCVSSeparatorText.setPreferredSize(new java.awt.Dimension JavaDoc(30, 19));
1112        jTextFieldCVSSeparatorText.addActionListener(new java.awt.event.ActionListener JavaDoc() {
1113            public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
1114                jTextFieldCVSSeparatorTextActionPerformed(evt);
1115            }
1116        });
1117
1118        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1119        gridBagConstraints.gridy = 1;
1120        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1121        gridBagConstraints.weightx = 1.0;
1122        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 0, 0);
1123        jPanel4.add(jTextFieldCVSSeparatorText, gridBagConstraints);
1124
1125        buttonGroupCVSFieldSeparator.add(jRadioButtonCVSSeparatorNewLine);
1126        jRadioButtonCVSSeparatorNewLine.setText("New line");
1127        jRadioButtonCVSSeparatorNewLine.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1128        jRadioButtonCVSSeparatorNewLine.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1129        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1130        gridBagConstraints.gridwidth = 2;
1131        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1132        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
1133        gridBagConstraints.weightx = 1.0;
1134        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1135        jPanel4.add(jRadioButtonCVSSeparatorNewLine, gridBagConstraints);
1136
1137        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1138        gridBagConstraints.gridx = 0;
1139        gridBagConstraints.gridwidth = 3;
1140        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1141        gridBagConstraints.weightx = 1.0;
1142        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1143        jPanel7.add(jPanel4, gridBagConstraints);
1144
1145        jPanel5.setLayout(new java.awt.GridBagLayout JavaDoc());
1146
1147        jPanel5.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createEtchedBorder(), "Row separator"));
1148        buttonGroupCVSFieldSeparator1.add(jRadioButtonCVSSeparatorComma1);
1149        jRadioButtonCVSSeparatorComma1.setText("Comma");
1150        jRadioButtonCVSSeparatorComma1.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1151        jRadioButtonCVSSeparatorComma1.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1152        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1153        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1154        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
1155        gridBagConstraints.weightx = 1.0;
1156        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1157        jPanel5.add(jRadioButtonCVSSeparatorComma1, gridBagConstraints);
1158
1159        buttonGroupCVSFieldSeparator1.add(jRadioButtonCVSSeparatorSpace1);
1160        jRadioButtonCVSSeparatorSpace1.setText("Space");
1161        jRadioButtonCVSSeparatorSpace1.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1162        jRadioButtonCVSSeparatorSpace1.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1163        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1164        gridBagConstraints.gridx = 0;
1165        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1166        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
1167        gridBagConstraints.weightx = 1.0;
1168        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1169        jPanel5.add(jRadioButtonCVSSeparatorSpace1, gridBagConstraints);
1170
1171        buttonGroupCVSFieldSeparator1.add(jRadioButtonCVSSeparatorTab1);
1172        jRadioButtonCVSSeparatorTab1.setText("Tab");
1173        jRadioButtonCVSSeparatorTab1.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1174        jRadioButtonCVSSeparatorTab1.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1175        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1176        gridBagConstraints.gridx = 1;
1177        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1178        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
1179        gridBagConstraints.weightx = 1.0;
1180        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1181        jPanel5.add(jRadioButtonCVSSeparatorTab1, gridBagConstraints);
1182
1183        buttonGroupCVSFieldSeparator1.add(jRadioButtonCVSSeparatorSemicolon1);
1184        jRadioButtonCVSSeparatorSemicolon1.setText("Semicolon");
1185        jRadioButtonCVSSeparatorSemicolon1.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1186        jRadioButtonCVSSeparatorSemicolon1.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1187        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1188        gridBagConstraints.gridx = 1;
1189        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1190        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
1191        gridBagConstraints.weightx = 1.0;
1192        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1193        jPanel5.add(jRadioButtonCVSSeparatorSemicolon1, gridBagConstraints);
1194
1195        buttonGroupCVSFieldSeparator1.add(jRadioButtonCVSSeparatorNewLine1);
1196        jRadioButtonCVSSeparatorNewLine1.setSelected(true);
1197        jRadioButtonCVSSeparatorNewLine1.setText("New line");
1198        jRadioButtonCVSSeparatorNewLine1.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1199        jRadioButtonCVSSeparatorNewLine1.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1200        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1201        gridBagConstraints.gridwidth = 2;
1202        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1203        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
1204        gridBagConstraints.weightx = 1.0;
1205        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1206        jPanel5.add(jRadioButtonCVSSeparatorNewLine1, gridBagConstraints);
1207
1208        buttonGroupCVSFieldSeparator1.add(jRadioButtonCVSSeparatorOther1);
1209        jRadioButtonCVSSeparatorOther1.setText("Other");
1210        jRadioButtonCVSSeparatorOther1.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
1211        jRadioButtonCVSSeparatorOther1.setMargin(new java.awt.Insets JavaDoc(0, 0, 0, 0));
1212        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1213        gridBagConstraints.gridx = 2;
1214        gridBagConstraints.gridy = 1;
1215        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1216        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST;
1217        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1218        jPanel5.add(jRadioButtonCVSSeparatorOther1, gridBagConstraints);
1219
1220        jTextFieldCVSSeparatorText1.setPreferredSize(new java.awt.Dimension JavaDoc(30, 19));
1221        jTextFieldCVSSeparatorText1.addActionListener(new java.awt.event.ActionListener JavaDoc() {
1222            public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
1223                jTextFieldCVSSeparatorText1ActionPerformed(evt);
1224            }
1225        });
1226
1227        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1228        gridBagConstraints.gridy = 1;
1229        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1230        gridBagConstraints.weightx = 1.0;
1231        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 0, 0);
1232        jPanel5.add(jTextFieldCVSSeparatorText1, gridBagConstraints);
1233
1234        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1235        gridBagConstraints.gridx = 0;
1236        gridBagConstraints.gridwidth = 3;
1237        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1238        gridBagConstraints.weightx = 1.0;
1239        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1240        jPanel7.add(jPanel5, gridBagConstraints);
1241
1242        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1243        gridBagConstraints.gridx = 0;
1244        gridBagConstraints.weighty = 1.0;
1245        jPanel7.add(jPanel12, gridBagConstraints);
1246
1247        jTabbedPane1.addTab("Separators", jPanel7);
1248
1249        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1250        gridBagConstraints.gridx = 0;
1251        gridBagConstraints.gridwidth = 3;
1252        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1253        gridBagConstraints.weightx = 1.0;
1254        gridBagConstraints.weighty = 1.0;
1255        jPanelCSV.add(jTabbedPane1, gridBagConstraints);
1256
1257        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1258        gridBagConstraints.gridx = 0;
1259        gridBagConstraints.gridy = 99;
1260        gridBagConstraints.gridwidth = 3;
1261        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1262        gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTH;
1263        gridBagConstraints.weightx = 1.0;
1264        gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
1265        jPanelCSV.add(jSeparator4, gridBagConstraints);
1266
1267        jPanelConnectionRoot.add(jPanelCSV, java.awt.BorderLayout.CENTER);
1268
1269        jPanelDatasourceProvider.setLayout(new java.awt.GridBagLayout JavaDoc());
1270
1271        jLabel17.setText("JasperReports DataSource Provider class");
1272        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1273        gridBagConstraints.gridx = 0;
1274        gridBagConstraints.gridy = 0;
1275        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1276        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1277        gridBagConstraints.weightx = 1.0;
1278        gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 5, 1, 3);
1279        jPanelDatasourceProvider.add(jLabel17, gridBagConstraints);
1280
1281        jTextFieldJRDataSourceProvider.setText("it.businesslogic.ireport.examples.PersonBeansDataSource");
1282        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1283        gridBagConstraints.gridx = 0;
1284        gridBagConstraints.gridy = 1;
1285        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1286        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1287        gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 5, 3, 3);
1288        jPanelDatasourceProvider.add(jTextFieldJRDataSourceProvider, gridBagConstraints);
1289
1290        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1291        gridBagConstraints.gridx = 0;
1292        gridBagConstraints.gridy = 4;
1293        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1294        gridBagConstraints.anchor = java.awt.GridBagConstraints.SOUTH;
1295        gridBagConstraints.weightx = 1.0;
1296        gridBagConstraints.weighty = 1.0;
1297        gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 3, 3, 3);
1298        jPanelDatasourceProvider.add(jSeparator3, gridBagConstraints);
1299
1300        jPanelConnectionRoot.add(jPanelDatasourceProvider, java.awt.BorderLayout.CENTER);
1301
1302        jPanelHibernate.setLayout(new java.awt.GridBagLayout JavaDoc());
1303
1304        jTextPane1.setText("Press the test button.\\n\\niReport will look in the classpath for a valid hibernate configuration.");
1305        jTextPane1.setOpaque(false);
1306        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1307        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1308        gridBagConstraints.weightx = 1.0;
1309        gridBagConstraints.weighty = 1.0;
1310        jPanelHibernate.add(jTextPane1, gridBagConstraints);
1311
1312        jLabel8.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
1313        jLabel8.setIcon(new javax.swing.ImageIcon JavaDoc(getClass().getResource("/it/businesslogic/ireport/icons/hibernate.png")));
1314        jLabel8.setVerticalAlignment(javax.swing.SwingConstants.BOTTOM);
1315        jLabel8.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
1316        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1317        gridBagConstraints.gridy = 1;
1318        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1319        jPanelHibernate.add(jLabel8, gridBagConstraints);
1320
1321        jPanelConnectionRoot.add(jPanelHibernate, java.awt.BorderLayout.CENTER);
1322
1323        jPanelEJBQL.setLayout(new java.awt.GridBagLayout JavaDoc());
1324
1325        jLabel18.setText("Persistance Unit Name");
1326        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1327        gridBagConstraints.gridx = 0;
1328        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1329        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1330        gridBagConstraints.weightx = 1.0;
1331        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 2, 4);
1332        jPanelEJBQL.add(jLabel18, gridBagConstraints);
1333
1334        jTextFieldPersistanceUnit.setMargin(new java.awt.Insets JavaDoc(0, 5, 2, 4));
1335        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1336        gridBagConstraints.gridx = 0;
1337        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1338        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1339        gridBagConstraints.weightx = 1.0;
1340        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 3, 4);
1341        jPanelEJBQL.add(jTextFieldPersistanceUnit, gridBagConstraints);
1342
1343        jScrollPane2.setBorder(null);
1344        jScrollPane2.setFocusable(false);
1345        jScrollPane2.setRequestFocusEnabled(false);
1346        jScrollPane2.setVerifyInputWhenFocusTarget(false);
1347        jTextPane2.setBorder(null);
1348        jTextPane2.setEditable(false);
1349        jTextPane2.setText("iReport will search for persistence.xml files within the META-INF directory of any CLASSPATH element");
1350        jTextPane2.setOpaque(false);
1351        jScrollPane2.setViewportView(jTextPane2);
1352
1353        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1354        gridBagConstraints.gridx = 0;
1355        gridBagConstraints.gridy = 2;
1356        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1357        gridBagConstraints.weightx = 1.0;
1358        gridBagConstraints.weighty = 1.0;
1359        gridBagConstraints.insets = new java.awt.Insets JavaDoc(12, 4, 4, 4);
1360        jPanelEJBQL.add(jScrollPane2, gridBagConstraints);
1361
1362        jPanelConnectionRoot.add(jPanelEJBQL, java.awt.BorderLayout.CENTER);
1363
1364        jPanelMondrian.setLayout(new java.awt.GridBagLayout JavaDoc());
1365
1366        jLabel20.setText("Jdbc Connection");
1367        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1368        gridBagConstraints.gridx = 0;
1369        gridBagConstraints.gridwidth = 2;
1370        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1371        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1372        gridBagConstraints.weightx = 1.0;
1373        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 2, 4);
1374        jPanelMondrian.add(jLabel20, gridBagConstraints);
1375
1376        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1377        gridBagConstraints.gridx = 0;
1378        gridBagConstraints.gridwidth = 2;
1379        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1380        gridBagConstraints.weightx = 1.0;
1381        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 4, 4);
1382        jPanelMondrian.add(jComboBoxMondrianJdbc, gridBagConstraints);
1383
1384        jLabel19.setText("Catalog URI (i.e. file:/path/schema.xml)");
1385        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1386        gridBagConstraints.gridx = 0;
1387        gridBagConstraints.gridwidth = 2;
1388        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1389        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1390        gridBagConstraints.weightx = 1.0;
1391        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 2, 4);
1392        jPanelMondrian.add(jLabel19, gridBagConstraints);
1393
1394        jTextFieldCatalogURI.setMargin(new java.awt.Insets JavaDoc(0, 5, 2, 4));
1395        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1396        gridBagConstraints.gridx = 0;
1397        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1398        gridBagConstraints.weightx = 1.0;
1399        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 3, 4);
1400        jPanelMondrian.add(jTextFieldCatalogURI, gridBagConstraints);
1401
1402        jButtonBrowseCatalog.setText("Browse...");
1403        jButtonBrowseCatalog.addActionListener(new java.awt.event.ActionListener JavaDoc() {
1404            public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
1405                jButtonBrowseCatalogActionPerformed(evt);
1406            }
1407        });
1408
1409        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1410        gridBagConstraints.gridx = 1;
1411        jPanelMondrian.add(jButtonBrowseCatalog, gridBagConstraints);
1412
1413        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1414        gridBagConstraints.gridx = 0;
1415        gridBagConstraints.weighty = 1.0;
1416        jPanelMondrian.add(jPanel14, gridBagConstraints);
1417
1418        jPanelConnectionRoot.add(jPanelMondrian, java.awt.BorderLayout.CENTER);
1419
1420        jPanelSpringLoadedHibernate.setLayout(new java.awt.GridBagLayout JavaDoc());
1421
1422        jLabel21.setText("Spring configuration");
1423        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1424        gridBagConstraints.gridx = 0;
1425        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1426        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 0, 4);
1427        jPanelSpringLoadedHibernate.add(jLabel21, gridBagConstraints);
1428
1429        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1430        gridBagConstraints.gridx = 0;
1431        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1432        gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 4, 4, 4);
1433        jPanelSpringLoadedHibernate.add(jTextFieldSLHSpringConfig, gridBagConstraints);
1434
1435        jLabel22.setText("Session Factory Bean ID");
1436        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1437        gridBagConstraints.gridx = 0;
1438        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1439        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 0, 4);
1440        jPanelSpringLoadedHibernate.add(jLabel22, gridBagConstraints);
1441
1442        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1443        gridBagConstraints.gridx = 0;
1444        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1445        gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 4, 4, 4);
1446        jPanelSpringLoadedHibernate.add(jTextFieldSLHSessionFactory, gridBagConstraints);
1447
1448        jLabel16.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
1449        jLabel16.setIcon(new javax.swing.ImageIcon JavaDoc(getClass().getResource("/it/businesslogic/ireport/icons/hibernate.png")));
1450        jLabel16.setVerticalAlignment(javax.swing.SwingConstants.BOTTOM);
1451        jLabel16.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
1452        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1453        gridBagConstraints.gridx = 0;
1454        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1455        gridBagConstraints.weightx = 1.0;
1456        gridBagConstraints.weighty = 1.0;
1457        jPanelSpringLoadedHibernate.add(jLabel16, gridBagConstraints);
1458
1459        jPanelConnectionRoot.add(jPanelSpringLoadedHibernate, java.awt.BorderLayout.CENTER);
1460
1461        jPanelQueryExecutorMode.setLayout(new java.awt.GridBagLayout JavaDoc());
1462
1463        jPanelQueryExecutorMode.setMinimumSize(new java.awt.Dimension JavaDoc(125, 204));
1464        jPanelQueryExecutorMode.setPreferredSize(new java.awt.Dimension JavaDoc(20, 20));
1465        jLabel23.setText(" ");
1466        jPanelQueryExecutorMode.add(jLabel23, new java.awt.GridBagConstraints JavaDoc());
1467
1468        jPanelConnectionRoot.add(jPanelQueryExecutorMode, java.awt.BorderLayout.CENTER);
1469
1470        jPanelEmptyDataSource.setLayout(new java.awt.GridBagLayout JavaDoc());
1471
1472        jLabel24.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
1473        jLabel24.setText("Number of empty records");
1474        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1475        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1476        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH;
1477        gridBagConstraints.weighty = 1.0;
1478        gridBagConstraints.insets = new java.awt.Insets JavaDoc(16, 20, 0, 4);
1479        jPanelEmptyDataSource.add(jLabel24, gridBagConstraints);
1480
1481        jSpinnerNumRecords.setPreferredSize(new java.awt.Dimension JavaDoc(70, 18));
1482        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1483        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1484        gridBagConstraints.weightx = 1.0;
1485        gridBagConstraints.weighty = 1.0;
1486        gridBagConstraints.insets = new java.awt.Insets JavaDoc(14, 0, 0, 20);
1487        jPanelEmptyDataSource.add(jSpinnerNumRecords, gridBagConstraints);
1488
1489        jPanelConnectionRoot.add(jPanelEmptyDataSource, java.awt.BorderLayout.CENTER);
1490
1491        jPanelCustomConnection.setLayout(new java.awt.GridBagLayout JavaDoc());
1492
1493        jLabel25.setText("Class name of the IReportConnection implementation");
1494        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1495        gridBagConstraints.gridx = 0;
1496        gridBagConstraints.gridy = 0;
1497        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1498        gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 5, 0, 3);
1499        jPanelCustomConnection.add(jLabel25, gridBagConstraints);
1500
1501        jTextFieldIReportConnectionClassName.setText("it.businesslogic.ireport.connection.JREmptyDatasourceConnection");
1502        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1503        gridBagConstraints.gridx = 0;
1504        gridBagConstraints.gridy = 1;
1505        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1506        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1507        gridBagConstraints.insets = new java.awt.Insets JavaDoc(3, 5, 3, 3);
1508        jPanelCustomConnection.add(jTextFieldIReportConnectionClassName, gridBagConstraints);
1509
1510        jPanel15.setLayout(new java.awt.GridBagLayout JavaDoc());
1511
1512        jLabelPropertiesTable.setText("IReportConnection properties");
1513        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1514        gridBagConstraints.gridx = 0;
1515        gridBagConstraints.gridy = 0;
1516        gridBagConstraints.gridwidth = 2;
1517        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1518        gridBagConstraints.insets = new java.awt.Insets JavaDoc(6, 5, 0, 3);
1519        jPanel15.add(jLabelPropertiesTable, gridBagConstraints);
1520
1521        jTableCustomProperties.setModel(new javax.swing.table.DefaultTableModel JavaDoc(
1522            new Object JavaDoc [][] {
1523
1524            },
1525            new String JavaDoc [] {
1526                "Name", "Value"
1527            }
1528        ) {
1529            Class JavaDoc[] types = new Class JavaDoc [] {
1530                java.lang.String JavaDoc.class, java.lang.String JavaDoc.class
1531            };
1532
1533            public Class JavaDoc getColumnClass(int columnIndex) {
1534                return types [columnIndex];
1535            }
1536        });
1537        jTableCustomProperties.addMouseListener(new java.awt.event.MouseAdapter JavaDoc() {
1538            public void mouseClicked(java.awt.event.MouseEvent JavaDoc evt) {
1539                jTableCustomPropertiesMouseClicked(evt);
1540            }
1541        });
1542
1543        jScrollPane3.setViewportView(jTableCustomProperties);
1544
1545        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1546        gridBagConstraints.gridx = 0;
1547        gridBagConstraints.gridwidth = 2;
1548        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1549        gridBagConstraints.weightx = 1.0;
1550        gridBagConstraints.weighty = 1.0;
1551        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1552        jPanel15.add(jScrollPane3, gridBagConstraints);
1553
1554        jButtonAddProp.setText("Add");
1555        jButtonAddProp.addActionListener(new java.awt.event.ActionListener JavaDoc() {
1556            public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
1557                jButtonAddPropActionPerformed(evt);
1558            }
1559        });
1560
1561        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1562        gridBagConstraints.gridx = 0;
1563        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 4, 4);
1564        jPanel15.add(jButtonAddProp, gridBagConstraints);
1565
1566        jButtonRemoveProp.setText("Remove");
1567        jButtonRemoveProp.setEnabled(false);
1568        jButtonRemoveProp.addActionListener(new java.awt.event.ActionListener JavaDoc() {
1569            public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
1570                jButtonRemovePropActionPerformed(evt);
1571            }
1572        });
1573
1574        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1575        gridBagConstraints.gridx = 1;
1576        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
1577        gridBagConstraints.weightx = 1.0;
1578        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 0, 4, 4);
1579        jPanel15.add(jButtonRemoveProp, gridBagConstraints);
1580
1581        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1582        gridBagConstraints.gridx = 0;
1583        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1584        gridBagConstraints.weightx = 1.0;
1585        gridBagConstraints.weighty = 1.0;
1586        jPanelCustomConnection.add(jPanel15, gridBagConstraints);
1587
1588        jPanelConnectionRoot.add(jPanelCustomConnection, java.awt.BorderLayout.NORTH);
1589
1590        jPanelXMLA.setLayout(new java.awt.GridBagLayout JavaDoc());
1591
1592        jLabelXMLAUrl.setText("Url of XML/A server");
1593        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1594        gridBagConstraints.gridx = 0;
1595        gridBagConstraints.gridwidth = 2;
1596        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1597        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1598        gridBagConstraints.weightx = 1.0;
1599        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 0, 4);
1600        jPanelXMLA.add(jLabelXMLAUrl, gridBagConstraints);
1601
1602        jTextFieldXMLAUrl.setText("http://localhost:8080/mondrian/xmla");
1603        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1604        gridBagConstraints.gridx = 0;
1605        gridBagConstraints.gridwidth = 2;
1606        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1607        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1608        gridBagConstraints.weightx = 1.0;
1609        gridBagConstraints.insets = new java.awt.Insets JavaDoc(2, 4, 4, 4);
1610        jPanelXMLA.add(jTextFieldXMLAUrl, gridBagConstraints);
1611
1612        jButtonGetXMLAMetadata.setText("Get metadata");
1613        jButtonGetXMLAMetadata.addActionListener(new java.awt.event.ActionListener JavaDoc() {
1614            public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
1615                jButtonGetXMLAMetadataActionPerformed(evt);
1616            }
1617        });
1618
1619        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1620        gridBagConstraints.gridx = 1;
1621        gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
1622        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 4, 4);
1623        jPanelXMLA.add(jButtonGetXMLAMetadata, gridBagConstraints);
1624
1625        jLabelXMLADatasource.setText("Datasource");
1626        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1627        gridBagConstraints.gridx = 0;
1628        gridBagConstraints.gridwidth = 2;
1629        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1630        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1631        gridBagConstraints.weightx = 1.0;
1632        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 2, 4);
1633        jPanelXMLA.add(jLabelXMLADatasource, gridBagConstraints);
1634
1635        jComboBoxXMLADatasource.setMinimumSize(new java.awt.Dimension JavaDoc(23, 22));
1636        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1637        gridBagConstraints.gridx = 0;
1638        gridBagConstraints.gridwidth = 2;
1639        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1640        gridBagConstraints.weightx = 1.0;
1641        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 4, 4);
1642        jPanelXMLA.add(jComboBoxXMLADatasource, gridBagConstraints);
1643
1644        jLabelXMLACatalog.setText("Catalog");
1645        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1646        gridBagConstraints.gridx = 0;
1647        gridBagConstraints.gridwidth = 2;
1648        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1649        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1650        gridBagConstraints.weightx = 1.0;
1651        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 2, 4);
1652        jPanelXMLA.add(jLabelXMLACatalog, gridBagConstraints);
1653
1654        jComboBoxXMLACatalog.setMinimumSize(new java.awt.Dimension JavaDoc(23, 22));
1655        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1656        gridBagConstraints.gridx = 0;
1657        gridBagConstraints.gridwidth = 2;
1658        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
1659        gridBagConstraints.weightx = 1.0;
1660        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 4, 4);
1661        jPanelXMLA.add(jComboBoxXMLACatalog, gridBagConstraints);
1662
1663        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1664        gridBagConstraints.gridx = 0;
1665        gridBagConstraints.gridwidth = 2;
1666        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1667        gridBagConstraints.weightx = 1.0;
1668        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 4, 4);
1669        jPanelXMLA.add(jSeparator8, gridBagConstraints);
1670
1671        jLabelXMLACube.setText("Cube");
1672        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1673        gridBagConstraints.gridx = 0;
1674        gridBagConstraints.gridwidth = 2;
1675        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1676        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
1677        gridBagConstraints.weightx = 1.0;
1678        gridBagConstraints.insets = new java.awt.Insets JavaDoc(4, 4, 2, 4);
1679        jPanelXMLA.add(jLabelXMLACube, gridBagConstraints);
1680
1681        jComboBoxXMLACube.setMinimumSize(new java.awt.Dimension JavaDoc(23, 22));
1682        gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
1683        gridBagConstraints.gridx = 0;
1684        gridBagConstraints.gridwidth = 2;
1685        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
1686        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH;
1687        gridBagConstraints.weightx = 1.0;
1688        gridBagConstraints.weighty = 1.0;
1689        gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 4, 4, 4);
1690        jPanelXMLA.add(jComboBoxXMLACube, gridBagConstraints);
1691
1692        jPanelConnectionRoot.add(jPanelXMLA, java.awt.BorderLayout.SOUTH);
1693
1694        jPanel1.add(jPanelConnectionRoot, java.awt.BorderLayout.CENTER);
1695
1696        jPanelButtons.setLayout(new java.awt.FlowLayout JavaDoc(java.awt.FlowLayout.RIGHT));
1697
1698        jButtonOK.setMnemonic('s');
1699        jButtonOK.setText("Save");
1700        jButtonOK.addActionListener(new java.awt.event.ActionListener JavaDoc() {
1701            public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
1702                jButtonOKActionPerformed(evt);
1703            }
1704        });
1705
1706        jPanelButtons.add(jButtonOK);
1707
1708        jButtonCancel.setMnemonic('c');
1709        jButtonCancel.setText("Cancel");
1710        jButtonCancel.addActionListener(new java.awt.event.ActionListener JavaDoc() {
1711            public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
1712                jButtonCancelActionPerformed(evt);
1713            }
1714        });
1715
1716        jPanelButtons.add(jButtonCancel);
1717
1718        jButtonOK1.setMnemonic('t');
1719        jButtonOK1.setText("Test");
1720        jButtonOK1.addActionListener(new java.awt.event.ActionListener JavaDoc() {
1721            public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
1722                jButtonOK1ActionPerformed(evt);
1723            }
1724        });
1725
1726        jPanelButtons.add(jButtonOK1);
1727
1728        jPanel1.add(jPanelButtons, java.awt.BorderLayout.SOUTH);
1729
1730        getContentPane().add(jPanel1, java.awt.BorderLayout.CENTER);
1731
1732        java.awt.Dimension JavaDoc screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
1733        setBounds((screenSize.width-403)/2, (screenSize.height-440)/2, 403, 440);
1734    }// </editor-fold>//GEN-END:initComponents
1735

1736    private void jButtonGetXMLAMetadataActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonGetXMLAMetadataActionPerformed
1737
jComboBoxXMLADatasource.removeActionListener(dsListener);
1738        jComboBoxXMLACatalog.removeActionListener(catListener);
1739        
1740        String JavaDoc urlstr = this.jTextFieldXMLAUrl.getText().trim();
1741        rex.metadata.ServerMetadata smd = new rex.metadata.ServerMetadata(urlstr,(Component JavaDoc)getParent());
1742        if (smd.isValidUrl() == false) {
1743            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
1744                    I18n.getString("messages.connectionDialog.xmla.invalidUrl","Unable to connect to XMLA server.") ,"",JOptionPane.INFORMATION_MESSAGE);
1745            return;
1746        }
1747        this.jComboBoxXMLADatasource.removeAllItems();
1748        this.jComboBoxXMLACatalog.removeAllItems();
1749        this.jComboBoxXMLACube.removeAllItems();
1750        rex.graphics.datasourcetree.elements.DataSourceTreeElement dste[] = smd.discoverDataSources();
1751        if (dste == null) {
1752            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
1753                    "No Datasources found.","",JOptionPane.INFORMATION_MESSAGE);
1754            return;
1755        }
1756        for (int i=0;i<dste.length;i++){
1757            this.jComboBoxXMLADatasource.addItem(dste[i].getDataSourceInfo());
1758        }
1759        rex.graphics.datasourcetree.elements.DataSourceTreeElement catalogs[] = dste[0].getChildren();
1760        if (catalogs == null || catalogs.length == 0) {
1761            return;
1762        }
1763        this.jComboBoxXMLACatalog.removeAllItems();
1764        for (int i = 0;i<catalogs.length;i++){
1765            this.jComboBoxXMLACatalog.addItem(((rex.graphics.datasourcetree.elements.CatalogElement)catalogs[i]).toString());
1766        }
1767         //get Cube information for the selected catalog...
1768
rex.graphics.datasourcetree.elements.DataSourceTreeElement cubes[] = catalogs[0].getChildren();
1769        if(cubes ==null || cubes.length==0){
1770            return;
1771        }
1772         this.jComboBoxXMLACube.removeAllItems();
1773         for(int i=0;i<cubes.length; i++){
1774             this.jComboBoxXMLACube.addItem(((rex.graphics.datasourcetree.elements.CubeElement)cubes[i]).toString());
1775         }
1776        jComboBoxXMLADatasource.addActionListener(dsListener);
1777        jComboBoxXMLACatalog.addActionListener(catListener);
1778    }//GEN-LAST:event_jButtonGetXMLAMetadataActionPerformed
1779

1780    private void jTableCustomPropertiesMouseClicked(java.awt.event.MouseEvent JavaDoc evt) {//GEN-FIRST:event_jTableCustomPropertiesMouseClicked
1781

1782       jButtonRemoveProp.setEnabled( jTableCustomProperties.getSelectedRow() >= 0 );
1783        
1784    }//GEN-LAST:event_jTableCustomPropertiesMouseClicked
1785

1786    private void jButtonRemovePropActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonRemovePropActionPerformed
1787

1788        if (jTableCustomProperties.getSelectedRow() >= 0)
1789        {
1790            ((DefaultTableModel JavaDoc)jTableCustomProperties.getModel()).removeRow( jTableCustomProperties.getSelectedRow() );
1791            jButtonRemoveProp.setEnabled( jTableCustomProperties.getSelectedRow() >= 0 );
1792        }
1793    }//GEN-LAST:event_jButtonRemovePropActionPerformed
1794

1795    private void jButtonAddPropActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonAddPropActionPerformed
1796

1797        ((DefaultTableModel JavaDoc)jTableCustomProperties.getModel()).addRow(new Object JavaDoc[]{"name","value"});
1798        
1799    }//GEN-LAST:event_jButtonAddPropActionPerformed
1800

1801    private void jRadioButtonXML_connectionActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jRadioButtonXML_connectionActionPerformed
1802

1803        XMLDataSourceCheckBoxesChanged();
1804        
1805    }//GEN-LAST:event_jRadioButtonXML_connectionActionPerformed
1806

1807    
1808    public void XMLDataSourceCheckBoxesChanged()
1809    {
1810        jTextFieldRecordPath.setEnabled( jRadioButtonXML_datasource.isSelected() );
1811        jLabelXMLRecordPath.setEnabled( jRadioButtonXML_datasource.isSelected() );
1812    }
1813    private void jButtonBrowseCatalogActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonBrowseCatalogActionPerformed
1814

1815            String JavaDoc fileName = "";
1816        javax.swing.JFileChooser JavaDoc jfc = new javax.swing.JFileChooser JavaDoc( MainFrame.getMainInstance().getCurrentDirectory());
1817        
1818        jfc.setDialogTitle("Select file....");
1819        
1820        jfc.addChoosableFileFilter( new javax.swing.filechooser.FileFilter JavaDoc() {
1821            public boolean accept(java.io.File JavaDoc file) {
1822                String JavaDoc filename = file.getName();
1823                return (filename.toLowerCase().endsWith(".xml") || file.isDirectory()) ;
1824            }
1825            public String JavaDoc getDescription() {
1826                return "XML *.xml";
1827            }
1828        });
1829        
1830        jfc.setMultiSelectionEnabled(false);
1831        jfc.setDialogType( javax.swing.JFileChooser.OPEN_DIALOG);
1832        if (jfc.showOpenDialog( this) == javax.swing.JOptionPane.OK_OPTION) {
1833            java.io.File JavaDoc file = jfc.getSelectedFile();
1834                    try {
1835                        jTextFieldCatalogURI.setText( file.toURI() + "");
1836                    } catch (Exception JavaDoc ex){}
1837        }
1838        
1839        
1840    }//GEN-LAST:event_jButtonBrowseCatalogActionPerformed
1841

1842    private void jListCVSColumnsValueChanged(javax.swing.event.ListSelectionEvent JavaDoc evt) {//GEN-FIRST:event_jListCVSColumnsValueChanged
1843

1844        if (jListCVSColumns.getSelectedIndex() >= 0)
1845        {
1846            jButtonModifyParameter.setEnabled(true);
1847            jButtonDeleteParameter.setEnabled(true);
1848        }
1849        else
1850        {
1851            jButtonModifyParameter.setEnabled(false);
1852            jButtonDeleteParameter.setEnabled(false);
1853        }
1854        
1855    }//GEN-LAST:event_jListCVSColumnsValueChanged
1856

1857    private void jListCVSColumnsMouseClicked(java.awt.event.MouseEvent JavaDoc evt) {//GEN-FIRST:event_jListCVSColumnsMouseClicked
1858

1859            if (evt.getClickCount() == 2 && evt.getButton() == evt.BUTTON1)
1860            {
1861                jButtonModifyParameterActionPerformed1(null);
1862            }
1863        
1864    }//GEN-LAST:event_jListCVSColumnsMouseClicked
1865

1866    private void jCheckBoxCVSDateFormatActionPerformed1(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jCheckBoxCVSDateFormatActionPerformed1
1867
// TODO add your handling code here:
1868
}//GEN-LAST:event_jCheckBoxCVSDateFormatActionPerformed1
1869

1870    private void jButtonNewParameterActionPerformed11(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonNewParameterActionPerformed11
1871

1872        try {
1873            JRCsvDataSourceInspector ds = new JRCsvDataSourceInspector(new File JavaDoc( jTextFieldCSVFilename.getText()));
1874        
1875            if (jRadioButtonCVSSeparatorComma.isSelected()) ds.setFieldDelimiter(',');
1876            if (jRadioButtonCVSSeparatorTab.isSelected()) ds.setFieldDelimiter('\t');
1877            if (jRadioButtonCVSSeparatorSpace.isSelected()) ds.setFieldDelimiter(' ');
1878            if (jRadioButtonCVSSeparatorSemicolon.isSelected()) ds.setFieldDelimiter(';');
1879            if (jRadioButtonCVSSeparatorNewLine.isSelected()) ds.setFieldDelimiter('\n');
1880            if (jRadioButtonCVSSeparatorOther.isSelected()) ds.setFieldDelimiter((jTextFieldCVSSeparatorText.getText()+" ").charAt(0));
1881            
1882            if (jRadioButtonCVSSeparatorComma1.isSelected()) ds.setRecordDelimiter(",");
1883            if (jRadioButtonCVSSeparatorTab1.isSelected()) ds.setRecordDelimiter("\t");
1884            if (jRadioButtonCVSSeparatorSpace1.isSelected()) ds.setRecordDelimiter(" ");
1885            if (jRadioButtonCVSSeparatorSemicolon1.isSelected()) ds.setRecordDelimiter(";");
1886            if (jRadioButtonCVSSeparatorNewLine1.isSelected()) ds.setRecordDelimiter("\n");
1887            if (jRadioButtonCVSSeparatorOther1.isSelected()) ds.setRecordDelimiter(jTextFieldCVSSeparatorText1.getText());
1888            
1889            DefaultListModel dlm = (DefaultListModel)jListCVSColumns.getModel();
1890            dlm.removeAllElements();
1891            
1892            Vector JavaDoc names = ds.getColumnNames();
1893            for (int i=0; i < names.size(); ++i )
1894            {
1895                String JavaDoc fname = (names.elementAt(i)+"").trim();
1896                if (fname.length() > 0)
1897                  dlm.addElement(fname);
1898            }
1899            
1900            if (names.size() > 0)
1901            {
1902                jListCVSColumns.setSelectedIndex(0);
1903            }
1904        
1905        } catch (Exception JavaDoc ex)
1906        {
1907            JOptionPane.showMessageDialog(this,ex.getMessage(), I18n.getString("message.title.exception","Exception"), JOptionPane.ERROR_MESSAGE);
1908        }
1909        
1910    }//GEN-LAST:event_jButtonNewParameterActionPerformed11
1911

1912    private void jButtonDeleteParameterActionPerformed1(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonDeleteParameterActionPerformed1
1913

1914        // Get the selected connection...
1915
DefaultListModel dlm = (DefaultListModel)jListCVSColumns.getModel();
1916        Object JavaDoc[] values = jListCVSColumns.getSelectedValues();
1917
1918        for (int i=0; i<values.length; ++i)
1919        {
1920            dlm.removeElement(values[i]);
1921        }
1922    }//GEN-LAST:event_jButtonDeleteParameterActionPerformed1
1923

1924    private void jButtonModifyParameterActionPerformed1(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonModifyParameterActionPerformed1
1925

1926        int index = jListCVSColumns.getSelectedIndex();
1927        
1928        if (index < 0) return;
1929        
1930        DefaultListModel dlm = (DefaultListModel)jListCVSColumns.getModel();
1931        String JavaDoc oldName = (String JavaDoc)dlm.getElementAt(index);
1932        
1933        String JavaDoc name = JOptionPane.showInputDialog(this, I18n.getString("connectionDialog.input.columnName","Column name" ), oldName);
1934        
1935        if (name != null)
1936        {
1937            dlm.setElementAt(name, index);
1938        }
1939    }//GEN-LAST:event_jButtonModifyParameterActionPerformed1
1940

1941    private void jButtonNewParameterActionPerformed1(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonNewParameterActionPerformed1
1942

1943        DefaultListModel dlm = (DefaultListModel)jListCVSColumns.getModel();
1944        String JavaDoc name = JOptionPane.showInputDialog(this, I18n.getString("connectionDialog.input.columnName","Column name" ), "COLUMN_" + dlm.getSize());
1945        
1946        if (name != null)
1947        {
1948            dlm.addElement(name);
1949        }
1950        
1951        if (dlm.size() == 1)
1952        {
1953            jListCVSColumns.setSelectedIndex(0);
1954        }
1955    }//GEN-LAST:event_jButtonNewParameterActionPerformed1
1956

1957    private void jTextFieldCVSSeparatorText1ActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jTextFieldCVSSeparatorText1ActionPerformed
1958

1959        if (this.jTextFieldCVSSeparatorText1.getText().length() > 0)
1960        this.jRadioButtonCVSSeparatorOther1.setSelected(true);
1961    }//GEN-LAST:event_jTextFieldCVSSeparatorText1ActionPerformed
1962

1963    private void jTextFieldCVSSeparatorTextActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jTextFieldCVSSeparatorTextActionPerformed
1964

1965        if (this.jTextFieldCVSSeparatorText.getText().length() > 0)
1966        this.jRadioButtonCVSSeparatorOther.setSelected(true);
1967        
1968    }//GEN-LAST:event_jTextFieldCVSSeparatorTextActionPerformed
1969

1970    private void jButtonCVSDateFormatActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonCVSDateFormatActionPerformed
1971

1972            FieldPatternDialog fpd = new FieldPatternDialog(this, true);
1973            fpd.setOnlyDate(true);
1974            
1975            fpd.setVisible(true);
1976            if (fpd.getDialogResult() == JOptionPane.OK_OPTION)
1977            {
1978                jTextFieldCVSDateFormat.setText( fpd.getPattern() );
1979            }
1980        
1981    }//GEN-LAST:event_jButtonCVSDateFormatActionPerformed
1982

1983    private void jCheckBoxCVSDateFormatActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jCheckBoxCVSDateFormatActionPerformed
1984

1985        jTextFieldCVSDateFormat.setEnabled( this.jCheckBoxCVSDateFormat.isSelected());
1986        jButtonCVSDateFormat.setEnabled( this.jCheckBoxCVSDateFormat.isSelected() );
1987        
1988        if (!this.jCheckBoxCVSDateFormat.isSelected())
1989        {
1990            jTextFieldCVSDateFormat.setText( new SimpleDateFormat JavaDoc().toPattern());
1991        }
1992        
1993    }//GEN-LAST:event_jCheckBoxCVSDateFormatActionPerformed
1994

1995    private void jButton2ActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButton2ActionPerformed
1996
String JavaDoc fileName = "";
1997        javax.swing.JFileChooser JavaDoc jfc = new javax.swing.JFileChooser JavaDoc( MainFrame.getMainInstance().getCurrentDirectory());
1998        
1999        jfc.setDialogTitle("Select XML file....");
2000        
2001        jfc.addChoosableFileFilter( new javax.swing.filechooser.FileFilter JavaDoc() {
2002            public boolean accept(java.io.File JavaDoc file) {
2003                String JavaDoc filename = file.getName();
2004                return (filename.toLowerCase().endsWith(".xml") || file.isDirectory()) ;
2005            }
2006            public String JavaDoc getDescription() {
2007                return "XML *.xml";
2008            }
2009        });
2010        
2011        jfc.setMultiSelectionEnabled(false);
2012        jfc.setDialogType( javax.swing.JFileChooser.OPEN_DIALOG);
2013        if (jfc.showOpenDialog( this) == javax.swing.JOptionPane.OK_OPTION) {
2014            java.io.File JavaDoc file = jfc.getSelectedFile();
2015                    try {
2016                        jTextFieldXMLFile.setText( file.getAbsolutePath() );
2017                    } catch (Exception JavaDoc ex){}
2018        }
2019        
2020        
2021    }//GEN-LAST:event_jButton2ActionPerformed
2022

2023    private void jButtonCSVFilenameActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonCSVFilenameActionPerformed
2024
String JavaDoc fileName = "";
2025        javax.swing.JFileChooser JavaDoc jfc = new javax.swing.JFileChooser JavaDoc( MainFrame.getMainInstance().getCurrentDirectory());
2026        
2027        jfc.setDialogTitle("Select CSV file....");
2028        
2029        jfc.addChoosableFileFilter( new javax.swing.filechooser.FileFilter JavaDoc() {
2030            public boolean accept(java.io.File JavaDoc file) {
2031                String JavaDoc filename = file.getName();
2032                return (filename.toLowerCase().endsWith(".csv") || file.isDirectory()) ;
2033            }
2034            public String JavaDoc getDescription() {
2035                return "CSV *.csv";
2036            }
2037        });
2038        
2039        jfc.setMultiSelectionEnabled(false);
2040        jfc.setDialogType( javax.swing.JFileChooser.OPEN_DIALOG);
2041        if (jfc.showOpenDialog( this) == javax.swing.JOptionPane.OK_OPTION) {
2042            java.io.File JavaDoc file = jfc.getSelectedFile();
2043                    try {
2044                        jTextFieldCSVFilename.setText( file.getAbsolutePath() );
2045                    } catch (Exception JavaDoc ex){}
2046        }
2047        
2048        
2049        
2050    }//GEN-LAST:event_jButtonCSVFilenameActionPerformed
2051

2052    private void jComboBoxJDBCDriverActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jComboBoxJDBCDriverActionPerformed
2053
// Run the wizard to populate Connection URL
2054
jButtonWizardActionPerformed(null);
2055    }//GEN-LAST:event_jComboBoxJDBCDriverActionPerformed
2056

2057    private void jRadioButtonJBSetArrayActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jRadioButtonJBSetArrayActionPerformed
2058
// Add your handling code here:
2059
}//GEN-LAST:event_jRadioButtonJBSetArrayActionPerformed
2060

2061    private void jButtonOK1ActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonOK1ActionPerformed
2062
//java.awt.Frame parent = Misc.frameFromComponent(this);
2063
//
2064
MainFrame.getMainInstance().getReportClassLoader().rescanLibDirectory();
2065        
2066        int selectedConnectionType = Integer.parseInt( ""+ ((Tag)jComboBoxConnectionType.getSelectedItem()).getValue() );
2067        
2068        if (selectedConnectionType == 0)
2069        {
2070            
2071            // Try the java connection...
2072
Connection conn = null;
2073            Statement stmt = null;
2074            try {
2075            try {
2076                        DriverPool.registerDriver( (String JavaDoc)jComboBoxJDBCDriver.getSelectedItem(), MainFrame.getMainInstance().getReportClassLoader() );
2077                    } catch (Exception JavaDoc ex)
2078                    {
2079                        DriverPool.registerDriver( (String JavaDoc)jComboBoxJDBCDriver.getSelectedItem(), this.getClass().getClassLoader() );
2080                    }
2081                    
2082                    java.sql.Driver JavaDoc driver = DriverPool.getDriver( this.jTextFieldJDBCUrl.getText() );
2083                    
2084                    java.util.Properties JavaDoc connectProps = new java.util.Properties JavaDoc();
2085                    connectProps.setProperty("user", this.jTextFieldUsername.getText());
2086                    connectProps.setProperty("password", this.jTextFieldPassword.getText());
2087                    
2088                    conn = driver.connect( this.jTextFieldJDBCUrl.getText(), connectProps);
2089                stmt = conn.createStatement();
2090                                
2091            }catch (NoClassDefFoundError JavaDoc ex)
2092                        {
2093                                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2094                                        I18n.getFormattedString("messages.connection.noClassDefFoundError",
2095                                        "{0}\nNoClassDefFoundError!!\nCheck your classpath!\n{1}",
2096                                        new Object JavaDoc[]{"", ""+ex.getMessage()}),
2097                                        I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2098                                return;
2099                        }
2100                        catch (ClassNotFoundException JavaDoc ex)
2101                        {
2102                                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2103                                        I18n.getFormattedString("messages.connection.classNotFoundError",
2104                                        "{0}\nClassNotFoundError!\nMsg: {1}\nPossible not found class: {2}\nCheck your classpath!",
2105                                        new Object JavaDoc[]{"", ""+ex.getMessage(), "" + jComboBoxJDBCDriver.getSelectedItem()}),
2106                                        I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2107                                return;
2108                        }
2109                        catch (java.sql.SQLException JavaDoc ex)
2110                        {
2111                                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2112                                        I18n.getFormattedString("messages.connection.sqlError",
2113                                        "{0}\nSQL problems: {1}\n{2}",
2114                                        new Object JavaDoc[]{"", ""+ex.getMessage(), "" + this.jTextFieldJDBCUrl.getText()}),
2115                                        I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2116                                return;
2117                        }
2118                        catch (Exception JavaDoc ex)
2119            {
2120            JOptionPane.showMessageDialog(MainFrame.getMainInstance(),
2121                                I18n.getFormattedString("messages.connection.generalError",
2122                                "{0}\nGeneral problem: {1}\nPlease check your username and password. The DBMS is running?!",
2123                                new Object JavaDoc[]{"", ""+ex.getMessage()}),
2124                                I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2125                                return;
2126            } finally {
2127                // Clean up
2128
if( stmt!=null ) try{ stmt.close(); } catch(Exception JavaDoc e) { /* anyone really care? */ }
2129                if( conn!=null ) try{ conn.close(); } catch(Exception JavaDoc e) { /* anyone really care? */ }
2130            }
2131            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2132            return;
2133        }
2134        else if (selectedConnectionType == 1)
2135        {
2136            String JavaDoc xml_file = jTextFieldXMLFile.getText().trim();
2137            
2138            try {
2139                
2140                java.io.File JavaDoc f = new java.io.File JavaDoc(xml_file);
2141                if (!f.exists())
2142                {
2143                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2144                            I18n.getFormattedString("messages.connectionDialog.fileNotFound","File {0} not found", new Object JavaDoc[]{xml_file}),
2145                            I18n.getString("message.title.error","Error"),JOptionPane.ERROR_MESSAGE);
2146                    return;
2147                }
2148                
2149                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2150                return;
2151            }
2152            catch (Exception JavaDoc ex)
2153            {
2154                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),ex.getMessage(),I18n.getString("message.title.error","Error"),JOptionPane.ERROR_MESSAGE);
2155        ex.printStackTrace();
2156                return;
2157            }
2158
2159        }
2160        else if (selectedConnectionType == 3)
2161        {
2162            try {
2163                Object JavaDoc obj = Class.forName((String JavaDoc)jTextFieldJRCustomDataSourceFactoryClass.getText().trim(), true, MainFrame.getMainInstance().getReportClassLoader()).newInstance();
2164                obj.getClass().getMethod( (String JavaDoc)jTextFieldJRCustomDataSourceMethod.getText().trim(), new Class JavaDoc[0]).invoke(obj,new Object JavaDoc[0]);
2165            }catch (NoClassDefFoundError JavaDoc ex)
2166            {
2167                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2168                            I18n.getFormattedString("messages.connection.noClassDefFoundError",
2169                            "{0}\nNoClassDefFoundError!!\nCheck your classpath!\n{1}",
2170                            new Object JavaDoc[]{"", ""+ex.getMessage()}),
2171                            I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2172                    return;
2173            }
2174            catch (ClassNotFoundException JavaDoc ex)
2175            {
2176                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2177                            I18n.getFormattedString("messages.connection.classNotFoundError",
2178                            "{0}\nClassNotFoundError!\nMsg: {1}\nPossible not found class: {2}\nCheck your classpath!",
2179                            new Object JavaDoc[]{"", ""+ex.getMessage(), "" + jTextFieldJRCustomDataSourceFactoryClass.getText().trim()}),
2180                            I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2181                    return;
2182            }
2183            catch (Exception JavaDoc ex)
2184            {
2185            JOptionPane.showMessageDialog(MainFrame.getMainInstance(),
2186                    I18n.getFormattedString("messages.connection.generalError",
2187                    "{0}\nGeneral problem: {1}\nPlease check your username and password. The DBMS is running?!",
2188                    new Object JavaDoc[]{"", ""+ex.getMessage()}),
2189                    I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2190                    return;
2191            }
2192            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2193        return;
2194        }
2195        else if (selectedConnectionType == 2)
2196        {
2197            try {
2198                Object JavaDoc obj = Class.forName((String JavaDoc)jTextFieldJBSetFactoryClass.getText().trim(), true, MainFrame.getMainInstance().getReportClassLoader()).newInstance();
2199                Object JavaDoc ret_obj = obj.getClass().getMethod( (String JavaDoc)jTextFieldJBSetMethodToCall.getText().trim(), new Class JavaDoc[0]).invoke(null,new Object JavaDoc[0]);
2200            
2201                if (ret_obj != null && !jRadioButtonJBSetArray.isSelected() && (ret_obj instanceof java.util.Collection JavaDoc))
2202                {
2203                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2204                }
2205                else if (ret_obj != null && jRadioButtonJBSetArray.isSelected() && (ret_obj instanceof Object JavaDoc[]))
2206                {
2207                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2208                }
2209                else
2210                {
2211                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.notValidValueReturned",
2212                            "The method don't return a valid Array or java.util.Collection!\n"),I18n.getString("message.title.error","Error"),JOptionPane.ERROR_MESSAGE);
2213                }
2214                
2215            }catch (NoClassDefFoundError JavaDoc ex)
2216            {
2217                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2218                            I18n.getFormattedString("messages.connection.noClassDefFoundError",
2219                            "{0}\nNoClassDefFoundError!!\nCheck your classpath!\n{1}",
2220                            new Object JavaDoc[]{"", ""+ex.getMessage()}),
2221                            I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2222                    return;
2223            }
2224            catch (ClassNotFoundException JavaDoc ex)
2225            {
2226                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2227                            I18n.getFormattedString("messages.connection.classNotFoundError",
2228                            "{0}\nClassNotFoundError!\nMsg: {1}\nPossible not found class: {2}\nCheck your classpath!",
2229                            new Object JavaDoc[]{"", ""+ex.getMessage(), "" + jTextFieldJBSetFactoryClass.getText().trim()}),
2230                            I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2231                    return;
2232            }
2233            catch (Exception JavaDoc ex)
2234            {
2235            JOptionPane.showMessageDialog(MainFrame.getMainInstance(),
2236                    I18n.getFormattedString("messages.connection.generalError",
2237                    "{0}\nGeneral problem: {1}\nPlease check your username and password. The DBMS is running?!",
2238                    new Object JavaDoc[]{"", ""+ex.getMessage()}),
2239                    I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2240                    return;
2241            }
2242            
2243        return;
2244        }
2245        else if (selectedConnectionType == 4)
2246        {
2247            String JavaDoc csv_file = jTextFieldCSVFilename.getText().trim();
2248            
2249            try {
2250                
2251                JRCSVDataSourceConnection con = new JRCSVDataSourceConnection();
2252                java.io.File JavaDoc f = new java.io.File JavaDoc(csv_file);
2253                if (!f.exists())
2254                {
2255                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2256                         I18n.getFormattedString("messages.connectionDialog.fileNotFound","File {0} not found", new Object JavaDoc[]{csv_file}),
2257                         I18n.getString("message.title.error","Error"),JOptionPane.ERROR_MESSAGE);
2258                    return;
2259                }
2260                
2261                con.setFilename( csv_file );
2262                if (con.getJRDataSource() != null)
2263                {
2264                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2265                    return;
2266                }
2267                
2268            }
2269            catch (Exception JavaDoc ex)
2270            {
2271                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),ex.getMessage(),I18n.getString("message.title.error","Error"),JOptionPane.ERROR_MESSAGE);
2272        ex.printStackTrace();
2273                return;
2274            }
2275            
2276        return;
2277        }
2278        else if (selectedConnectionType == 5)
2279        {
2280            try {
2281                
2282                Object JavaDoc obj = Class.forName((String JavaDoc)jTextFieldJRDataSourceProvider.getText().trim(), true, MainFrame.getMainInstance().getReportClassLoader()).newInstance();
2283                if (!(obj instanceof net.sf.jasperreports.engine.JRDataSourceProvider))
2284                {
2285                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getFormattedString("messages.connectionDialog.invalidJRDataSourceProvider","\"{0}\" is not a subclass of\nnet.sf.jasperreports.engine.JRDataSourceProvider.", new Object JavaDoc[]{jTextFieldJRDataSourceProvider.getText()}),I18n.getString("message.title.error","Error"),JOptionPane.ERROR_MESSAGE);
2286                    return;
2287                }
2288                else
2289                {
2290                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2291                    return;
2292                }
2293                
2294            } catch (NoClassDefFoundError JavaDoc ex)
2295            {
2296                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2297                            I18n.getFormattedString("messages.connection.noClassDefFoundError",
2298                            "{0}\nNoClassDefFoundError!!\nCheck your classpath!\n{1}",
2299                            new Object JavaDoc[]{"", ""+ex.getMessage()}),
2300                            I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2301                    return;
2302            }
2303            catch (ClassNotFoundException JavaDoc ex)
2304            {
2305                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2306                            I18n.getFormattedString("messages.connection.classNotFoundError",
2307                            "{0}\nClassNotFoundError!\nMsg: {1}\nPossible not found class: {2}\nCheck your classpath!",
2308                            new Object JavaDoc[]{"", ""+ex.getMessage(), "" + jTextFieldJBSetFactoryClass.getText().trim()}),
2309                            I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2310                    return;
2311            }
2312            catch (Exception JavaDoc ex)
2313            {
2314            JOptionPane.showMessageDialog(MainFrame.getMainInstance(),
2315                    I18n.getFormattedString("messages.connection.generalError",
2316                    "{0}\nGeneral problem: {1}\nPlease check your username and password. The DBMS is running?!",
2317                    new Object JavaDoc[]{"", ""+ex.getMessage()}),
2318                    I18n.getString("message.title.exception","Exception"),JOptionPane.ERROR_MESSAGE);
2319                    return;
2320            }
2321        }
2322        else if (selectedConnectionType == 6)
2323        {
2324            try {
2325                SwingUtilities.invokeLater( new Runnable JavaDoc()
2326                {
2327                    public void run()
2328                    {
2329                        Thread.currentThread().setContextClassLoader( MainFrame.getMainInstance().getReportClassLoader() );
2330                        SessionFactory hb_sessionFactory = null;
2331                        try {
2332
2333                            hb_sessionFactory = new Configuration().configure().buildSessionFactory();
2334
2335                            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2336
2337                        } catch (Exception JavaDoc ex)
2338                        {
2339                            ex.printStackTrace();
2340                            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),ex.getMessage(),I18n.getString("message.title.error","Error"),JOptionPane.ERROR_MESSAGE);
2341                            return;
2342                        }
2343                        finally
2344                        {
2345
2346                        }
2347                    }
2348                });
2349            } catch (Exception JavaDoc ex)
2350            {}
2351        }
2352        else if (selectedConnectionType == 7)
2353        {
2354            try {
2355                SwingUtilities.invokeLater( new Runnable JavaDoc()
2356                {
2357                    public void run()
2358                    {
2359                        
2360                        Thread.currentThread().setContextClassLoader( MainFrame.getMainInstance().getReportClassLoader() );
2361                        SessionFactory hb_sessionFactory = null;
2362                        try {
2363
2364                              EJBQLConnection iReportConn = new EJBQLConnection();
2365                              if (jTextFieldPersistanceUnit.getText().trim().length() != 0)
2366                              {
2367                                    iReportConn.getProperties().put("PersistenceUnit", jTextFieldPersistanceUnit.getText().trim());
2368                              }
2369
2370                              iReportConn.getEntityManager();
2371                              iReportConn.closeEntityManager();
2372                              JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2373
2374                        } catch (Exception JavaDoc ex)
2375                        {
2376                            ex.printStackTrace();
2377                            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),ex.getMessage(),I18n.getString("message.title.error","Error"),JOptionPane.ERROR_MESSAGE);
2378                            return;
2379                        }
2380                        finally
2381                        {
2382
2383                        }
2384                        
2385                    }
2386                });
2387            } catch (Exception JavaDoc ex)
2388            {}
2389        }
2390        else if (selectedConnectionType == 8)
2391        {
2392            try {
2393                SwingUtilities.invokeLater( new Runnable JavaDoc()
2394                {
2395                    public void run()
2396                    {
2397                        
2398                        
2399                        Thread.currentThread().setContextClassLoader( MainFrame.getMainInstance().getReportClassLoader() );
2400                        try {
2401
2402                              MondrianConnection iReportConn = new MondrianConnection();
2403                              iReportConn.getProperties().put(MondrianConnection.CATALOG_URI, jTextFieldCatalogURI.getText().trim());
2404                              iReportConn.getProperties().put(MondrianConnection.CONNECTION_NAME, jComboBoxMondrianJdbc.getSelectedItem()+"");
2405            
2406
2407                              iReportConn.getMondrianConnection();
2408                              iReportConn.closeMondrianConnection();
2409                              JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2410
2411                        } catch (Exception JavaDoc ex)
2412                        {
2413                            ex.printStackTrace();
2414                            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),ex.getMessage(),I18n.getString("message.title.error","Error"),JOptionPane.ERROR_MESSAGE);
2415                            return;
2416                        }
2417                        finally
2418                        {
2419
2420                        }
2421                    }
2422                });
2423            } catch (Exception JavaDoc ex)
2424            {}
2425        }
2426        else if (selectedConnectionType == 9) {
2427            try {
2428                Thread.currentThread().setContextClassLoader( MainFrame.getMainInstance().getReportClassLoader() );
2429                JRSpringLoadedHibernateConnection iReportConn = new JRSpringLoadedHibernateConnection();
2430                iReportConn.setSessionFactoryBeanId(jTextFieldSLHSessionFactory.getText().trim());
2431                iReportConn.setSpringConfig(jTextFieldSLHSpringConfig.getText().trim());
2432 
2433                SessionFactory sf = iReportConn.getSessionFactory();
2434                if (sf == null) {
2435                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.noSessionFactoryReturned","No session factory returned. Check your session factory bean id against the spring configuration."),I18n.getString("message.title.error","Error"),JOptionPane.ERROR_MESSAGE);
2436                    
2437                }
2438                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.hibernateConnectionTestSuccessful","iReport successfully created a Hibernate session factory from your Spring configuration."),"",JOptionPane.INFORMATION_MESSAGE);
2439            } catch (Exception JavaDoc e) {
2440                e.printStackTrace();
2441                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),e.getMessage(), I18n.getString("message.title.error","Error"),JOptionPane.ERROR_MESSAGE);
2442                
2443            }
2444        }
2445        else if (selectedConnectionType == 10)
2446        {
2447            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2448        return;
2449        }
2450        else if (selectedConnectionType == 11)
2451        {
2452            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2453        return;
2454        }
2455        else if (selectedConnectionType == 13)
2456        {
2457            /**
2458             * Copyright (C) 2005, 2006 CINCOM SYSTEMS, INC.
2459             * All Rights Reserved
2460             * www.cincom.com
2461             *
2462             */

2463            String JavaDoc urlstr = this.jTextFieldXMLAUrl.getText().trim();
2464        
2465                String JavaDoc dataSource = (String JavaDoc)this.jComboBoxXMLADatasource.getSelectedItem();
2466                String JavaDoc catalog = (String JavaDoc)this.jComboBoxXMLACatalog.getSelectedItem();
2467                rex.metadata.ServerMetadata smd = new rex.metadata.ServerMetadata(urlstr,(Component JavaDoc)getParent());
2468                if (smd.isValidUrl() == false) {
2469                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2470                            I18n.getString("messages.connectionDialog.connectionXMLATestFailed.InvalidUrl","Connection test failed! Unable to connect to url."),
2471                            "",JOptionPane.INFORMATION_MESSAGE);
2472                    return;
2473                }
2474                rex.graphics.datasourcetree.elements.DataSourceTreeElement dste[] = smd.discoverDataSources();
2475                if (dste == null || dste.length == 0) {
2476                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2477                            I18n.getString("messages.connectionDialog.connectionXMLATestFailed.NoDatasources","Connection test failed! No datasources found."),
2478                            "",JOptionPane.INFORMATION_MESSAGE);
2479                    return;
2480                }
2481                boolean found = false;
2482                int intI =0;
2483                if (dataSource != null && dataSource.length() > 0) {
2484                    while (!found && intI < dste.length) {
2485                        if (dataSource.compareTo(dste[intI].getDataSourceInfo()) == 0){
2486                            found = true;
2487                        } else {
2488                            intI++;
2489                        }
2490                    }
2491                    if (!found) {
2492                        JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2493                            I18n.getFormattedString("messages.connectionDialog.connectionXMLATestFailed.NoDatasourceFound","Connection test failed! Datasource {0} not found.", new Object JavaDoc[]{dataSource+""} ),
2494                            "",JOptionPane.INFORMATION_MESSAGE);
2495                        return;
2496                    }
2497                    if (catalog != null && catalog.length() > 0) {
2498                        found = false;
2499                        rex.graphics.datasourcetree.elements.DataSourceTreeElement cats[] = dste[intI].getChildren();
2500                        if (cats == null || cats.length == 0) {
2501                            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2502                                I18n.getString("messages.connectionDialog.connectionXMLATestFailed.NoCatalogs","Connection test failed! No catalogs found in datasource."),
2503                                "",JOptionPane.INFORMATION_MESSAGE);
2504                            return;
2505                        }
2506                        intI = 0;
2507                        while (!found && intI < cats.length) {
2508                            if (catalog.compareTo(
2509                              ((rex.graphics.datasourcetree.elements.CatalogElement)cats[intI]).toString()) == 0){
2510                                found = true;
2511                            }
2512                            else{
2513                                intI++;
2514                            }
2515                        }
2516                        if (!found) {
2517                            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2518                                I18n.getFormattedString("messages.connectionDialog.connectionXMLATestFailed.NoCatalogFound","Connection test failed! Catalog {0} not found in datasource.", new Object JavaDoc[]{catalog+""} ),
2519                                "",JOptionPane.INFORMATION_MESSAGE);
2520                            return;
2521                        }
2522                    }
2523                    else {
2524                        JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2525                                I18n.getString("messages.connectionDialog.connectionXMLATestSuccessful.NoCatalog","Connection test successful! Connected to server and found datasource, but no catalog specified."),
2526                                "",JOptionPane.INFORMATION_MESSAGE);
2527                        return;
2528                    }
2529                }
2530                else {
2531                    JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2532                                I18n.getString("messages.connectionDialog.connectionXMLATestSuccessful.NoDatasource","Connection test successful! Connected to server, but no datasource specified."),
2533                                "",JOptionPane.INFORMATION_MESSAGE);
2534                    return;
2535                }
2536                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
2537                        I18n.getString("messages.connectionDialog.connectionXMLATestSuccessful","Connection test successful! Catalog found in datasource on xmla server."),
2538                        "",JOptionPane.INFORMATION_MESSAGE);
2539                /* end of modification */
2540                
2541// } catch (Exception ex)
2542
// {}
2543
}
2544        else
2545        {
2546            // try to perform a test...
2547
try {
2548                IReportConnection connection = createConnection(selectedConnectionType);
2549                if (connection == null) throw new Exception JavaDoc(I18n.getString("messages.connectionDialog.connectionTestError","unable to instance the connecion class to test!"));
2550            
2551                connection.test();
2552                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),I18n.getString("messages.connectionDialog.connectionTestSuccessful","Connection test successful!"),"",JOptionPane.INFORMATION_MESSAGE);
2553            } catch (Throwable JavaDoc e) {
2554                e.printStackTrace();
2555            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),e.getMessage(), I18n.getString("message.title.error","Error"),JOptionPane.ERROR_MESSAGE);
2556            }
2557        }
2558        
2559        
2560    }//GEN-LAST:event_jButtonOK1ActionPerformed
2561

2562    private void jButtonWizardActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonWizardActionPerformed
2563

2564        if (jComboBoxJDBCDriver.getSelectedIndex() < 0) return;
2565        String JavaDoc driver = ""+jComboBoxJDBCDriver.getSelectedItem();
2566        driver = driver.trim();
2567        if (driver.equals("")) return;
2568        
2569        String JavaDoc server = jTextFieldServerAddress.getText().trim();
2570        if( server.length()==0 ) {
2571            server = "localhost";
2572        }
2573        
2574        String JavaDoc databaseName = jTextFieldDBName.getText().trim();
2575        
2576        if (driver.equalsIgnoreCase("org.gjt.mm.mysql.Driver")) {
2577            String JavaDoc url = "jdbc:mysql://" + server + "/";
2578            if ( databaseName.length()>0 )
2579                url += databaseName;
2580            else
2581                url += "MYDATABASE";
2582            jTextFieldJDBCUrl.setText(url);
2583        }
2584        else if (driver.equalsIgnoreCase("com.mysql.jdbc.Driver")) {
2585            String JavaDoc url = "jdbc:mysql://" + server + "/";
2586            if (databaseName.length()>0)
2587                url += databaseName;
2588            else
2589                url += "MYDATABASE";
2590            jTextFieldJDBCUrl.setText(url);
2591        }
2592        else if (driver.equalsIgnoreCase("com.internetcds.jdbc.tds.Driver")) {
2593            String JavaDoc url = "jdbc:freetds:sqlserver://localhost/";
2594            if (databaseName.length()>0)
2595                url += databaseName;
2596            else
2597                url += "MYDATABASE";
2598            jTextFieldJDBCUrl.setText(url);
2599        }
2600        else if (driver.equalsIgnoreCase("com.microsoft.jdbc.sqlserver.SQLServerDriver")) {
2601            String JavaDoc url = "jdbc:microsoft:sqlserver://" + server + ":1433;DatabaseName=";
2602            if (databaseName.length()>0)
2603                url += databaseName;
2604            else
2605                url += "MYDATABASE";
2606            jTextFieldJDBCUrl.setText(url);
2607        }
2608        else if (driver.equalsIgnoreCase("sun.jdbc.odbc.JdbcOdbcDriver")) {
2609            String JavaDoc url = "jdbc:odbc:";
2610            if (databaseName.length()>0)
2611                url += jTextFieldDBName.getText();
2612            else
2613                url += "DSNAME";
2614            jTextFieldJDBCUrl.setText(url);
2615        }
2616        else if (driver.equalsIgnoreCase("com.ms.jdbc.odbc.JdbcOdbcDriver")) {
2617            String JavaDoc url = "jdbc:odbc:";
2618            if (databaseName.length()>0)
2619                url += databaseName;
2620            else
2621                url += "DSNAME";
2622            jTextFieldJDBCUrl.setText(url);
2623        }
2624        else if (driver.equalsIgnoreCase("oracle.jdbc.driver.OracleDriver")) {
2625            String JavaDoc url = "jdbc:oracle:thin:@" + server + ":1521:";
2626            if (databaseName.length()>0)
2627                url += databaseName;
2628            else
2629                url += "MYDATABASE";
2630            jTextFieldJDBCUrl.setText(url);
2631        }
2632        else if (driver.equalsIgnoreCase("COM.ibm.db2.jdbc.app.DB2Driver")) {
2633            String JavaDoc url = "jdbc:db2:";
2634            if (databaseName.length()>0)
2635                url += databaseName;
2636            else
2637                url += "MYDATABASE";
2638            jTextFieldJDBCUrl.setText(url);
2639        }
2640        else if (driver.equalsIgnoreCase("com.informix.jdbc.IfxDriver")) {
2641            String JavaDoc url = "jdbc:informix-sqli://" + server + ":port/";
2642            if (databaseName.length()>0)
2643                url += databaseName;
2644            else
2645                url += "MYDATABASE";
2646            
2647            url += ":informixserver=SERVERNAME";
2648            jTextFieldJDBCUrl.setText(url);
2649        }
2650        else if (driver.equalsIgnoreCase("com.sybase.jdbc2.jdbc.SybDriver")) {
2651            String JavaDoc url = "jdbc:sybase:Tds:" + server + ":2638/";
2652            if (databaseName.length()>0)
2653                url += databaseName;
2654            else
2655                url += "MYDATABASE";
2656            jTextFieldJDBCUrl.setText(url);
2657        }
2658        else if (driver.equalsIgnoreCase("com.mysql.jdbc.Driver")) {
2659            String JavaDoc url = "jdbc:mysql://"+server+"/";
2660            if (databaseName.length()>0)
2661                url += databaseName;
2662            else
2663                url += "MYDATABASE";
2664            jTextFieldJDBCUrl.setText(url);
2665        }
2666        else if (driver.equalsIgnoreCase("com.merant.datadirect.jdbc.sqlserver.SQLServerDriver")) {
2667            String JavaDoc url = "jdbc:sqlserver://" + server + ":1433/";
2668            if (databaseName.length()>0)
2669                url += databaseName;
2670            else
2671                url += "MYDATABASE";
2672            jTextFieldJDBCUrl.setText(url);
2673        }
2674        else if (driver.equalsIgnoreCase("com.inet.tds.TdsDriver")) {
2675            String JavaDoc url = "jdbc:inetdae7:"+server+":1433/";
2676            if (databaseName.length()>0)
2677                url += jTextFieldDBName.getText();
2678            else
2679                url += "MYDATABASE";
2680            jTextFieldJDBCUrl.setText(url);
2681        }
2682        else if (driver.equalsIgnoreCase("org.postgresql.Driver")) {
2683            String JavaDoc url = "jdbc:postgresql://" + server + ":5432/";
2684            if (databaseName.length()>0)
2685                url += databaseName;
2686            else
2687                url += "MYDATABASE";
2688            jTextFieldJDBCUrl.setText(url);
2689        }
2690        else if (driver.equalsIgnoreCase("org.hsqldb.jdbcDriver")) {
2691            String JavaDoc url = "jdbc:hsqldb:[PATH_TO_DB_FILES]/";
2692            if (databaseName.length()>0)
2693                url += databaseName;
2694            else
2695                url += "MYDATABASE";
2696            jTextFieldJDBCUrl.setText(url);
2697        }
2698        else if (driver.equalsIgnoreCase("COM.cloudscape.JDBCDriver ")) {
2699            String JavaDoc url = "jdbc:cloudscape:/cloudscape/";
2700            if (databaseName.length()>0)
2701                url += databaseName;
2702            else
2703                url += "MYDATABASE";
2704            jTextFieldJDBCUrl.setText(url);
2705        }
2706        else if (driver.equalsIgnoreCase("net.sourceforge.jtds.jdbc.Driver"))
2707        {
2708            String JavaDoc url = "jdbc:jtds:sqlserver://" +
2709            server + "/";
2710            if (databaseName.length()>0)
2711                url += databaseName;
2712            else
2713                url += "MYDATABASE";
2714            url += ";instance=";
2715            jTextFieldJDBCUrl.setText(url);
2716        }
2717
2718    }//GEN-LAST:event_jButtonWizardActionPerformed
2719

2720    private void jComboBoxConnectionTypeActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jComboBoxConnectionTypeActionPerformed
2721
if (init) return;
2722        jPanelConnectionRoot.removeAll();
2723        int selectedConnectionType = Integer.parseInt( ""+ ((Tag)jComboBoxConnectionType.getSelectedItem()).getValue() );
2724        
2725        if (selectedConnectionType == 0)
2726        {
2727            jPanelConnectionRoot.add("Center", jPanelJDBC);
2728        }
2729        else if (selectedConnectionType == 1)
2730        {
2731            jPanelConnectionRoot.add("Center", jPanelXML);
2732        }
2733        else if (selectedConnectionType == 2)
2734        {
2735            jPanelConnectionRoot.add("Center", jPanelBeansSet);
2736        }
2737        else if (selectedConnectionType == 3)
2738        {
2739            jPanelConnectionRoot.add("Center", jPanelCustomDataSourceFactory);
2740        }
2741        else if (selectedConnectionType == 4)
2742        {
2743            jPanelConnectionRoot.add("Center", jPanelCSV);
2744        }
2745        else if (selectedConnectionType == 5)
2746        {
2747            jPanelConnectionRoot.add("Center", jPanelDatasourceProvider);
2748        }
2749        else if (selectedConnectionType == 6)
2750        {
2751            jPanelConnectionRoot.add("Center", jPanelHibernate);
2752        }
2753        else if (selectedConnectionType == 7)
2754        {
2755            jPanelConnectionRoot.add("Center", jPanelEJBQL);
2756        }
2757        else if (selectedConnectionType == 8)
2758        {
2759            jPanelConnectionRoot.add("Center", jPanelMondrian);
2760        }
2761        else if (selectedConnectionType == 9)
2762        {
2763            jPanelConnectionRoot.add("Center", jPanelSpringLoadedHibernate);
2764        }
2765        else if (selectedConnectionType == 10)
2766        {
2767            jPanelConnectionRoot.add("Center", jPanelQueryExecutorMode);
2768        }
2769        else if (selectedConnectionType == 11)
2770        {
2771            jPanelConnectionRoot.add("Center", jPanelEmptyDataSource);
2772        }
2773        else if (selectedConnectionType == 12)
2774        {
2775            jPanelConnectionRoot.add("Center", jPanelCustomConnection);
2776        }
2777        else if (selectedConnectionType == 13)
2778        {
2779            jPanelConnectionRoot.add("Center", jPanelXMLA);
2780        }
2781        
2782        
2783        jPanelConnectionRoot.updateUI();
2784    }//GEN-LAST:event_jComboBoxConnectionTypeActionPerformed
2785

2786    private void jButtonCancelActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonCancelActionPerformed
2787
setVisible(false);
2788        this.setDialogResult( javax.swing.JOptionPane.CANCEL_OPTION);
2789        dispose();
2790    }//GEN-LAST:event_jButtonCancelActionPerformed
2791

2792    private void jButtonOKActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jButtonOKActionPerformed
2793
if (this.jTextFieldName.getText().trim().length() <= 0) {
2794            javax.swing.JOptionPane.showMessageDialog(this,
2795                    I18n.getString("messages.connectionDialog.invalidName","Please insert a valid connection name!"),
2796                    I18n.getString("messages.connectionDialog.invalidNameCaption","Invalid connection name!"),
2797                    javax.swing.JOptionPane.WARNING_MESSAGE );
2798            return;
2799        }
2800        int selectedConnectionType = Integer.parseInt( ""+ ((Tag)jComboBoxConnectionType.getSelectedItem()).getValue() );
2801        
2802        iReportConnection = createConnection( selectedConnectionType);
2803        if (iReportConnection == null) return;
2804        
2805        setVisible(false);
2806        this.setDialogResult( javax.swing.JOptionPane.OK_OPTION);
2807        dispose();
2808    }//GEN-LAST:event_jButtonOKActionPerformed
2809

2810    /** Closes the dialog */
2811    private void closeDialog(java.awt.event.WindowEvent JavaDoc evt) {//GEN-FIRST:event_closeDialog
2812
setVisible(false);
2813        this.setDialogResult( javax.swing.JOptionPane.CLOSED_OPTION);
2814        dispose();
2815    }//GEN-LAST:event_closeDialog
2816

2817    /**
2818     * @param args the command line arguments
2819     */

2820    public static void main(String JavaDoc args[]) {
2821        new JRParameterDialog(new javax.swing.JFrame JavaDoc(), true).setVisible(true);
2822    }
2823    
2824    /** Getter for property tmpParameter.
2825     * @return Value of property tmpParameter.
2826     *
2827     */

2828    public it.businesslogic.ireport.JRParameter getParameter() {
2829        return tmpParameter;
2830    }
2831    
2832    /** Setter for property tmpParameter.
2833     * @param tmpParameter New value of property tmpParameter.
2834     *
2835     */

2836    public void setParameter(it.businesslogic.ireport.JRParameter tmpParameter) {
2837       }
2838    
2839    /** Getter for property dialogResult.
2840     * @return Value of property dialogResult.
2841     *
2842     */

2843    public int getDialogResult() {
2844        return dialogResult;
2845    }
2846    
2847    /** Setter for property dialogResult.
2848     * @param dialogResult New value of property dialogResult.
2849     *
2850     */

2851    public void setDialogResult(int dialogResult) {
2852        this.dialogResult = dialogResult;
2853    }
2854    
2855    /** Getter for property iReportConnection.
2856     * @return Value of property iReportConnection.
2857     *
2858     */

2859    public it.businesslogic.ireport.IReportConnection getIReportConnection() {
2860        return iReportConnection;
2861    }
2862    
2863    /** Setter for property iReportConnection.
2864     * @param iReportConnection New value of property iReportConnection.
2865     *
2866     */

2867    public void setIReportConnection(it.businesslogic.ireport.IReportConnection iReportConnection) {
2868        this.iReportConnection = iReportConnection;
2869        
2870        this.jTextFieldName.setText( iReportConnection.getName());
2871        if (iReportConnection instanceof JDBCConnection)
2872        {
2873            JDBCConnection con = (JDBCConnection)iReportConnection;
2874            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "0");
2875            this.jComboBoxJDBCDriver.setSelectedItem(con.getJDBCDriver());
2876            this.jTextFieldJDBCUrl.setText( con.getUrl());
2877            this.jTextFieldServerAddress.setText( con.getServerAddress() );
2878            this.jTextFieldDBName.setText( con.getDatabase() );
2879            this.jTextFieldUsername.setText( con.getUsername());
2880            if (con.isSavePassword())
2881                this.jTextFieldPassword.setText( con.getPassword());
2882            else
2883                this.jTextFieldPassword.setText( "");
2884            this.jCheckBoxSavePassword.setSelected( con.isSavePassword());
2885        }
2886        else if (iReportConnection instanceof JRCustomDataSourceConnection)
2887        {
2888            JRCustomDataSourceConnection con = (JRCustomDataSourceConnection)iReportConnection;
2889            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "3");
2890            this.jTextFieldJRCustomDataSourceFactoryClass.setText( con.getFactoryClass());
2891            this.jTextFieldJRCustomDataSourceMethod.setText(con.getMethodToCall());
2892        }
2893        else if (iReportConnection instanceof JavaBeanDataSourceConnection)
2894        {
2895            JavaBeanDataSourceConnection con = (JavaBeanDataSourceConnection)iReportConnection;
2896            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "2");
2897            this.jTextFieldJBSetFactoryClass.setText( con.getFactoryClass());
2898            this.jTextFieldJBSetMethodToCall.setText(con.getMethodToCall());
2899            this.jCheckBoxisUseFieldDescription.setSelected(con.isUseFieldDescription());
2900            if (con.getType().equals(con.BEAN_ARRAY) )
2901            {
2902                jRadioButtonJBSetArray.setSelected(true);
2903                jRadioButtonJBSetCollection.setSelected(false);
2904            }
2905            else
2906            {
2907                jRadioButtonJBSetArray.setSelected(false);
2908                jRadioButtonJBSetCollection.setSelected(true);
2909            }
2910        }
2911        else if (iReportConnection instanceof JRCSVDataSourceConnection)
2912        {
2913            JRCSVDataSourceConnection con = (JRCSVDataSourceConnection)iReportConnection;
2914            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "4");
2915            this.jTextFieldCSVFilename.setText( con.getFilename() );
2916            
2917            if (con.getCustomDateFormat().length() > 0)
2918            {
2919                this.jCheckBoxCVSDateFormat.setSelected(true);
2920                this.jTextFieldCVSDateFormat.setText(con.getCustomDateFormat());
2921                this.jTextFieldCVSDateFormat.setEnabled(true);
2922                this.jButtonCVSDateFormat.setEnabled(true);
2923            }
2924            
2925            this.jCheckBoxCVSFirstRowAsHeader.setSelected( con.isUseFirstRowAsHeader() );
2926            
2927            String JavaDoc fieldSeparator = con.getFieldDelimiter();
2928            if (fieldSeparator.equals(",")) this.jRadioButtonCVSSeparatorComma.setSelected(true);
2929            else if (fieldSeparator.equals("\t")) this.jRadioButtonCVSSeparatorTab.setSelected(true);
2930            else if (fieldSeparator.equals(" ")) this.jRadioButtonCVSSeparatorSpace.setSelected(true);
2931            else if (fieldSeparator.equals(";")) this.jRadioButtonCVSSeparatorSemicolon.setSelected(true);
2932            else if (fieldSeparator.equals("\n")) this.jRadioButtonCVSSeparatorNewLine.setSelected(true);
2933            else {
2934                this.jRadioButtonCVSSeparatorOther.setSelected(true);
2935                this.jTextFieldCVSSeparatorText.setText(fieldSeparator);
2936            }
2937            
2938            String JavaDoc rowSeparator = con.getRecordDelimiter();
2939            if (rowSeparator.equals(",")) this.jRadioButtonCVSSeparatorComma1.setSelected(true);
2940            else if (rowSeparator.equals("\t")) this.jRadioButtonCVSSeparatorTab1.setSelected(true);
2941            else if (rowSeparator.equals(" ")) this.jRadioButtonCVSSeparatorSpace1.setSelected(true);
2942            else if (rowSeparator.equals(";")) this.jRadioButtonCVSSeparatorSemicolon1.setSelected(true);
2943            else if (rowSeparator.equals("\n")) this.jRadioButtonCVSSeparatorNewLine1.setSelected(true);
2944            else {
2945                this.jRadioButtonCVSSeparatorOther1.setSelected(true);
2946                this.jTextFieldCVSSeparatorText1.setText(rowSeparator);
2947            }
2948            
2949            DefaultListModel dlm = (DefaultListModel)this.jListCVSColumns.getModel();
2950
2951            for (int i=0; i< con.getColumnNames().size(); ++i)
2952            {
2953                dlm.addElement(con.getColumnNames().elementAt(i)+"" );
2954            }
2955            
2956            if (dlm.size() > 0)
2957            {
2958                jListCVSColumns.setSelectedIndex(0);
2959            }
2960            
2961        }
2962        else if (iReportConnection instanceof JRXMLDataSourceConnection)
2963        {
2964            JRXMLDataSourceConnection con = (JRXMLDataSourceConnection)iReportConnection;
2965            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "1");
2966            this.jTextFieldXMLFile.setText( con.getFilename() );
2967            this.jTextFieldRecordPath.setText( con.getSelectExpression() );
2968            this.jRadioButtonXML_connection.setSelected( con.isUseConnection() );
2969            this.jRadioButtonXML_datasource.setSelected( !con.isUseConnection() );
2970            XMLDataSourceCheckBoxesChanged();
2971        }
2972         else if (iReportConnection instanceof JRDataSourceProviderConnection)
2973        {
2974            JRDataSourceProviderConnection con = (JRDataSourceProviderConnection)iReportConnection;
2975            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "5");
2976            this.jTextFieldJRDataSourceProvider.setText( it.businesslogic.ireport.util.Misc.nvl(con.getProperties().get("JRDataSourceProvider"), "") );
2977        }
2978        else if (iReportConnection instanceof JRSpringLoadedHibernateConnection) {
2979            
2980            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "9");
2981            this.jTextFieldSLHSpringConfig.setText( ((JRSpringLoadedHibernateConnection)iReportConnection).getSpringConfig() );
2982            this.jTextFieldSLHSessionFactory.setText( ((JRSpringLoadedHibernateConnection)iReportConnection).getSessionFactoryBeanId() );
2983        }
2984        else if (iReportConnection instanceof JRHibernateConnection)
2985        {
2986            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "6");
2987        }
2988        else if (iReportConnection instanceof EJBQLConnection)
2989        {
2990            EJBQLConnection con = (EJBQLConnection)iReportConnection;
2991            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "7");
2992            this.jTextFieldPersistanceUnit.setText( it.businesslogic.ireport.util.Misc.nvl(con.getProperties().get("PersistenceUnit"), "") );
2993        }
2994        else if (iReportConnection instanceof MondrianConnection)
2995        {
2996            MondrianConnection con = (MondrianConnection)iReportConnection;
2997            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "8");
2998            this.jTextFieldCatalogURI.setText( it.businesslogic.ireport.util.Misc.nvl(con.getProperties().get(MondrianConnection.CATALOG_URI), "") );
2999            jComboBoxMondrianJdbc.setSelectedItem( con.getConnectionName() );
3000        }
3001        else if (iReportConnection instanceof QueryExecuterConnection)
3002        {
3003            QueryExecuterConnection con = (QueryExecuterConnection)iReportConnection;
3004            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "10");
3005        }
3006        else if (iReportConnection instanceof JREmptyDatasourceConnection)
3007        {
3008            JREmptyDatasourceConnection con = (JREmptyDatasourceConnection)iReportConnection;
3009            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "11");
3010            jSpinnerNumRecords.getModel().setValue(new Integer JavaDoc(con.getRecords()));
3011        }
3012        else if (iReportConnection instanceof JRCustomConnection)
3013        {
3014            JRCustomConnection con = (JRCustomConnection)iReportConnection;
3015            Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "12");
3016            jTextFieldIReportConnectionClassName.setText( con.getIReportConnectionClassName() );
3017            HashMap JavaDoc map = con.getProperties();
3018            DefaultTableModel JavaDoc dtm = (DefaultTableModel JavaDoc)jTableCustomProperties.getModel();
3019            dtm.setRowCount(0);
3020            Iterator JavaDoc iterator = map.keySet().iterator();
3021            while (iterator.hasNext())
3022            {
3023                String JavaDoc key = ""+iterator.next();
3024                Object JavaDoc value = map.get(key);
3025                if (key.startsWith(JRCustomConnection.PROPERTY_PREFIX))
3026                {
3027                    dtm.addRow(new Object JavaDoc[]{ key.substring(JRCustomConnection.PROPERTY_PREFIX.length()), value+""});
3028                }
3029            }
3030        }
3031        else if (iReportConnection instanceof JRXMLADataSourceConnection)
3032        {
3033            /**
3034             * Copyright (C) 2005, 2006 CINCOM SYSTEMS, INC.
3035             * All Rights Reserved
3036             * www.cincom.com
3037             *
3038             */

3039            JRXMLADataSourceConnection con = (JRXMLADataSourceConnection)iReportConnection;
3040            //this.jComboBoxConnectionType.setSelectedIndex(9); // referencing XMLA Server
3041
Misc.setComboboxSelectedTagValue(jComboBoxConnectionType, "13");
3042            this.jTextFieldXMLAUrl.setText( con.getUrl() );
3043            this.jComboBoxXMLADatasource.removeAllItems();
3044            this.jComboBoxXMLADatasource.addItem(con.getDatasource());
3045            this.jComboBoxXMLACatalog.removeAllItems();
3046            this.jComboBoxXMLACatalog.addItem(con.getCatalog());
3047            this.jComboBoxXMLACube.removeAllItems();
3048            this.jComboBoxXMLACube.addItem(con.getCube());
3049        }
3050    }
3051    
3052    // Variables declaration - do not modify//GEN-BEGIN:variables
3053
private javax.swing.ButtonGroup JavaDoc buttonGroup1;
3054    private javax.swing.ButtonGroup JavaDoc buttonGroupBeansSetType;
3055    private javax.swing.ButtonGroup JavaDoc buttonGroupCVSFieldSeparator;
3056    private javax.swing.ButtonGroup JavaDoc buttonGroupCVSFieldSeparator1;
3057    private javax.swing.JButton JavaDoc jButton2;
3058    private javax.swing.JButton JavaDoc jButtonAddProp;
3059    private javax.swing.JButton JavaDoc jButtonBrowseCatalog;
3060    private javax.swing.JButton JavaDoc jButtonCSVFilename;
3061    private javax.swing.JButton JavaDoc jButtonCVSDateFormat;
3062    private javax.swing.JButton JavaDoc jButtonCancel;
3063    private javax.swing.JButton JavaDoc jButtonDeleteParameter;
3064    private javax.swing.JButton JavaDoc jButtonGetXMLAMetadata;
3065    private javax.swing.JButton JavaDoc jButtonModifyParameter;
3066    private javax.swing.JButton JavaDoc jButtonNewParameter;
3067    private javax.swing.JButton JavaDoc jButtonNewParameter1;
3068    private javax.swing.JButton JavaDoc jButtonOK;
3069    private javax.swing.JButton JavaDoc jButtonOK1;
3070    private javax.swing.JButton JavaDoc jButtonRemoveProp;
3071    private javax.swing.JButton JavaDoc jButtonWizard;
3072    private javax.swing.JCheckBox JavaDoc jCheckBoxCVSDateFormat;
3073    private javax.swing.JCheckBox JavaDoc jCheckBoxCVSFirstRowAsHeader;
3074    private javax.swing.JCheckBox JavaDoc jCheckBoxSavePassword;
3075    private javax.swing.JCheckBox JavaDoc jCheckBoxisUseFieldDescription;
3076    private javax.swing.JComboBox JavaDoc jComboBoxConnectionType;
3077    private javax.swing.JComboBox JavaDoc jComboBoxJDBCDriver;
3078    private javax.swing.JComboBox JavaDoc jComboBoxMondrianJdbc;
3079    private javax.swing.JComboBox JavaDoc jComboBoxXMLACatalog;
3080    private javax.swing.JComboBox JavaDoc jComboBoxXMLACube;
3081    private javax.swing.JComboBox JavaDoc jComboBoxXMLADatasource;
3082    private javax.swing.JLabel JavaDoc jLabel1;
3083    private javax.swing.JLabel JavaDoc jLabel10;
3084    private javax.swing.JLabel JavaDoc jLabel11;
3085    private javax.swing.JLabel JavaDoc jLabel12;
3086    private javax.swing.JLabel JavaDoc jLabel13;
3087    private javax.swing.JLabel JavaDoc jLabel14;
3088    private javax.swing.JLabel JavaDoc jLabel15;
3089    private javax.swing.JLabel JavaDoc jLabel16;
3090    private javax.swing.JLabel JavaDoc jLabel17;
3091    private javax.swing.JLabel JavaDoc jLabel18;
3092    private javax.swing.JLabel JavaDoc jLabel19;
3093    private javax.swing.JLabel JavaDoc jLabel2;
3094    private javax.swing.JLabel JavaDoc jLabel20;
3095    private javax.swing.JLabel JavaDoc jLabel21;
3096    private javax.swing.JLabel JavaDoc jLabel22;
3097    private javax.swing.JLabel JavaDoc jLabel23;
3098    private javax.swing.JLabel JavaDoc jLabel24;
3099    private javax.swing.JLabel JavaDoc jLabel25;
3100    private javax.swing.JLabel JavaDoc jLabel3;
3101    private javax.swing.JLabel JavaDoc jLabel4;
3102    private javax.swing.JLabel JavaDoc jLabel5;
3103    private javax.swing.JLabel JavaDoc jLabel6;
3104    private javax.swing.JLabel JavaDoc jLabel7;
3105    private javax.swing.JLabel JavaDoc jLabel8;
3106    private javax.swing.JLabel JavaDoc jLabel9;
3107    private javax.swing.JLabel JavaDoc jLabelPropertiesTable;
3108    private javax.swing.JLabel JavaDoc jLabelXMLACatalog;
3109    private javax.swing.JLabel JavaDoc jLabelXMLACube;
3110    private javax.swing.JLabel JavaDoc jLabelXMLADatasource;
3111    private javax.swing.JLabel JavaDoc jLabelXMLAUrl;
3112    private javax.swing.JLabel JavaDoc jLabelXMLRecordPath;
3113    private javax.swing.JList JavaDoc jListCVSColumns;
3114    private javax.swing.JPanel JavaDoc jPanel1;
3115    private javax.swing.JPanel JavaDoc jPanel10;
3116    private javax.swing.JPanel JavaDoc jPanel11;
3117    private javax.swing.JPanel JavaDoc jPanel12;
3118    private javax.swing.JPanel JavaDoc jPanel13;
3119    private javax.swing.JPanel JavaDoc jPanel14;
3120    private javax.swing.JPanel JavaDoc jPanel15;
3121    private javax.swing.JPanel JavaDoc jPanel2;
3122    private javax.swing.JPanel JavaDoc jPanel3;
3123    private javax.swing.JPanel JavaDoc jPanel4;
3124    private javax.swing.JPanel JavaDoc jPanel5;
3125    private javax.swing.JPanel JavaDoc jPanel6;
3126    private javax.swing.JPanel JavaDoc jPanel7;
3127    private javax.swing.JPanel JavaDoc jPanel8;
3128    private javax.swing.JPanel JavaDoc jPanel9;
3129    private javax.swing.JPanel JavaDoc jPanelBeansSet;
3130    private javax.swing.JPanel JavaDoc jPanelButtons;
3131    private javax.swing.JPanel JavaDoc jPanelCSV;
3132    private javax.swing.JPanel JavaDoc jPanelConnectionRoot;
3133    private javax.swing.JPanel JavaDoc jPanelConnectionType;
3134    private javax.swing.JPanel JavaDoc jPanelCustomConnection;
3135    private javax.swing.JPanel JavaDoc jPanelCustomDataSourceFactory;
3136    private javax.swing.JPanel JavaDoc jPanelDatasourceProvider;
3137    private javax.swing.JPanel JavaDoc jPanelEJBQL;
3138    private javax.swing.JPanel JavaDoc jPanelEmptyDataSource;
3139    private javax.swing.JPanel JavaDoc jPanelHibernate;
3140    private javax.swing.JPanel JavaDoc jPanelJDBC;
3141    private javax.swing.JPanel JavaDoc jPanelMondrian;
3142    private javax.swing.JPanel JavaDoc jPanelQueryExecutorMode;
3143    private javax.swing.JPanel JavaDoc jPanelSpringLoadedHibernate;
3144    private javax.swing.JPanel JavaDoc jPanelXML;
3145    private javax.swing.JPanel JavaDoc jPanelXMLA;
3146    private javax.swing.JRadioButton JavaDoc jRadioButtonCVSSeparatorComma;
3147    private javax.swing.JRadioButton JavaDoc jRadioButtonCVSSeparatorComma1;
3148    private javax.swing.JRadioButton JavaDoc jRadioButtonCVSSeparatorNewLine;
3149    private javax.swing.JRadioButton JavaDoc jRadioButtonCVSSeparatorNewLine1;
3150    private javax.swing.JRadioButton JavaDoc jRadioButtonCVSSeparatorOther;
3151    private javax.swing.JRadioButton JavaDoc jRadioButtonCVSSeparatorOther1;
3152    private javax.swing.JRadioButton JavaDoc jRadioButtonCVSSeparatorSemicolon;
3153    private javax.swing.JRadioButton JavaDoc jRadioButtonCVSSeparatorSemicolon1;
3154    private javax.swing.JRadioButton JavaDoc jRadioButtonCVSSeparatorSpace;
3155    private javax.swing.JRadioButton JavaDoc jRadioButtonCVSSeparatorSpace1;
3156    private javax.swing.JRadioButton JavaDoc jRadioButtonCVSSeparatorTab;
3157    private javax.swing.JRadioButton JavaDoc jRadioButtonCVSSeparatorTab1;
3158    private javax.swing.JRadioButton JavaDoc jRadioButtonJBSetArray;
3159    private javax.swing.JRadioButton JavaDoc jRadioButtonJBSetCollection;
3160    private javax.swing.JRadioButton JavaDoc jRadioButtonXML_connection;
3161    private javax.swing.JRadioButton JavaDoc jRadioButtonXML_datasource;
3162    private javax.swing.JScrollPane JavaDoc jScrollPane1;
3163    private javax.swing.JScrollPane JavaDoc jScrollPane2;
3164    private javax.swing.JScrollPane JavaDoc jScrollPane3;
3165    private javax.swing.JSeparator JavaDoc jSeparator1;
3166    private javax.swing.JSeparator JavaDoc jSeparator2;
3167    private javax.swing.JSeparator JavaDoc jSeparator3;
3168    private javax.swing.JSeparator JavaDoc jSeparator4;
3169    private javax.swing.JSeparator JavaDoc jSeparator5;
3170    private javax.swing.JSeparator JavaDoc jSeparator6;
3171    private javax.swing.JSeparator JavaDoc jSeparator7;
3172    private javax.swing.JSeparator JavaDoc jSeparator8;
3173    private javax.swing.JSpinner JavaDoc jSpinnerNumRecords;
3174    private javax.swing.JTabbedPane JavaDoc jTabbedPane1;
3175    private javax.swing.JTable JavaDoc jTableCustomProperties;
3176    private javax.swing.JTextArea JavaDoc jTextArea1;
3177    private javax.swing.JTextField JavaDoc jTextFieldCSVFilename;
3178    private javax.swing.JTextField JavaDoc jTextFieldCVSDateFormat;
3179    private javax.swing.JTextField JavaDoc jTextFieldCVSSeparatorText;
3180    private javax.swing.JTextField JavaDoc jTextFieldCVSSeparatorText1;
3181    private javax.swing.JTextField JavaDoc jTextFieldCatalogURI;
3182    private javax.swing.JTextField JavaDoc jTextFieldDBName;
3183    private javax.swing.JTextField JavaDoc jTextFieldIReportConnectionClassName;
3184    private javax.swing.JTextField JavaDoc jTextFieldJBSetFactoryClass;
3185    private javax.swing.JTextField JavaDoc jTextFieldJBSetMethodToCall;
3186    private javax.swing.JTextField JavaDoc jTextFieldJDBCUrl;
3187    private javax.swing.JTextField JavaDoc jTextFieldJRCustomDataSourceFactoryClass;
3188    private javax.swing.JTextField JavaDoc jTextFieldJRCustomDataSourceMethod;
3189    private javax.swing.JTextField JavaDoc jTextFieldJRDataSourceProvider;
3190    private javax.swing.JTextField JavaDoc jTextFieldName;
3191    private javax.swing.JPasswordField JavaDoc jTextFieldPassword;
3192    private javax.swing.JTextField JavaDoc jTextFieldPersistanceUnit;
3193    private javax.swing.JTextField JavaDoc jTextFieldRecordPath;
3194    private javax.swing.JTextField JavaDoc jTextFieldSLHSessionFactory;
3195    private javax.swing.JTextField JavaDoc jTextFieldSLHSpringConfig;
3196    private javax.swing.JTextField JavaDoc jTextFieldServerAddress;
3197    private javax.swing.JTextField JavaDoc jTextFieldUsername;
3198    private javax.swing.JTextField JavaDoc jTextFieldXMLAUrl;
3199    private javax.swing.JTextField JavaDoc jTextFieldXMLFile;
3200    private javax.swing.JTextPane JavaDoc jTextPane1;
3201    private javax.swing.JTextPane JavaDoc jTextPane2;
3202    // End of variables declaration//GEN-END:variables
3203

3204    private int dialogResult;
3205    
3206    private IReportConnection iReportConnection;
3207    
3208    public void applyI18n(){
3209                // Start autogenerated code ----------------------
3210
jCheckBoxCVSDateFormat.setText(I18n.getString("connectionDialog.checkBoxCVSDateFormat","Use custom date format"));
3211                jCheckBoxCVSFirstRowAsHeader.setText(I18n.getString("connectionDialog.checkBoxCVSFirstRowAsHeader","Skip the first line (the column names will be read from the first line)"));
3212                jCheckBoxSavePassword.setText(I18n.getString("connectionDialog.checkBoxSavePassword","Save password"));
3213                jCheckBoxisUseFieldDescription.setText(I18n.getString("connectionDialog.checkBoxisUseFieldDescription","Use field description"));
3214                jRadioButtonCVSSeparatorComma.setText(I18n.getString("connectionDialog.radioButtonCVSSeparatorComma","Comma"));
3215                jRadioButtonCVSSeparatorComma1.setText(I18n.getString("connectionDialog.radioButtonCVSSeparatorComma1","Comma"));
3216                jRadioButtonCVSSeparatorNewLine.setText(I18n.getString("connectionDialog.radioButtonCVSSeparatorNewLine","New line"));
3217                jRadioButtonCVSSeparatorNewLine1.setText(I18n.getString("connectionDialog.radioButtonCVSSeparatorNewLine1","New line"));
3218                jRadioButtonCVSSeparatorOther.setText(I18n.getString("connectionDialog.radioButtonCVSSeparatorOther","Other"));
3219                jRadioButtonCVSSeparatorOther1.setText(I18n.getString("connectionDialog.radioButtonCVSSeparatorOther1","Other"));
3220                jRadioButtonCVSSeparatorSemicolon.setText(I18n.getString("connectionDialog.radioButtonCVSSeparatorSemicolon","Semicolon"));
3221                jRadioButtonCVSSeparatorSemicolon1.setText(I18n.getString("connectionDialog.radioButtonCVSSeparatorSemicolon1","Semicolon"));
3222                jRadioButtonCVSSeparatorSpace.setText(I18n.getString("connectionDialog.radioButtonCVSSeparatorSpace","Space"));
3223                jRadioButtonCVSSeparatorSpace1.setText(I18n.getString("connectionDialog.radioButtonCVSSeparatorSpace1","Space"));
3224                jRadioButtonCVSSeparatorTab.setText(I18n.getString("connectionDialog.radioButtonCVSSeparatorTab","Tab"));
3225                jRadioButtonCVSSeparatorTab1.setText(I18n.getString("connectionDialog.radioButtonCVSSeparatorTab1","Tab"));
3226                jRadioButtonJBSetArray.setText(I18n.getString("connectionDialog.radioButtonJBSetArray","Array of javaBeans"));
3227                jRadioButtonJBSetCollection.setText(I18n.getString("connectionDialog.radioButtonJBSetCollection"," Collection of javaBeans"));
3228                jRadioButtonXML_connection.setText(I18n.getString("connectionDialog.radioButtonXML_connection","Use the report XPath expression when filling the report"));
3229                jRadioButtonXML_datasource.setText(I18n.getString("connectionDialog.radioButtonXML_datasource","Create a datasource using this expression"));
3230                // End autogenerated code ----------------------
3231
// Start autogenerated code ----------------------
3232
jButton2.setText(I18n.getString("connectionDialog.button2","Browse"));
3233                jButtonBrowseCatalog.setText(I18n.getString("connectionDialog.buttonBrowseCatalog","Browse..."));
3234                jButtonCSVFilename.setText(I18n.getString("connectionDialog.buttonCSVFilename","Browse"));
3235                jButtonCVSDateFormat.setText(I18n.getString("connectionDialog.buttonCVSDateFormat","Date format"));
3236                jButtonCancel.setText(I18n.getString("connectionDialog.buttonCancel","Cancel"));
3237                jButtonDeleteParameter.setText(I18n.getString("connectionDialog.buttonDeleteParameter","Delete"));
3238                jButtonModifyParameter.setText(I18n.getString("connectionDialog.buttonModifyParameter","Modify"));
3239                jButtonNewParameter.setText(I18n.getString("connectionDialog.buttonNewParameter","New"));
3240                jButtonNewParameter1.setText(I18n.getString("connectionDialog.buttonNewParameter1","Get columns name from the first row of the file"));
3241                jButtonOK.setText(I18n.getString("connectionDialog.buttonOK","Save"));
3242                jButtonOK1.setText(I18n.getString("connectionDialog.buttonOK1","Test"));
3243                jButtonWizard.setText(I18n.getString("connectionDialog.buttonWizard","Wizard"));
3244                jLabel1.setText(I18n.getString("connectionDialog.label1","Name"));
3245                jLabel10.setText(I18n.getString("connectionDialog.label10","Factory class"));
3246                jLabel11.setText(I18n.getString("connectionDialog.label11","The static method to call to retrive the JRDataSource"));
3247                jLabel12.setText(I18n.getString("connectionDialog.label12","Factory class (the class that will produce the set)"));
3248                jLabel13.setText(I18n.getString("connectionDialog.label13","The static method to call to retrive the array or the the collection of javaBeans"));
3249                jLabel14.setText(I18n.getString("connectionDialog.label14","Server Address"));
3250                jLabel15.setText(I18n.getString("connectionDialog.label15","CSV file"));
3251                jLabel17.setText(I18n.getString("connectionDialog.label17","JasperReports DataSource Provider class"));
3252                jLabel18.setText(I18n.getString("connectionDialog.label18","Persistance Unit Name"));
3253                jLabel19.setText(I18n.getString("connectionDialog.label19","Catalog URI (i.e. file:/path/schema.xml)"));
3254                jLabel2.setText(I18n.getString("connectionDialog.label2","JDBC Driver"));
3255                jLabel20.setText(I18n.getString("connectionDialog.label20","Jdbc Connection"));
3256                jLabel21.setText(I18n.getString("connectionDialog.label21","Spring configuration"));
3257                jLabel22.setText(I18n.getString("connectionDialog.label22","Session Factory Bean ID"));
3258                jLabel23.setText(I18n.getString("connectionDialog.label23"," "));
3259                jLabel24.setText(I18n.getString("connectionDialog.label24","Number of empty records"));
3260                jLabel3.setText(I18n.getString("connectionDialog.label3","JDBC URL"));
3261                jLabel4.setText(I18n.getString("connectionDialog.label4","Type of connection / datasource"));
3262                jLabel5.setText(I18n.getString("connectionDialog.label5","Database"));
3263                jLabel6.setText(I18n.getString("connectionDialog.label6","Username"));
3264                jLabel7.setText(I18n.getString("connectionDialog.label7","Password"));
3265                jLabel9.setText(I18n.getString("connectionDialog.label9","XML file"));
3266                jLabelXMLRecordPath.setText(I18n.getString("connectionDialog.labelXMLRecordPath","Select Expression"));
3267                // End autogenerated code ----------------------
3268

3269                jLabelXMLAUrl.setText(I18n.getString("connectionDialog.labelXMLAUrl","Url of XML/A server"));
3270                jButtonGetXMLAMetadata.setText(I18n.getString("connectionDialog.buttonGetXMLAMetadata","Get metadata"));
3271                jLabelXMLADatasource.setText(I18n.getString("connectionDialog.labelXMLADatasource","Datasource"));
3272                jLabelXMLACatalog.setText(I18n.getString("connectionDialog.labelXMLACatalog","Catalog"));
3273                jLabelXMLACube.setText(I18n.getString("connectionDialog.labelXMLACube","Cube"));
3274                
3275                jTabbedPane1.setTitleAt(0,I18n.getString("connectionDialog.tab.Columns","Columns") );
3276                jTabbedPane1.setTitleAt(0,I18n.getString("connectionDialog.tab.Separators","Separators") );
3277                
3278                ((javax.swing.border.TitledBorder JavaDoc)jPanel2.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("connectionDialog.panelBorder.jdbcUrlWizard","JDBC URL Wizard") );
3279                ((javax.swing.border.TitledBorder JavaDoc)jPanel8.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("connectionDialog.panelBorder.ColumnNames","Column names") );
3280                ((javax.swing.border.TitledBorder JavaDoc)jPanel6.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("connectionDialog.panelBorder.Other","Other") );
3281                ((javax.swing.border.TitledBorder JavaDoc)jPanel4.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("connectionDialog.panelBorder.FieldSeparatorChat","Field separator (char)") );
3282                ((javax.swing.border.TitledBorder JavaDoc)jPanel5.getBorder()).setTitle( it.businesslogic.ireport.util.I18n.getString("connectionDialog.panelBorder.RowSeparator","Row separator") );
3283                
3284                jTableCustomProperties.getColumn("Name").setHeaderValue( I18n.getString("connectionDialog.tablecolumn.Name","Name") );
3285                jTableCustomProperties.getColumn("Value").setHeaderValue( I18n.getString("connectionDialog.tablecolumn.Value","Value") );
3286                
3287                jButtonAddProp.setText(I18n.getString("connectionDialog.buttonAddProp","Add"));
3288                jButtonRemoveProp.setText(I18n.getString("connectionDialog.buttonRemoveProp","Remove"));
3289    }
3290    
3291    
3292    public IReportConnection createConnection(int selectedConnectionType)
3293    {
3294        IReportConnection irConn = null;
3295        
3296        if (selectedConnectionType == 0) {
3297            irConn = new JDBCConnection();
3298            irConn.setName( this.jTextFieldName.getText().trim() );
3299            ((JDBCConnection)irConn).setServerAddress( this.jTextFieldServerAddress.getText().trim() );
3300            ((JDBCConnection)irConn).setDatabase( this.jTextFieldDBName.getText().trim() );
3301            ((JDBCConnection)irConn).setUsername( this.jTextFieldUsername.getText().trim() );
3302            if (jCheckBoxSavePassword.isSelected())
3303                ((JDBCConnection)irConn).setPassword( this.jTextFieldPassword.getText());
3304            else
3305                ((JDBCConnection)irConn).setPassword("");
3306            ((JDBCConnection)irConn).setSavePassword( jCheckBoxSavePassword.isSelected() );
3307            ((JDBCConnection)irConn).setJDBCDriver( (this.jComboBoxJDBCDriver.getSelectedItem()+"").trim() );
3308            if ((this.jComboBoxJDBCDriver.getSelectedItem()+"").trim().length() == 0) {
3309                javax.swing.JOptionPane.showMessageDialog(this,
3310                        I18n.getString("messages.connectionDialog.jdbc.invalidDriver","Please insert a valid JDBC driver!"),
3311                        I18n.getString("messages.connectionDialog.jdbc.invalidDriverCaption","Invalid driver!"),
3312                        javax.swing.JOptionPane.WARNING_MESSAGE );
3313                return null;
3314            }
3315            
3316            if (this.jTextFieldJDBCUrl.getText().trim().length() == 0) {
3317                javax.swing.JOptionPane.showMessageDialog(this,
3318                        I18n.getString("messages.connectionDialog.jdbc.invalidUrl","Please insert a valid JDBC URL!"),
3319                        I18n.getString("messages.connectionDialog.jdbc.invalidUrlCaption","Invalid url!"),javax.swing.JOptionPane.WARNING_MESSAGE );
3320                return null;
3321            }
3322            ((JDBCConnection)irConn).setUrl(this.jTextFieldJDBCUrl.getText().trim());
3323        }
3324        else if (selectedConnectionType == 2) {
3325            irConn = new JavaBeanDataSourceConnection();
3326            irConn.setName( this.jTextFieldName.getText().trim() );
3327            ((JavaBeanDataSourceConnection)irConn).setFactoryClass( this.jTextFieldJBSetFactoryClass.getText().trim() );
3328            ((JavaBeanDataSourceConnection)irConn).setMethodToCall( this.jTextFieldJBSetMethodToCall.getText().trim() );
3329            ((JavaBeanDataSourceConnection)irConn).setUseFieldDescription( this.jCheckBoxisUseFieldDescription.isSelected() );
3330            if (jRadioButtonJBSetArray.isSelected())
3331            {
3332                ((JavaBeanDataSourceConnection)irConn).setType( JavaBeanDataSourceConnection.BEAN_ARRAY );
3333            }
3334            else
3335            {
3336               ((JavaBeanDataSourceConnection)irConn).setType( JavaBeanDataSourceConnection.BEAN_COLLECTION );
3337            }
3338        }
3339        else if (selectedConnectionType == 3) {
3340            irConn = new JRCustomDataSourceConnection();
3341            irConn.setName( this.jTextFieldName.getText().trim() );
3342            ((JRCustomDataSourceConnection)irConn).setFactoryClass( this.jTextFieldJRCustomDataSourceFactoryClass.getText().trim() );
3343            ((JRCustomDataSourceConnection)irConn).setMethodToCall( this.jTextFieldJRCustomDataSourceMethod.getText().trim() );
3344        }
3345        else if (selectedConnectionType == 4) {
3346            
3347            irConn = new JRCSVDataSourceConnection();
3348            irConn.setName( this.jTextFieldName.getText().trim() );
3349            ((JRCSVDataSourceConnection)irConn).setFilename( this.jTextFieldCSVFilename.getText().trim() );
3350            
3351            if (jRadioButtonCVSSeparatorComma.isSelected()) ((JRCSVDataSourceConnection)irConn).setFieldDelimiter(",");
3352            if (jRadioButtonCVSSeparatorTab.isSelected()) ((JRCSVDataSourceConnection)irConn).setFieldDelimiter("\t");
3353            if (jRadioButtonCVSSeparatorSpace.isSelected()) ((JRCSVDataSourceConnection)irConn).setFieldDelimiter(" ");
3354            if (jRadioButtonCVSSeparatorSemicolon.isSelected()) ((JRCSVDataSourceConnection)irConn).setFieldDelimiter(";");
3355            if (jRadioButtonCVSSeparatorNewLine.isSelected()) ((JRCSVDataSourceConnection)irConn).setFieldDelimiter("\n");
3356            if (jRadioButtonCVSSeparatorOther.isSelected()) ((JRCSVDataSourceConnection)irConn).setFieldDelimiter(jTextFieldCVSSeparatorText.getText());
3357            
3358            if (jRadioButtonCVSSeparatorComma1.isSelected()) ((JRCSVDataSourceConnection)irConn).setRecordDelimiter(",");
3359            if (jRadioButtonCVSSeparatorTab1.isSelected()) ((JRCSVDataSourceConnection)irConn).setRecordDelimiter("\t");
3360            if (jRadioButtonCVSSeparatorSpace1.isSelected()) ((JRCSVDataSourceConnection)irConn).setRecordDelimiter(" ");
3361            if (jRadioButtonCVSSeparatorSemicolon1.isSelected()) ((JRCSVDataSourceConnection)irConn).setRecordDelimiter(";");
3362            if (jRadioButtonCVSSeparatorNewLine1.isSelected()) ((JRCSVDataSourceConnection)irConn).setRecordDelimiter("\n");
3363            if (jRadioButtonCVSSeparatorOther1.isSelected()) ((JRCSVDataSourceConnection)irConn).setRecordDelimiter(jTextFieldCVSSeparatorText1.getText());
3364            
3365            ((JRCSVDataSourceConnection)irConn).setCustomDateFormat( jCheckBoxCVSDateFormat.isSelected() ? jTextFieldCVSDateFormat.getText() : "");
3366            ((JRCSVDataSourceConnection)irConn).setUseFirstRowAsHeader( jCheckBoxCVSFirstRowAsHeader.isSelected() );
3367            
3368            DefaultListModel dlm = (DefaultListModel)this.jListCVSColumns.getModel();
3369            Vector JavaDoc columnsNames = new Vector JavaDoc();
3370            for (int k=0; k< dlm.size(); ++k)
3371            {
3372                columnsNames.add(dlm.elementAt(k)+"");
3373            }
3374            
3375            ((JRCSVDataSourceConnection)irConn).setColumnNames( columnsNames );
3376            
3377            if (columnsNames.size() == 0)
3378            {
3379                if (JOptionPane.showConfirmDialog(this,I18n.getString("messages.connectionDialog.notAllColumnsDefined","You have not defined any column for your CSV file. Continue anyway?"),"",JOptionPane.INFORMATION_MESSAGE) != JOptionPane.OK_OPTION)
3380                {
3381                    return null;
3382                }
3383            }
3384            if (((JRCSVDataSourceConnection)irConn).getFieldDelimiter().equals( ((JRCSVDataSourceConnection)irConn).getRecordDelimiter() ))
3385            {
3386                if (JOptionPane.showConfirmDialog(this,I18n.getString("messages.connectionDialog.duplicatedDelimiter","Field delimiter char is the same as the record delimiter. Continue anyway?"),"",JOptionPane.INFORMATION_MESSAGE) != JOptionPane.OK_OPTION)
3387                {
3388                    return null;
3389                }
3390            }
3391        }
3392        else if (selectedConnectionType == 1) {
3393            irConn = new JRXMLDataSourceConnection();
3394            irConn.setName( this.jTextFieldName.getText().trim() );
3395            ((JRXMLDataSourceConnection)irConn).setFilename( this.jTextFieldXMLFile.getText().trim() );
3396            ((JRXMLDataSourceConnection)irConn).setSelectExpression( this.jTextFieldRecordPath.getText().trim() );
3397            ((JRXMLDataSourceConnection)irConn).setUseConnection( jRadioButtonXML_connection.isSelected() );
3398        }
3399        else if (selectedConnectionType == 5) {
3400            irConn = new JRDataSourceProviderConnection();
3401            irConn.setName( this.jTextFieldName.getText().trim() );
3402            ((JRDataSourceProviderConnection)irConn).getProperties().put("JRDataSourceProvider", this.jTextFieldJRDataSourceProvider.getText().trim() );
3403        }
3404        else if (selectedConnectionType == 6) {
3405            irConn = new JRHibernateConnection();
3406            irConn.setName( this.jTextFieldName.getText().trim() );
3407        }
3408        else if (selectedConnectionType == 7) {
3409            irConn = new EJBQLConnection();
3410            irConn.setName( this.jTextFieldName.getText().trim() );
3411            if (jTextFieldPersistanceUnit.getText().trim().length() != 0)
3412            {
3413                irConn.getProperties().put("PersistenceUnit", jTextFieldPersistanceUnit.getText().trim());
3414            }
3415        }
3416        else if (selectedConnectionType == 8) {
3417            
3418            if (this.jComboBoxMondrianJdbc.getSelectedIndex() < 0) {
3419                javax.swing.JOptionPane.showMessageDialog(this,
3420                        I18n.getString("messages.connectionDialog.setJDBCConnection","You have to choose a JDBC connection in order to configure the Mondrian OLAP connection.\nIf JDBC connection are not yet available, please create one before creating this connection."),
3421                        I18n.getString("messages.connectionDialog.setJDBCConnectionCaption","Invalid JDBC connection!"),javax.swing.JOptionPane.WARNING_MESSAGE );
3422                return null;
3423            }
3424            
3425            if (this.jTextFieldCatalogURI.getText().trim().length() == 0) {
3426                javax.swing.JOptionPane.showMessageDialog(this,
3427                        I18n.getString("messages.connectionDialog.setCatalogUri","Please set the Catalog URI"),
3428                        I18n.getString("messages.connectionDialog.setCatalogUriCaption","Invalid URI!"),javax.swing.JOptionPane.WARNING_MESSAGE );
3429                return null;
3430            }
3431            
3432            irConn = new MondrianConnection();
3433            irConn.setName( this.jTextFieldName.getText().trim() );
3434            irConn.getProperties().put(MondrianConnection.CATALOG_URI, jTextFieldCatalogURI.getText().trim());
3435            irConn.getProperties().put(MondrianConnection.CONNECTION_NAME, jComboBoxMondrianJdbc.getSelectedItem()+"");
3436            
3437        }
3438        else if (selectedConnectionType == 9) {
3439            irConn = new JRSpringLoadedHibernateConnection();
3440            irConn.setName( this.jTextFieldName.getText().trim() );
3441            ((JRSpringLoadedHibernateConnection)irConn).setSessionFactoryBeanId(jTextFieldSLHSessionFactory.getText());
3442            ((JRSpringLoadedHibernateConnection)irConn).setSpringConfig(jTextFieldSLHSpringConfig.getText());
3443        }
3444        else if (selectedConnectionType == 10) {
3445            irConn = new QueryExecuterConnection();
3446            irConn.setName( this.jTextFieldName.getText().trim() );
3447        }
3448        else if (selectedConnectionType == 11) {
3449            irConn = new JREmptyDatasourceConnection();
3450            irConn.setName( this.jTextFieldName.getText().trim() );
3451            ((JREmptyDatasourceConnection)irConn).setRecords( ((javax.swing.SpinnerNumberModel JavaDoc)jSpinnerNumRecords.getModel()).getNumber().intValue() );
3452        }
3453        else if (selectedConnectionType == 12) {
3454
3455            irConn = new JRCustomConnection();
3456            irConn.setName( this.jTextFieldName.getText().trim() );
3457            ((JRCustomConnection)irConn).setIReportConnectionClassName( jTextFieldIReportConnectionClassName.getText() );
3458            HashMap JavaDoc map = new HashMap JavaDoc();
3459            DefaultTableModel JavaDoc dtm = (DefaultTableModel JavaDoc)jTableCustomProperties.getModel();
3460            for (int i=0; i<dtm.getRowCount(); ++i)
3461            {
3462                String JavaDoc key = "" + dtm.getValueAt(i,0);
3463                String JavaDoc value = "" + dtm.getValueAt(i,1);
3464                map.put(key, value);
3465            }
3466            ((JRCustomConnection)irConn).setInnerConnectionProperties( map );
3467        }
3468        else if (selectedConnectionType == 13) {
3469
3470            /**
3471             * Copyright (C) 2005, 2006 CINCOM SYSTEMS, INC.
3472             * All Rights Reserved
3473             * www.cincom.com
3474             *
3475             */

3476            irConn = new JRXMLADataSourceConnection();
3477            irConn.setName( this.jTextFieldName.getText().trim() );
3478            
3479            if (this.jTextFieldXMLAUrl.getText().trim().length() == 0) {
3480                javax.swing.JOptionPane.showMessageDialog(this,
3481                        I18n.getString("messages.connectionDialog.xmla.invalidURL","Please specify a valid server URL"),
3482                        I18n.getString("messages.connectionDialog.xmla.invalidProperty","Invalid property!"),javax.swing.JOptionPane.WARNING_MESSAGE );
3483                return null;
3484            }
3485            
3486            ((JRXMLADataSourceConnection)irConn).setUrl( this.jTextFieldXMLAUrl.getText().trim());
3487            
3488            if (this.jComboBoxXMLADatasource.getSelectedIndex() < 0) {
3489                javax.swing.JOptionPane.showMessageDialog(this,
3490                        I18n.getString("messages.connectionDialog.xmla.invalidDatasource","Please specify a valid Datasource"),
3491                        I18n.getString("messages.connectionDialog.setJDBCConnectionCaption","Invalid JDBC connection!"),javax.swing.JOptionPane.WARNING_MESSAGE );
3492                return null;
3493            }
3494            
3495            ((JRXMLADataSourceConnection)irConn).setDatasource(
3496                    ((String JavaDoc)this.jComboBoxXMLADatasource.getSelectedItem()).trim());
3497            
3498            if (this.jComboBoxXMLACatalog.getSelectedIndex() < 0) {
3499                javax.swing.JOptionPane.showMessageDialog(this,
3500                        I18n.getString("messages.connectionDialog.xmla.invalidCatalog","Please specify a valid Catalog"),
3501                        I18n.getString("messages.connectionDialog.setJDBCConnectionCaption","Invalid JDBC connection!"),javax.swing.JOptionPane.WARNING_MESSAGE );
3502                return null;
3503            }
3504            
3505            ((JRXMLADataSourceConnection)irConn).setCatalog(
3506                    ((String JavaDoc)this.jComboBoxXMLACatalog.getSelectedItem()).trim());
3507           
3508            if (this.jComboBoxXMLACube.getSelectedIndex() < 0) {
3509                javax.swing.JOptionPane.showMessageDialog(this,
3510                        I18n.getString("messages.connectionDialog.xmla.invalidCube","Please specify a valid Cube"),
3511                        I18n.getString("messages.connectionDialog.setJDBCConnectionCaption","Invalid JDBC connection!"),javax.swing.JOptionPane.WARNING_MESSAGE );
3512                return null;
3513            }
3514            
3515            ((JRXMLADataSourceConnection)irConn).setCube(
3516                    ((String JavaDoc)this.jComboBoxXMLACube.getSelectedItem()).trim());
3517            
3518            /* end of modification */
3519        }
3520                 
3521        return irConn;
3522    }
3523    
3524    
3525    
3526    /**
3527     * Copyright (C) 2005, 2006 CINCOM SYSTEMS, INC.
3528     * All Rights Reserved
3529     * www.cincom.com
3530     *
3531     */

3532    private class jComboBoxCatListener implements java.awt.event.ActionListener JavaDoc
3533    {
3534        public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
3535                jComboBoxCatActionPerformed(evt);
3536            }
3537    }
3538    jComboBoxCatListener catListener=new jComboBoxCatListener();
3539    
3540    private class jComboBoxdsListener implements java.awt.event.ActionListener JavaDoc
3541    {
3542        public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
3543                jComboBoxDatasourceActionPerformed(evt);
3544            }
3545    }
3546    jComboBoxdsListener dsListener=new jComboBoxdsListener();
3547    
3548    private void jComboBoxDatasourceActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
3549
3550            jComboBoxXMLACatalog.removeActionListener(catListener);
3551            if (this.jComboBoxXMLADatasource.getItemCount() == 0 || this.jComboBoxXMLADatasource.getSelectedIndex() == -1) {
3552              return;
3553            }
3554            String JavaDoc urlstr = this.jTextFieldXMLAUrl.getText().trim();
3555            rex.metadata.ServerMetadata smd = new rex.metadata.ServerMetadata(urlstr,(Component JavaDoc)getParent());
3556            if (smd.isValidUrl() == false) {
3557                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
3558                        I18n.getString("messages.connectionDialog.xmla.invalidUrl","Unable to connect to XMLA server."),"",JOptionPane.INFORMATION_MESSAGE);
3559                return;
3560            }
3561
3562            this.jComboBoxXMLACatalog.removeAllItems();
3563            this.jComboBoxXMLACube.removeAllItems();
3564          
3565            DataSourceTreeElement dste[] = smd.discoverDataSources();
3566            
3567            if (dste == null || dste.length == 0) {
3568                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
3569                        I18n.getString("messages.connectionDialog.xmla.noDatasource","No Datasources found."),"",JOptionPane.INFORMATION_MESSAGE);
3570                return;
3571            }
3572            //filling catalogs
3573
boolean found = false;
3574            int intI = 0;
3575            while (!found && intI < dste.length) {
3576                if (dste[intI].getDataSourceInfo().compareTo((String JavaDoc)this.jComboBoxXMLADatasource.getSelectedItem()) == 0){
3577                    found = true;
3578                }
3579                else{
3580                    intI++;
3581                }
3582            }
3583            if (!found) {
3584                return;
3585            }
3586            rex.graphics.datasourcetree.elements.DataSourceTreeElement catalogs[] = dste[intI].getChildren();
3587            if (catalogs == null || catalogs.length == 0) {
3588                JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
3589                        I18n.getString("messages.connectionDialog.xmla.noCatalogs","No catalogs found for selected datasource."),"",JOptionPane.INFORMATION_MESSAGE);
3590                return;
3591            }
3592            this.jComboBoxXMLACatalog.removeAllItems();
3593   
3594            for (intI = 0;intI<catalogs.length;intI++){
3595                this.jComboBoxXMLACatalog.addItem(((rex.graphics.datasourcetree.elements.CatalogElement)catalogs[intI]).toString());
3596            }
3597        
3598            found = false;
3599             intI= 0;
3600            while (!found && intI < catalogs.length) {
3601                if (catalogs[intI].toString().trim().compareTo((String JavaDoc)this.jComboBoxXMLACatalog.getSelectedItem()) == 0){
3602                    found = true;
3603                }
3604                else{
3605                    intI++;
3606                }
3607            }
3608            if (!found) {
3609             return;
3610            }
3611            rex.graphics.datasourcetree.elements.DataSourceTreeElement cubes[] = catalogs[intI].getChildren();
3612            if (cubes == null || cubes.length == 0) {
3613                return;
3614            }
3615            this.jComboBoxXMLACube.removeAllItems();
3616            for (intI = 0;intI<cubes.length;intI++){
3617                this.jComboBoxXMLACube.addItem(((rex.graphics.datasourcetree.elements.CubeElement)cubes[intI]).toString());
3618            }
3619            jComboBoxXMLACatalog.addActionListener(catListener);
3620            
3621        }
3622    
3623    
3624    private void jComboBoxCatActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
3625      
3626        jComboBoxXMLADatasource.removeActionListener(dsListener);
3627         
3628       if (this.jComboBoxXMLACatalog.getItemCount() == 0 || this.jComboBoxXMLACatalog.getSelectedIndex() == -1 ) {
3629            return;
3630       }
3631        String JavaDoc urlstr = this.jTextFieldXMLAUrl.getText().trim();
3632        rex.metadata.ServerMetadata smd = new rex.metadata.ServerMetadata(urlstr,(Component JavaDoc)getParent());
3633        if (smd.isValidUrl() == false) {
3634            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
3635                    I18n.getString("messages.connectionDialog.xmla.invalidUrl","Unable to connect to XMLA server."),"",JOptionPane.INFORMATION_MESSAGE);
3636            return;
3637        }
3638        
3639        this.jComboBoxXMLACube.removeAllItems();
3640        
3641        rex.graphics.datasourcetree.elements.DataSourceTreeElement dste[] = smd.discoverDataSources();
3642        if (dste == null || dste.length == 0) {
3643            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
3644                    I18n.getString("messages.connectionDialog.xmla.noDatasource","No Datasources found."),"",JOptionPane.INFORMATION_MESSAGE);
3645            return;
3646        }
3647        boolean found = false;
3648        int intI = 0;
3649        while (!found && intI < dste.length) {
3650            if (dste[intI].getDataSourceInfo().compareTo((String JavaDoc)this.jComboBoxXMLADatasource.getSelectedItem()) == 0){
3651                found = true;
3652            } else{
3653                intI++;
3654            }
3655        }if (!found) {
3656            return;
3657        }
3658        rex.graphics.datasourcetree.elements.DataSourceTreeElement catalogs[] = dste[intI].getChildren();
3659        if (catalogs == null || catalogs.length == 0) {
3660            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
3661                    I18n.getString("messages.connectionDialog.xmla.noCatalogs","No catalogs found for selected datasource."),"",JOptionPane.INFORMATION_MESSAGE);
3662            return;
3663        }
3664        //add catalogs
3665
this.jComboBoxXMLACatalog.removeAllItems();
3666        for (intI = 0;intI<catalogs.length;intI++){
3667            this.jComboBoxXMLACatalog.addItem(((rex.graphics.datasourcetree.elements.CatalogElement)catalogs[intI]).toString());
3668        }
3669        found = false;
3670        intI = 0;
3671        while (!found && intI < catalogs.length) {
3672            if (catalogs[intI].toString().compareTo((String JavaDoc)this.jComboBoxXMLACatalog.getSelectedItem()) == 0){
3673                found = true;
3674            }
3675            else{
3676                intI++;
3677                found=false;
3678            }
3679        }
3680        if (!found) {return;
3681        }
3682        rex.graphics.datasourcetree.elements.DataSourceTreeElement cubes[] = catalogs[intI].getChildren();
3683        if (cubes == null || cubes.length == 0) {
3684            JOptionPane.showMessageDialog((Component JavaDoc)getParent(),
3685                    I18n.getString("messages.connectionDialog.xmla.noCubes","No cubes found for selected datasource."),"",JOptionPane.INFORMATION_MESSAGE);
3686            return;
3687        }
3688        this.jComboBoxXMLACube.removeAllItems();
3689        for (intI = 0;intI<cubes.length;intI++){
3690            this.jComboBoxXMLACube.addItem(((rex.graphics.datasourcetree.elements.CubeElement)cubes[intI]).toString());
3691        }
3692        jComboBoxXMLADatasource.addActionListener(dsListener);
3693        
3694    }
3695}
3696
Popular Tags