在GeoFence启动时,它声明无法找到关系geofence.gf_gfuser
。
我的架构名称是地理位置。
我正在使用 SQL视图而不是表格。 This post指出Hibernate从视图中读取不会有问题。那么为什么会出现这种错误?
任何见解都将受到赞赏。
堆栈跟踪:
Caused by: org.postgresql.util.PSQLException: ERROR: relation "geofence.gf_gfuser" does not exist
其他配置
geofence-datasource-ovr.properties
geofenceVendorAdapter.databasePlatform=org.hibernatespatial.postgis.PostgisDialect
geofenceDataSource.driverClassName=org.postgresql.Driver
geofenceDataSource.url=jdbc:postgresql://<host>:<port>/<db>
geofenceDataSource.username=<username>
geofenceDataSource.password=<password>
geofenceEntityManagerFactory.jpaPropertyMap[hibernate.default_schema]=<schema>
geofenceEntityManagerFactory.jpaPropertyMap[hibernate.hbm2ddl.auto]=none
geofenceEntityManagerFactory.jpaPropertyMap[javax.persistence.validation.mode]=none
geofenceEntityManagerFactory.jpaPropertyMap[hibernate.validator.apply_to_ddl]=false
geofenceEntityManagerFactory.jpaPropertyMap[hibernate.validator.autoregister_listeners]=false
答案 0 :(得分:0)
我最终使用Foreign Data Wrapper
PostgreSQL插件连接到视图。
由于FDW连接到数据库并引用表/视图并创建外表,因此将GeoFence链接到那些表而不是使用表将其欺骗到的表。
注意:我的外部表和视图是在单独的模式中,但在同一个数据库中。