Connecting via JDBC to OpenEdge in Talend

放肆的年华 提交于 2019-12-06 10:31:58

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!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!