Java Hibernate Spatial 4错误未知SQL类型,用于插入org.postgis.PGgeometry

Java Hibernate Spatial 4错误未知SQL类型,用于插入org.postgis.PGgeometry,java,spring,postgresql,hibernate,postgis,Java,Spring,Postgresql,Hibernate,Postgis,当我试图在安装了PostGis扩展的情况下将hibernate空间点存储到o PostgreSQL db时,我遇到了一个问题 本质上,当我尝试将记录插入表时,会引发org.springframework.dao.InvalidDataAccessResourceUsageException,说明org.postgis.PGgeometry无法映射到SQL类型 操作系统是Windows 10 64位。 本地主机上的PostgreSQL server数据库版本为9.6 64位 PostGis版本为2

当我试图在安装了PostGis扩展的情况下将hibernate空间点存储到o PostgreSQL db时,我遇到了一个问题

本质上,当我尝试将记录插入表时,会引发org.springframework.dao.InvalidDataAccessResourceUsageException,说明org.postgis.PGgeometry无法映射到SQL类型

操作系统是Windows 10 64位。 本地主机上的PostgreSQL server数据库版本为9.6 64位 PostGis版本为2.3.2 64位 Tomcat版本是8.5.8 JVM版本是1.8.0_112-b15 Spring版本是4.1.4.0版本 Aspectj版本是1.8.4 Hibernate版本是4.3.5.Final PostGis JDBC驱动程序版本为1.5.2 hibernate方言已设置为org.hibernate.spatial.dialen.postgis.postgisdialent Tomcat上的数据源配置如下:

<Resource name="jdbc/safetyAroundSchool" auth="Container" type="javax.sql.DataSource" maxActive="2" maxIdle="2" maxWait="10000" username="biotope-xxxx" password="xxxxxxxxxx" driverClassName="org.postgis.DriverWrapper" url="jdbc:postgresql_postGIS://localhost:5432/biotope-ssp"/>
表格是使用列的正确几何图形类型创建的。这是创建脚本:

CREATE TABLE public.issue
(
    id bigint NOT NULL,
    date timestamp without time zone,
    location geometry,
    longdesc character varying(255) COLLATE pg_catalog."default",
    shortdesc character varying(255) COLLATE pg_catalog."default",
    type bigint,
    userid bigint,
    CONSTRAINT issue_pkey PRIMARY KEY (id)
);
这是我在尝试插入新记录时收到的错误

18:14:11878警告SqlExceptionHelper:144-SQL错误:0,SQLState:07006 18:14:11883错误SqlExceptionHelper:146-根据tipo《org.postgis.PGgeometry》的《意大利日报》不可能识别出tipo SQL数据。使用«setObject()»根据valore的要求制定具体的政策。 18:14:11898错误WebApiExceptionProcessor:28-截获内部服务器错误 org.springframework.dao.InvalidDataAccessResourceUsageException:无法插入:[it.holonix.safetyAroundSchoold.entity.Issue];SQL[在问题中插入(日期、位置、longDesc、shortDesc、类型、用户id、id)值(?,,,,,,,,,,,?)];嵌套异常为org.hibernate.exception.sqlgrammareexception:无法插入:[it.holonix.safetyAroundSchoold.entity.Issue] 位于org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateAccessException(HibernateJpaDialect.java:231) 在org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateException如果可能(HibernateJpaDialect.java:214) 位于org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:521) 位于org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:757) 位于org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:726) 位于org.springframework.transaction.interceptor.TransactionSpectSupport.commitTransactionAfterReturning(TransactionSpectSupport.java:515) 位于org.springframework.transaction.interceptor.TransactionSpectSupport.invokeWithinTransaction(TransactionSpectSupport.java:291) 位于org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) 在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:179)上 位于org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:653) 在it.holonix.safetyAroundSchoold.controller.IssueCtrl$$EnhancerBySpringCGLIB$$f6840c31.insertIssue() 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处 位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中 位于java.lang.reflect.Method.invoke(Method.java:498) 位于org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221) 位于org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137) 位于org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110) 位于org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:777) 位于org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:706) 位于org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85) 位于org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:943) 位于org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:877) 位于org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966) 位于org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:868) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:648) 位于org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230) 位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165) 在it.holonix.webapi.auth.AuthRequestWrapperFilter.doFilter(AuthRequestWrapperFilter.java:23) 位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192) 位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165) 位于it.holonix.webapi.util.CorsFilter.doFilterInternal(CorsFilter.java:85) 位于org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) 位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192) 位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165) 位于org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 在org.apache.catalina.c
@Column(columnDefinition = "Geometry", nullable = true)
@Type(type="org.hibernate.spatial.GeometryType")
private Point location;
CREATE TABLE public.issue
(
    id bigint NOT NULL,
    date timestamp without time zone,
    location geometry,
    longdesc character varying(255) COLLATE pg_catalog."default",
    shortdesc character varying(255) COLLATE pg_catalog."default",
    type bigint,
    userid bigint,
    CONSTRAINT issue_pkey PRIMARY KEY (id)
);