0

I just tried to deployed a play 1.2.4 app to heroku. The App works great locally, but on heroku i just got some strange errors, as soon as i try to save some data.

2012-07-02T21:26:04+00:00 app[web.1]: Internal Server Error (500) for request POST /players/save
2012-07-02T21:26:04+00:00 app[web.1]: 
2012-07-02T21:26:04+00:00 app[web.1]: Oops: UnexpectedException
2012-07-02T21:26:04+00:00 app[web.1]: An unexpected error occured caused by exception UnexpectedException: Unexpected Error
2012-07-02T21:26:04+00:00 app[web.1]: 
2012-07-02T21:26:04+00:00 app[web.1]: play.exceptions.UnexpectedException: Unexpected Error
2012-07-02T21:26:04+00:00 app[web.1]:   at play.data.validation.ValidationPlugin.beforeActionInvocation(ValidationPlugin.java:59)
2012-07-02T21:26:04+00:00 app[web.1]:   at play.plugins.PluginCollection.beforeActionInvocation(PluginCollection.java:594)
2012-07-02T21:26:04+00:00 app[web.1]:   at play.mvc.ActionInvoker.invoke(ActionInvoker.java:134)
2012-07-02T21:26:04+00:00 app[web.1]:   at Invocation.HTTP Request(Play!)
2012-07-02T21:26:04+00:00 app[web.1]: Caused by: play.exceptions.UnexpectedException: Unexpected Error
2012-07-02T21:26:04+00:00 app[web.1]:   at play.db.jpa.JPAPlugin.bind(JPAPlugin.java:84)
2012-07-02T21:26:04+00:00 app[web.1]:   at play.plugins.PluginCollection.bind(PluginCollection.java:534)
2012-07-02T21:26:04+00:00 app[web.1]:   at play.data.binding.Binder.bind(Binder.java:111)
2012-07-02T21:26:04+00:00 app[web.1]:   at play.mvc.ActionInvoker.getActionMethodArgs(ActionInvoker.java:642)
2012-07-02T21:26:04+00:00 app[web.1]:   at play.data.validation.ValidationPlugin$Validator.validateAction(ValidationPlugin.java:96)
2012-07-02T21:26:04+00:00 app[web.1]:   at play.data.validation.ValidationPlugin.beforeActionInvocation(ValidationPlugin.java:51)
2012-07-02T21:26:04+00:00 app[web.1]:   ... 3 more
2012-07-02T21:26:04+00:00 app[web.1]: Caused by: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute query
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1214)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1147)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.ejb.QueryImpl.getSingleResult(QueryImpl.java:307)
2012-07-02T21:26:04+00:00 app[web.1]:   at play.db.jpa.JPAPlugin.bind(JPAPlugin.java:79)
2012-07-02T21:26:04+00:00 app[web.1]:   ... 8 more
2012-07-02T21:26:04+00:00 app[web.1]: Caused by: org.hibernate.exception.SQLGrammarException: could not execute query
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:92)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.loader.Loader.doList(Loader.java:2536)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2276)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.loader.Loader.list(Loader.java:2271)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:452)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:363)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:196)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1268)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.impl.QueryImpl.list(QueryImpl.java:102)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.ejb.QueryImpl.getSingleResult(QueryImpl.java:274)
2012-07-02T21:26:04+00:00 app[web.1]:   ... 9 more
2012-07-02T21:26:04+00:00 app[web.1]: Caused by: org.postgresql.util.PSQLException: ERROR: operator does not exist: bigint = bytea
2012-07-02T21:26:04+00:00 app[web.1]:   Hint: No operator matches the given name and argument type(s). You might need to add explicit type casts.
2012-07-02T21:26:04+00:00 app[web.1]:   Position: 130
2012-07-02T21:26:04+00:00 app[web.1]:   at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2102)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:500)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:273)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:208)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.loader.Loader.getResultSet(Loader.java:1953)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.loader.Loader.doQuery(Loader.java:802)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:274)
2012-07-02T21:26:04+00:00 app[web.1]:   at org.hibernate.loader.Loader.doList(Loader.java:2533)
2012-07-02T21:26:04+00:00 app[web.1]:   ... 17 more

The App is public accessable here: https://github.com/phaus/kickster

I also tried to use db evolutions first. It did not work neither. I found several pages for

Caused by: org.postgresql.util.PSQLException: ERROR: operator does not exist: bigint = bytea

but i looks, like the problem is within the Play Framework?

4

1 回答 1

1

这是 Play 1.2.5 中已修复的 Play Framework 错误。

于 2012-07-03T14:00:30.077 回答