Hi Team,
I am trying to connect to Azure Synapse database from local client machine through java code then it is working fine, but when I deploy the same java code in Apigee cloud then getting issues from Apigee cloud.
When I print error through e.getLocalizedMessage() to Apigee variable then it is printing " No suitable driver found for jdbc:sqlserver://{{databasename}}......" and for e.getSQLState() = 08001
Actually, 08001 says that there is some connection issue, however, the Apigee cloud ip addresses are whitelisted in the database.
And also, I have added database jar mssql-jdbc-9.4.0.jre11 under resources/java.
Could you please suggest what is the exact issue here?
Thanks
Venkat
Apigee is not a general purpose application server. I would suggest you do not try to load the mssql jdbc driver to Apigee. I don't know why specifically that JDBC driver is not successfully loading, but...I'd guess there is a hidden permissions error at some point. Not showing the error message is a poor user experience for you, and I apologize for that. But, the bug here is about the error message. It's highly unlikely Apigee will support loading the JDBC driver in a Java callout. It's not a good approach in general.
Apigee is an HTTP proxy. Better to connect to upstream systems over HTTP. Does Synapse have a REST API?
or... if that doesn't work, then connect Apigee to Synapse via an extra hop, through something like an ExternalCallout to a general-purpose app that you build, which connects to Synapse via mssql jdbc.