I'm connecting a Spring Integration 5.0.5 web application to a PostgreSql 10 instance using an Apache Commons DBCP2 BasicDataSource bean, but the framework isn't finding my stored procedures because it tries to resolve their names against the public schema, instead of the right one.
I'm not sure where the problem is located, I tried to follow the code within the debugger, but didn't came very far.
The right place to configure those are the catalogName and schemaName bean properties on the corresponding SimpleJdbcCall instance, translating to the underlying CallMetaDataContext. It's a nuisance to have to repeat those there but it seems that's necessary in your scenario.
Is there another place / any higher point in the control flow where they can be specified? I'm using Spring Integration endpoints, so writing no code but configuring beans from the XML file and I don't have direct access to any SimpleJdbcCall instance (unless I write custom service activators, but I'd like to avoid that if possible).