클라이언트 측에서 모든 작업이 정상적으로 처리되었습니다. 개체를 저장하고 클라이언트 측에서 개체를 다시 검색 할 수 있습니다. 내가 데이터를 볼 gfsh 또는 데이터 브라우저를 사용하려고하면Geode : 직렬화 예외 및 서버에 클래스 인스턴스를 만들 수 없습니다.
그러나, 나는 gfsh
Message : Could not create an instance of a class com.room.backend.soa.spring.cache.geode.test.domain.Book
Result : false
에 데이터 브라우저에서이 예외를 가지고 내 코드는 다음과 같다
javalangException- Query could not be executed due to - orgapachegeodepdxPdxSerializationException- Could not create an instance of a class comroombackendsoaspringcachegeodetestdomainBook
ClientCacheFactoryBean gemfireCache = new ClientCacheFactoryBean();
gemfireCache.setClose(true);
gemfireCache.setProperties(gemfireProperties);
gemfireCache.setPdxSerializer(pdxSerializer);
pdxSerializer는
입니다ReflectionBasedAutoSerializer serializer =
new ReflectionBasedAutoSerializer(
"com.room.backend.soa.spring.cache.geode.test.domain.*",
"com.room.backend.soa.spring.cache.geode.test.domain.Book",
"com.room.backend.soa.spring.cache.geode.test.domain.Book#identity=id.*",
"com.room.backend.soa.spring.cache.geode.test.domain.#identity=id.*"
);
필자는 [여기]와 같이 캐시에 pdx 형식을 등록해야한다고 생각합니다 (https://stackoverflow.com/questions/45793610/registering-pdx-type-in-type-registry-with-geode- C-sharp-native-client) – rupweb