當我試圖從gemfire實現CacheListenerAdapter時出現以下錯誤。Gemfire CacheListenerAdapter實現ClassNotFoundException:org.apache.geode.pdx.internal.PdxType
java.lang.ClassNotFoundException: org.apache.geode.pdx.internal.PdxType
我使用下面的代碼從獲得的GemFire緩存值。
import com.gemstone.gemfire.cache.Declarable; import com.gemstone.gemfire.cache.EntryEvent; import com.gemstone.gemfire.cache.util.CacheListenerAdapter; import com.gemstone.gemfire.pdx.internal.PdxInstanceImpl;
@Override public void afterUpdate(EntryEvent<K, V> event) { addToQueue((PdxInstanceImpl) event.getNewValue()); }
,我用下面的代碼在addToQueue
功能
Double price = Double.parseDouble(instance.readField("Price").toString());
請注意,我從另一個項目複製這個代碼,我的閱讀價格新的gemfire。我使用上面的代碼在一個窗口中繪製數據。
您在客戶端和服務器上運行的GemFire版本是什麼?看起來您可能在客戶端上有8.2,而在服務器上可能有9.x,因爲產品的軟件包名稱在這些版本之間發生了變化。有一個向後兼容的層,所以我認爲這不應該是一個問題,但請你能提供那個細節。 –