在CacheConfiguration上使用setIndexedTypes或setTypeMetadata方法来启用。点燃错误

问题描述 投票:1回答:1

我正在尝试用简单的人的例子来读取缓存。设置了基本的表格,以下是我试图运行的代码

 IgniteConfiguration cfg = new IgniteConfiguration();
        cfg.setClientMode(true);
        cfg.setPeerClassLoadingEnabled(true);

        // Create store factory.
        CacheJdbcPojoStoreFactory storeFactory = new CacheJdbcPojoStoreFactory();
        storeFactory.setDataSourceBean("dataSource");

        CacheConfiguration sampleCache = CacheConfig.cache("sampleCache", storeFactory);
        sampleCache.setIndexedTypes(PersonKey.class,Person.class);
        cfg.setCacheConfiguration(sampleCache);



        Ignition.start("default-config1.xml");
        Ignite ignite=Ignition.ignite();

        IgniteCache<IncappconfigKey,INCAppConfig> cache =ignite.getOrCreateCache("sampleCache");
        cache.loadCache(null);

        SqlQuery  sqlQuery=new SqlQuery(Person.class,"id=?");
        cache.query(sqlQuery.setArgs(1l));

我在设置索引类型时仍然得到上述错误。有谁能帮帮我。困在这个问题上已经有一段时间了。

所有的CacheConfig和其他类都是由导入工具自动生成的。

in-memory-database ignite
1个回答
0
投票

你没有把配置传入Ignite。只要启动Ignite,用 IgniteConfiguration 对象的初始化。

简而言之,它应该是


IgniteConfiguration cfg = new IgniteConfiguration();
        ...
        ...
Ignition.start(cfg);
        ...
© www.soinside.com 2019 - 2024. All rights reserved.