首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >heroku上的PSQLException

heroku上的PSQLException
EN

Stack Overflow用户
提问于 2017-12-09 05:25:24
回答 1查看 136关注 0票数 0

我使用java,apache-cayenne和postgreSQL。

我的应用程序在桌面上运行得很好,但在Heroku上运行时出现错误:

代码语言:javascript
运行
复制
org.postgresql.util.PSQLException: Bad value for type timestamp/date/time: 
{1}

还有一些警告:

代码语言:javascript
运行
复制
INFO org.apache.cayenne.log.JdbcEventLogger - --- transaction started.
WARN org.apache.cayenne.access.types.SerializableTypeFactory - Haven't found suitable ExtendedType for class 'java.time.LocalDate'. Most likely you need to define a custom ExtendedType.
WARN org.apache.cayenne.access.types.SerializableTypeFactory - SerializableType will be used for type conversion.
INFO org.apache.cayenne.log.JdbcEventLogger - --- transaction started.
INFO org.apache.cayenne.log.JdbcEventLogger - SELECT t0.DATE, t0.ROOM, t0.TIME, t0.TYPE, t0.PROFESSOR_ID, t0.SUBJECT_ID, t0.LESSON_ID FROM Lesson t0 JOIN Subject t1 ON (t0.SUBJECT_ID = t1.SUBJECT_ID) WHERE (t0.DATE = ?) AND (t1.USER_ID = ?) [bind: 1->DATE:2017-12-08, 2->USER_ID:81627965]

下面是我的xml:

代码语言:javascript
运行
复制
<db-entity name="Lesson">
    <db-attribute name="DATE" type="DATE"/>
    <db-attribute name="LESSON_ID" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
    <db-attribute name="PROFESSOR_ID" type="INTEGER"/>
    <db-attribute name="ROOM" type="VARCHAR" length="50"/>
    <db-attribute name="SUBJECT_ID" type="INTEGER"/>
    <db-attribute name="TIME" type="TIME"/>
    <db-attribute name="TYPE" type="INTEGER"/>
</db-entity>
<obj-entity name="Lesson" className="com.intetics.organizerbot.entities.Lesson" dbEntityName="Lesson">
    <obj-attribute name="date" type="java.time.LocalDate" db-attribute-path="DATE"/>
    <obj-attribute name="room" type="java.lang.String" db-attribute-path="ROOM"/>
    <obj-attribute name="time" type="java.time.LocalTime" db-attribute-path="TIME"/>
    <obj-attribute name="type" type="int" db-attribute-path="TYPE"/>
</obj-entity>

我在桌面和Heroku上使用相同的Heroku Postgres数据库。

似乎有一些问题与LocalDate类有关。但我不知道为什么在我的电脑上一切正常,而在heroku上却有问题。

我还尝试部署jar,它工作得很好,但仍然不能工作。

你知道为什么会发生这种情况吗?我该如何修复它?

类似的问题被问及生产服务器Bad value for type timestamp on production server,但我似乎不能将它的答案应用于Heroku。

EN

回答 1

Stack Overflow用户

发布于 2017-12-20 02:38:14

为了使用来自Cayenne的Java8 java.time.*类,您需要确保将cayenne-java8模块包含到您的项目中,有关详细信息,请参阅此docs。没有它,Cayenne就不知道如何处理这些类。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47722374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档