Advertisement
Guest User

Untitled

a guest
Aug 28th, 2014
217
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.39 KB | None | 0 0
  1. @Entity
  2. @Table(name = "languages")
  3. public class Language {
  4. @Getter
  5. @Setter
  6. @NotNull
  7. @Column(name = "code")
  8. private String code;
  9.  
  10. @Getter
  11. @Setter
  12. @ManyToOne(cascade = CascadeType.ALL)
  13. @JoinColumn(name = "translation_id")
  14. private Translation translations = new Translation();
  15. }
  16.  
  17. @Entity
  18. @Table(name = "translations")
  19. public class Translation {
  20. @ElementCollection
  21. @MapKeyColumn(name="locale")
  22. @Column(name="description")
  23. @CollectionTable(name="translations_values")
  24. private Map<String, String> strings = new HashMap<>();
  25.  
  26. public Translation() {
  27. }
  28.  
  29. public Translation(Map<String, String> map) {
  30. this.strings = map;
  31. }
  32.  
  33. public void setString(String locale, String text) {
  34. strings.put(locale, text);
  35. }
  36.  
  37. public String getString(String locale) {
  38. String returnValue = strings.get(locale);
  39. return (returnValue != null ? returnValue : null);
  40. }
  41. }
  42.  
  43. select o from Language o join o.translations t join t.strings s where key(s) = 'it' and value(s) = 'Italiano'
  44.  
  45. select o from Language o join o.translations t join t.strings s where key(s) = 'it' and value(s) = 'Italiano' order by value(s)
  46.  
  47. Local Exception Stack:
  48. Exception [EclipseLink-6168] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.QueryException
  49. Exception Description: Query failed to prepare, unexpected error occurred: [java.lang.NullPointerException].
  50. Internal Exception: java.lang.NullPointerException
  51. Query: ReadAllQuery(referenceClass=Language jpql="select o from Language o join o.translations t join t.strings s where key(s) = 'it' and value(s) = 'Italiano' order by value(s)")
  52. at org.eclipse.persistence.exceptions.QueryException.prepareFailed(QueryException.java:1589)
  53. at org.eclipse.persistence.queries.DatabaseQuery.checkPrepare(DatabaseQuery.java:680)
  54. at org.eclipse.persistence.queries.ObjectLevelReadQuery.checkPrepare(ObjectLevelReadQuery.java:901)
  55. at org.eclipse.persistence.queries.DatabaseQuery.checkPrepare(DatabaseQuery.java:613)
  56. at org.eclipse.persistence.internal.jpa.EJBQueryImpl.buildEJBQLDatabaseQuery(EJBQueryImpl.java:194)
  57. at org.eclipse.persistence.internal.jpa.EJBQueryImpl.buildEJBQLDatabaseQuery(EJBQueryImpl.java:116)
  58. at org.eclipse.persistence.internal.jpa.EJBQueryImpl.<init>(EJBQueryImpl.java:102)
  59. at org.eclipse.persistence.internal.jpa.EJBQueryImpl.<init>(EJBQueryImpl.java:86)
  60. at org.eclipse.persistence.internal.jpa.EntityManagerImpl.createQuery(EntityManagerImpl.java:1603)
  61. Caused by: java.lang.NullPointerException
  62. at org.eclipse.persistence.mappings.ForeignReferenceMapping.getOrderByNormalizedExpressions(ForeignReferenceMapping.java:2456)
  63. at org.eclipse.persistence.internal.expressions.SQLSelectStatement.normalizeOrderBy(SQLSelectStatement.java:1614)
  64. at org.eclipse.persistence.internal.expressions.SQLSelectStatement.normalize(SQLSelectStatement.java:1403)
  65. at org.eclipse.persistence.internal.queries.ExpressionQueryMechanism.buildNormalSelectStatement(ExpressionQueryMechanism.java:549)
  66. at org.eclipse.persistence.internal.queries.ExpressionQueryMechanism.prepareSelectAllRows(ExpressionQueryMechanism.java:1720)
  67. at org.eclipse.persistence.queries.ReadAllQuery.prepareSelectAllRows(ReadAllQuery.java:813)
  68. at org.eclipse.persistence.queries.ReadAllQuery.prepare(ReadAllQuery.java:744)
  69. at org.eclipse.persistence.queries.DatabaseQuery.checkPrepare(DatabaseQuery.java:661)
  70. ... 9 more
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement