That's not new enough; per
https://issues.apache.org/jira/browse/OPENJPA-417?page=com.atlassian.jira.plugin.ext.subversion:subversion-commits-tabpanel,
it needs to be 592917 or newer.

-Patrick

On Nov 14, 2007 9:57 AM, Tedman Leung <[EMAIL PROTECTED]> wrote:
> I've tried @PersistentCollection with a recent
> openjpa-1.1.0-SNAPSHOT-r420667:570593 and it doesn't appear to work with
> Integers.
>
>
> ---- Declaration ----
>
>    @PersistentCollection(fetch=FetchType.EAGER)
>    @ContainerTable(name="ItemItemCategory", [EMAIL PROTECTED](name="itemId"))
>    @Column(name="itemCategoryId")
>    private HashSet<Integer> itemCategoryIds = new HashSet<Integer>();
>
> ---- Stack Trace ----
> (The HashSet was empty, nothing was put in there yet.)
>
> Caused by: <openjpa-1.1.0-SNAPSHOT-r420667:570593 nonfatal general error> 
> org.apache.openjpa.persistence.PersistenceException: Incorrect integer value: 
> 'B,C-' for column
> 'itemCategoryId' at row 1 {prepstmnt 31918258 INSERT INTO ItemItemCategory 
> (itemId, itemCategoryId) VALUES (?, ?) [params=(int) 1, (InputStream)
> [EMAIL PROTECTED] [code=1366, state=HY000]
> FailedObject: [EMAIL PROTECTED]
>         at 
> org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:3869)
>         at 
> org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:97)
>         at 
> org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:67)
>         at 
> org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flushInternal(PreparedStatementManagerImpl.java:106)
>         at 
> org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flush(PreparedStatementManagerImpl.java:71)
>         at 
> org.apache.openjpa.jdbc.kernel.ConstraintUpdateManager.flushGraph(ConstraintUpdateManager.java:350)
>         at 
> org.apache.openjpa.jdbc.kernel.ConstraintUpdateManager.flush(ConstraintUpdateManager.java:96)
>         at 
> org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:89)
>         at 
> org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:72)
>         at 
> org.apache.openjpa.jdbc.kernel.JDBCStoreManager.flush(JDBCStoreManager.java:514)
>         at 
> org.apache.openjpa.kernel.DelegatingStoreManager.flush(DelegatingStoreManager.java:130)
>         ... 38 more
> Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: Incorrect 
> integer value: 'B,C-' for column 'itemCategoryId' at row 1 {prepstmnt 
> 31918258 INSERT INTO
> ItemItemCategory (itemId, itemCategoryId) VALUES (?, ?) [params=(int) 1, 
> (InputStream) [EMAIL PROTECTED] [code=1366, state=HY000]
>         at 
> org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:192)
>         at 
> org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$800(LoggingConnectionDecorator.java:57)
>         at 
> org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeUpdate(LoggingConnectionDecorator.java:858)
>         at 
> org.apache.openjpa.lib.jdbc.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:269)
>         at 
> org.apache.openjpa.jdbc.kernel.JDBCStoreManager$CancelPreparedStatement.executeUpdate(JDBCStoreManager.java:1363)
>         at 
> org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flushInternal(PreparedStatementManagerImpl.java:95)
>         ... 45 more
>
>
>
>
>
> > Hi,
> >
> > You should use the OpenJPA @PersistentCollection annotation.
> >
> > Note that this only works in the trunk (1.1.0-SNAPSHOT) builds, as of
> > maybe 3 or 4 weeks ago.
> >
> > -Patrick
> >
> > On Nov 14, 2007 7:43 AM, Nicolas Modrzyk <[EMAIL PROTECTED]> wrote:
> > > Hello hello,
> > >
> > > Could someone confirm the proper way to persistent a collection/set of 
> > > String:
> > >
> > > @OneToMany
> > > private Collection<String> set;
> > >
> > > Whatever I am trying to use is resulting in the exception below, where
> > > I am told to choose a different persistence strategy.
> > >
> > >     [junit] The type of field "...set" isn't supported by declared
> > > persistence strategy "OneToMany".  Please choose a different strategy.
> > >     [junit] <openjpa-1.0.0-r420667:568756 fatal user error>
> > > org.apache.openjpa.persistence.ArgumentException: The type of field
> > > "...set" isn't supported by declared persistence strategy "OneToMany".
> > >  Please choose a different strategy.
> > >     [junit]     at
> > > org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parseOneToMany(AnnotationPersistenceMetaDataParser.java:1283)
> > >     [junit]     at
> > > org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parseMemberAnnotations(AnnotationPersistenceMetaDataParser.java:944)
> > >     [junit]     at
> > > org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parseClassAnnotations(AnnotationPersistenceMetaDataParser.java:599)
> > >     [junit]     at
> > > org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parse(AnnotationPersistenceMetaDataParser.java:349)
> > >
> > > Thank you in advance !
> > >
> > > Niko,
> > >
> >
> >
> >
> > --
> > Patrick Linskey
> > 202 669 5907
>
> --
>                                                            Ted Leung
>                                                            [EMAIL PROTECTED]
>
> You know things are getting a little fishy when you're commenting out
> comments.
>



-- 
Patrick Linskey
202 669 5907

Reply via email to