Hi Ilya,
I tested it with nightly build of 17/09/2018(ver.
2.7.0.20180917#19700101-sha1:DEV), but getting the same exception. Getting
the following exception  while trying to fetch the data from cache using
ScanQuery from Java Thin client,  but SqlQuery giving the correct result.
ScanQuery excepting cached class's description in the server class path.

The definition of the cached class is-

public class IgniteValueClass implements Binarylizable, Serializable {
        private static final long serialVersionUID = 502832443677779719L;
        @QuerySqlField(index = true)
        String id;
        @QuerySqlField(index = true)
        String val1;

        @QuerySqlField
        String val2;

        public String getId() {
                return id;
        }

        public void setId(String id) {
                this.id = id;
        }

        public String getVal1() {
                return val1;
        }

        public void setVal1(String val1) {
                this.val1 = val1;
        }

        public String getVal2() {
                return val2;
        }

        public void setVal2(String val2) {
                this.val2 = val2;
        }

        @Override
        public boolean equals(Object obj) {
                if (obj == null)
                        return false;
                IgniteValueClass newObj = (IgniteValueClass) obj;
                if (newObj == this)
                        return true;
                return check(id, newObj.id) && check(val1, newObj.val1) && 
check(val2,
newObj.val2);
        }

        private boolean check(String v1, String v2) {
                if (v1 == v2 || (v1 != null && v1.equals(v2)))
                        return true;
                return false;
        }

        @Override
        public void writeBinary(BinaryWriter writer) throws 
BinaryObjectException {
                writer.writeString("id", id);
                writer.writeString("val1", val1);
                writer.writeString("val2", val2);

        }

        @Override
        public void readBinary(BinaryReader reader) throws 
BinaryObjectException {
                id = reader.readString("id");
                val1 = reader.readString("val1");
                val2 = reader.readString("val2");

        }

        @Override
        public String toString() {
                return "ID:" + id + " Val1:" + val1 + " Val2:" + val2;
        }
}

The server is throwing this exception:

[13:05:12,104][SEVERE][client-connector-#75][ClientListenerNioListener]
Failed to process client request
[req=o.a.i.i.processors.platform.client.cache.ClientCacheScanQueryRequest@490c852e]
class org.apache.ignite.binary.BinaryInvalidTypeException:
xxx.imdg.ignite.test.IgniteValueClass
        at
org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:707)
        at
org.apache.ignite.internal.binary.BinaryReaderExImpl.deserialize0(BinaryReaderExImpl.java:1757)
        at
org.apache.ignite.internal.binary.BinaryReaderExImpl.deserialize(BinaryReaderExImpl.java:1716)
        at
org.apache.ignite.internal.binary.BinaryObjectImpl.deserializeValue(BinaryObjectImpl.java:798)
        at
org.apache.ignite.internal.binary.BinaryObjectImpl.value(BinaryObjectImpl.java:143)
        at
org.apache.ignite.internal.processors.cache.CacheObjectUtils.unwrapBinary(CacheObjectUtils.java:177)
        at
org.apache.ignite.internal.processors.cache.CacheObjectUtils.unwrapBinaryIfNeeded(CacheObjectUtils.java:39)
        at
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$ScanQueryIterator.advance(GridCacheQueryManager.java:3082)
        at
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$ScanQueryIterator.onHasNext(GridCacheQueryManager.java:2984)
        at
org.apache.ignite.internal.util.GridCloseableIteratorAdapter.hasNextX(GridCloseableIteratorAdapter.java:53)
        at
org.apache.ignite.internal.util.lang.GridIteratorAdapter.hasNext(GridIteratorAdapter.java:45)
        at
org.apache.ignite.internal.processors.platform.client.cache.ClientCacheQueryCursor.writePage(ClientCacheQueryCursor.java:77)
        at
org.apache.ignite.internal.processors.platform.client.cache.ClientCacheQueryResponse.encode(ClientCacheQueryResponse.java:50)
        at
org.apache.ignite.internal.processors.platform.client.ClientMessageParser.encode(ClientMessageParser.java:387)
        at
org.apache.ignite.internal.processors.odbc.ClientListenerNioListener.onMessage(ClientListenerNioListener.java:172)
        at
org.apache.ignite.internal.processors.odbc.ClientListenerNioListener.onMessage(ClientListenerNioListener.java:45)
        at
org.apache.ignite.internal.util.nio.GridNioFilterChain$TailFilter.onMessageReceived(GridNioFilterChain.java:279)
        at
org.apache.ignite.internal.util.nio.GridNioFilterAdapter.proceedMessageReceived(GridNioFilterAdapter.java:109)
        at
org.apache.ignite.internal.util.nio.GridNioAsyncNotifyFilter$3.body(GridNioAsyncNotifyFilter.java:97)
        at
org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
        at
org.apache.ignite.internal.util.worker.GridWorkerPool$1.run(GridWorkerPool.java:70)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException:
xxx.imdg.ignite.test.IgniteValueClass
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Unknown Source)
        at
org.apache.ignite.internal.util.IgniteUtils.forName(IgniteUtils.java:8681)
        at
org.apache.ignite.internal.MarshallerContextImpl.getClass(MarshallerContextImpl.java:349)
        at
org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:698)
        ... 23 more



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Reply via email to