AnsweredAssumed Answered

Connect to Filemaker Database using JDBC, Python, and JayDeBeApi

Question asked by nicolewells.n on Mar 15, 2018
Latest reply on Mar 16, 2018 by greglane

Hello Folk's


I'm trying to write an AWS Lambda Python Package that will connect to a FileMaker database over JDBC. To test, I've launched an EC2 instance with the Lambda Linux AMI, and created a virtualenv (/venv) that I'm testing in. I've uploaded the fmjdbc.jar to the instance using WinSCP to /venv/lib/fmjdbc.jar. The code uses JayDeBeApi, following the usage example here:


My code so far is the following:


import jaydebeapi as jdb

= 'com.filemaker.jdbc.Driver'
= 'jdbc:filemaker://url:port;database'

= '/home/ec2-user/lambda-test-project/venv/lib/fmjdbc.jar'
print jar

= jdb.connect(driverclass,[jdbcURL,'username','password'],jar)


Which gives me the error:

Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/ec2-user/lambda-test-project/venv/local/lib/python2.7/site-package                                               s/jaydebeapi/", line 359, in connect jconn = _jdbc_connect(jclassname, jars, libs, *driver_args) File "/home/ec2-user/lambda-test-project/venv/local/lib/python2.7/site-package                                               s/jaydebeapi/", line 183, in _jdbc_connect_jpype return*driver_args) jpype._jexception.SQLExceptionPyRaisable: java.sql.SQLException: No suitable driver found for jdbc:filemaker://<MY URL STUFF IS HERE>

How can I get the jdbc driver to be read by Python's virtual environment? I'd like to have this code work in a AWS Certified Lambda package eventually, so I'm hoping there's a solution that can be integrated to the Python code that will work repeatedly on newly created servers.

Help me on This