You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Anton Vinogradov (JIRA)" <ji...@apache.org> on 2016/06/03 15:55:59 UTC
[jira] [Comment Edited] (IGNITE-3235) Failed to initialize
primitive boolean cache property of superclass
[ https://issues.apache.org/jira/browse/IGNITE-3235?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15314220#comment-15314220 ]
Anton Vinogradov edited comment on IGNITE-3235 at 6/3/16 3:55 PM:
------------------------------------------------------------------
Sergey,
Seems that every field defined at superclass cause same issue.
Did you check that Boolean works?
was (Author: avinogradov):
Sergey,
Did you check that Boolean works?
> Failed to initialize primitive boolean cache property of superclass
> -------------------------------------------------------------------
>
> Key: IGNITE-3235
> URL: https://issues.apache.org/jira/browse/IGNITE-3235
> Project: Ignite
> Issue Type: Bug
> Components: cache
> Affects Versions: 1.5.0.final
> Reporter: Sergey Lemekhov
> Assignee: Anton Vinogradov
> Priority: Minor
> Fix For: 1.7
>
>
> When a superclass of a cache class contains a primitive boolean field marked with {{@QuerySqlField}} annotation the cache initialization fails with an exception:
> {{org.apache.ignite.IgniteCheckedException: Failed to initialize property '<propertyName>' for key class '<key class>' and value class 'value class'. Make sure that one of these classes contains respective getter method or field.}}
> For example:
> {code}
> public class Base {
> @QuerySqlField
> private boolean flag;
> public boolean isFlag() {
> return flag;
> }
> public void setFlag(boolean flag) {
> this.flag = flag;
> }
> }
> public class Derived extends Base {
> private String field;
> public String getField() {
> return field;
> }
> public void setField(String field) {
> this.field = field;
> }
> }
> {code}
> This related to method {{org.apache.ignite.internal.processors.query.GridQueryProcessor#buildClassProperty(boolean, java.lang.Class<?>, java.lang.String, java.lang.Class<?>, java.util.Map<java.lang.String,java.lang.String>, org.apache.ignite.internal.processors.cache.CacheObjectContext)}}.
> Method expects that all fields accessors start with "get" but for primitive boolean fields usually the "is" prefix is used.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)