[
https://issues.apache.org/jira/browse/SIS-441?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Martin Desruisseaux updated SIS-441:
------------------------------------
Issue Type: Bug (was: Task)
> UnconvertibleObjectException when reading code list value from PostgreSQL
> -------------------------------------------------------------------------
>
> Key: SIS-441
> URL: https://issues.apache.org/jira/browse/SIS-441
> Project: Spatial Information Systems
> Issue Type: Bug
> Components: Metadata
> Affects Versions: 0.8
> Reporter: Martin Desruisseaux
> Assignee: Martin Desruisseaux
> Priority: Major
> Fix For: 1.0
>
>
> When metadata are read from database using
> {{org.apache.sis.sql.MetadataSource}}, an attempt to get the {{CodeList}}
> value of a metadata entry produce the following error:
> {noformat}
> org.apache.sis.util.collection.BackingStoreException: Database error while
> creating a ‘Role’ object for the “IOGP” identifier.
> at org.apache.sis.metadata.sql.Dispatcher.invoke(Dispatcher.java:161)
> at org.apache.sis.metadata.sql.$Proxy233.getRole(Unknown Source)
> (…snip…)
> Caused by: org.apache.sis.metadata.sql.MetadataStoreException: Expected an
> instance of ‘Role’ for the “role” property, but got an instance of ‘PGobject’.
> at
> org.apache.sis.metadata.sql.MetadataSource.readColumn(MetadataSource.java:990)
> at org.apache.sis.metadata.sql.Dispatcher.fetchValue(Dispatcher.java:227)
> at org.apache.sis.metadata.sql.Dispatcher.invoke(Dispatcher.java:159)
> Caused by: org.apache.sis.util.UnconvertibleObjectException: Can not convert
> from type ‘PGobject’ to type ‘Role’.
> at
> org.apache.sis.internal.converter.ConverterRegistry.find(ConverterRegistry.java:528)
> (…snip…)
> {noformat}
> This happen only with PostgreSQL database, because we store metadata as
> `VARCHAR` on Derby. The workaround is to read {{CodeList}} value using
> {{ResultSet.getString(int)}} instead than {{ResultSet.getObject(…)}}, so the
> {{PGobject}} is converted to a {{String}} that we can later parse as a
> {{CodeList}}.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)