In "Talend Data Integration" I want to create a connection using JDBC to a Progress OpenEdge database. I have no experience whatsoever with this type of connection.
My ODBC-connections to the same resources work fine, but Talend requires a JDBC connection to function properly.
The connection settings in Talend I have at the moment are:
- DB Type: General JDBC
- JDBC URL: jdbc:sqlserver://db-name:port;databaseName=**
- Driver jar: ??? (which jar-file do I need for OpenEdge?)
- Class name: ??? (which class name do I need for OpenEdge?)
- User name: *
- Password: *
- Schema: ??? (don't know what this means...?)
- Mapping file: ??? (which xml-file do I need for Progress OpenEdge?)
EDIT: I am using Windows 7 on a 64-bit machine, using Talend Open Studio for Data Integration version 5.3.0.r101800.
Setup OpenEdge OBDC connection:
new OdbcConnection("Driver={Progress OpenEdge 10.2B Driver}; HOST=" + host + "; PORT=" + portNumber + "; DB=" + databaseName + "; DefaultIsolationLevel=READ COMMITTED; UID=" + user + "; PWD=" + pasword + ";");
ODBC driver is not included in OpenEdge. The driver must be downloaded and installed!
Setup OpenEdge JDBC connection:
String connectionString = "jdbc:datadirect:openedge://localhost:" + portNumber + ";databaseName=" + databaseName + ";user=" + user + ";password=" + pasword + "";
String cname = "com.ddtek.jdbc.openedge.OpenEdgeDriver";
Class.forName(cname);
connection = DriverManager.getConnection(connectionString);
Include driver in classpath from: C:\Progress\OpenEdge\java\openedge.jar
Setup in http://localhost:9090/fathom.htm
: SQL Configuration Java classpath to: @{startup\dlc}\java\openedge.jar;@{startup\dlc}\java\util.jar
More information:
- Try 'system' or 'sysprogress' for user;
- Try 'SYSTEM' or 'PUB' for
catalog or schema;
- Some tools will ask you for an external catalog name that you wanth to use, not from progress.
I found the solution:
What you need are a set of jar-files that are provided with your specific installation of Progress OpenEdge. These files, which are located in a folder called "java", are not commonly available on the internet and they should meet the exact version that you are using. If necessary, you need to contact your database provider. Use these files (you may not find all of them depending on your version of Progress OpenEdge):
- progress.jar
- openedge.jar
- util.jar
- base.jar
- pool.jar
- spy.jar
My url was wrong (it was still set to mySql). Instead use:
jdbc:datadirect:openedge://your-server-name:your-port;databaseName=your-db-name
As class name, use:
com.ddtek.jdbc.openedge.OpenEdgeDriver
I left schema and mapping file blank, and that worked. Good luck!