You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Valentin Kulichenko (JIRA)" <ji...@apache.org> on 2015/11/19 21:59:10 UTC

[jira] [Created] (IGNITE-1956) Portable object requires to have a class to get Enum field value

Valentin Kulichenko created IGNITE-1956:
-------------------------------------------

             Summary: Portable object requires to have a class to get Enum field value
                 Key: IGNITE-1956
                 URL: https://issues.apache.org/jira/browse/IGNITE-1956
             Project: Ignite
          Issue Type: Bug
          Components: general
            Reporter: Valentin Kulichenko
             Fix For: 1.6


{{PortableObject.field()}} method implementation attempts to resolve the class if the field type is Enum. This is wrong, because this method should work on server side without classes on classpath. Also this breaks the {{toString()}} method in this case.

In addition, .NET always writes {{-1}} as a type ID for any enum, so on Java side it is resolved into {{java.lang.Object}}. As a result, {{field()}} and {{toString()} method fail with this exception:
{code}
Caused by: org.apache.ignite.internal.portable.api.PortableException: Class does not represent enum type: java.lang.Object
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)