You should deploy not only the Person class, but also the filter class. You can, for example, make a jar with required classes and put it to the server classpath.
пн, 18 окт. 2021 г. в 23:53, Prasad Kommoju <pkomm...@futurewei.com>: > Hi Alex, > > > > Thanks for the clarification. I am running it on a loptop, using the > default configuration file so there is only one node and the client code > and the server both run on the same laptop. Could you suggest how to deploy > the Person class to other node (in production there will be) and in the > laptop case? > > > > > > --------------------- > > Regards, > > Prasad Kommoju > > > > *From:* Alex Plehanov <plehanov.a...@gmail.com> > *Sent:* Monday, October 18, 2021 1:35 PM > *To:* user@ignite.apache.org > *Subject:* Re: Problem with ScanQuery with filter on ClinetCache > > > > Hello, > > > > Thin client doesn't have a peer class loader (and most probably will never > have). To use predicates you should deploy classes for these predicates to > Ignite nodes. Serializable interface for Person class will not help here. > > > > пн, 18 окт. 2021 г. в 20:14, Prasad Kommoju <pkomm...@futurewei.com>: > > Thanks for the tip but it did not help. Also, there was another suggestion > that Person should implement Serializable. The examples do not show this > requirement, I am going to try this too. > > > > > > > > --------------------- > > Regards, > > Prasad Kommoju > > > > *From:* Ilya Kazakov <kazakov.i...@gmail.com> > *Sent:* Sunday, October 17, 2021 8:41 PM > *To:* user@ignite.apache.org > *Subject:* Re: Problem with ScanQuery with filter on ClinetCache > > > > Hello, it looks like you should enable Peer Class Loading: > https://ignite.apache.org/docs/latest/code-deployment/peer-class-loading > <https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fignite.apache.org%2Fdocs%2Flatest%2Fcode-deployment%2Fpeer-class-loading&data=04%7C01%7Cpkommoju%40futurewei.com%7C00a4537d258d40ec685c08d99276cf0c%7C0fee8ff2a3b240189c753a1d5591fedc%7C1%7C0%7C637701861258786864%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=GMwFxFPtXAdpwviyWo%2FhpBC1oQODTMk8E0eFR0DxK9o%3D&reserved=0> > > > > -------------- > > Ilya Kazakov > > > > сб, 16 окт. 2021 г. в 02:47, Prasad Kommoju <pkomm...@futurewei.com>: > > > > Hi > > > > I am having trouble getting ScanQuery to work with a filter from thin > client. > > > > I have attached a working minimal reproduction program (IntelliJ project > zip export) , the ignite config file and the part of the ignite logfile > after running the query. The code is fashioned along the example in the > documentation. > > > > Here is the querying part of the code: > > > > … > > IgniteBiPredicate<String, Person> filter = > (key, p) -> p.getName().equals(srchName); > > try (QueryCursor<Cache.Entry<String, Person>> scnCursor = > personCache.query(new ScanQuery<>(filter))) { > scnCursor.forEach( > entry -> System.*out*.println(entry.getKey() + > " " + entry.getValue())); > } catch (Exception e) { > System.*out*.println("Scan query failed " + e.getMessage()); > } > > > > … > > > > Any help in pointing out the problem will be greatly appreciated. > > > > > > --------------------- > > Regards, > > Prasad Kommoju > >