我有一个 Coherence 3.7 集群。我正在尝试使用简单的 java 应用程序客户端连接到它。如果我尝试使用 java 序列化实现并禁用 POF,它对我来说效果很好。但是当我启用 POF 时,我开始出现异常。下面是堆栈跟踪。我在客户端和集群端都有我的 pof 配置。任何有关可能导致此问题的原因的提示都会非常有帮助。
2012-09-04 13:40:04.811/1.531 Oracle Coherence GE 3.7.1.4 <Error> (thread=ExtendTcpCacheService:TcpInitiator, member=n/a): An exception occurred while encoding a OpenConnectionRequest for Service=ExtendTcpCacheService:TcpInitiator: java.lang.IllegalArgumentException: unknown user type: com.tangosol.util.UUID
at com.tangosol.io.pof.ConfigurablePofContext.getUserTypeIdentifier(ConfigurablePofContext.java:430)
at com.tangosol.io.pof.ConfigurablePofContext.getUserTypeIdentifier(ConfigurablePofContext.java:419)
at com.tangosol.coherence.component.net.extend.Channel.getUserTypeIdentifier(Channel.CDB:7)
at com.tangosol.io.pof.PofBufferWriter.writeUserType(PofBufferWriter.java:1671)
at com.tangosol.io.pof.PofBufferWriter.writeObject(PofBufferWriter.java:1623)
最佳答案
根据您收到的消息,tcp 发起程序失败,因为它无法序列化 Coherence 类型 (com.tangosol.util.UUID)。您的 pof 配置文件中是否包含默认的 pof 配置?
关于oracle-coherence - POF 注释实现一致性问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12260563/