/ pentaho

PDI JNDI Troubleshooting

Whilst the Part 1 and Part 2 series on Pentaho Data Integration configuration presented the happy path, inevitably connectivity issues can arise if you don't get everything right. From personal experience, I have listed a number of checks that can be checked to incorporate into your troubleshooting if your initial connection configuration is not successful.

Basic Checks

  • Check to ensure you can connect to the database with another application (I use DBeaver and TOAD for SQL Server)
  • Ensure you have the database vendors jdbc driver (jar file) downloaded and placed in the pdi-home-dir/lib directory
  • Ensure that the JNDI key-value pairs are entered correctly in the jdbc.properties file found in the pdi-home-dir/simple-jndi directory
  • You did remember to restart Spoon between entering the JNDI configuration and attempting to configure a database connection within a data project?
  • Is the database instance being connected to listening on a non-default port? See the relevent section in Part 1.

JNDI Name consistency is the key

Recently I was refactoring the JNDI names in my PDI jdbc.properties file and when I went to configure the connection in Spoon, the test resulted in an error illustrated below.
05-jdni-name-error-message

I viewed the entries in the jdbc.properties file...


EXTwrk/type=javax.sql.DataSource
EXTwrk/driver=org.postgresql.Driver
EXTwrk/url=jdbc:postgresql://localhost:/myDBname
EXwrk/user=myUserName
EXTwrk/password=mySecurePassword

It didn't take long to find the issue. Notice the JNDI connection name for the user variable? Misspelt. Doh!! And that was it. Fixed the user key from EXwrk to EXTwrk and all was good. From experimentation, you can find that the error sentence Required subelement indicates the line that the JNDI connection is not working, in this example, the JNDI user key.

This ends my three-part series on JNDI configuration in Pentaho. I hope this will help someone in the future. And remember, having a centralised configuration strategy certainly helps with maintainability of your data projects.

If you have any feedback regarding this JNDI series, please leave a message on my discourse forum.

PDI JNDI Troubleshooting
Share this