使用SpringXD和GemfireJSON服务器连接ApacheGeode。Json可以';无法解析

使用SpringXD和GemfireJSON服务器连接ApacheGeode。Json可以';无法解析,spring,Spring,溪流: stream create --name stocks --definition "http --port=9000 | gemfire-json-server --host=localhost --port=10334 --useLocator=true --regionName=Stocks --keyExpression=payload.getField('symbol')" --deploy 然后发布数据: http post --target http://localhost

溪流:

stream create --name stocks --definition "http --port=9000 | gemfire-json-server --host=localhost --port=10334 --useLocator=true --regionName=Stocks --keyExpression=payload.getField('symbol')" --deploy
然后发布数据:

http post --target http://localhost:9000 --data {"symbol":"FAKE","price":73}
然后它失败了:

2016-12-14T09:51:20+0800 1.3.1.发布错误池-15-thread-4 http.NettyHttpInboundChannelAdapter-发送消息时出错 org.springframework.integration.transformer.MessageTransformationException: 无法转换消息;嵌套异常是 org.springframework.messaging.MessageHandlingException:嵌套 例外情况是com.gemstone.gemfire.pdx.JSONFormatterException:可能 不解析JSON文档:[来源:{“symbol”:“FAKE”,“price”:73};行: 第1列:29] org.springframework.integration.transformer.MessageTransformingHandler.HandlerRequestMessage(MessageTransformingHandler.java:95) ~[spring-integration-core-4.2.5.RELEASE.jar:na]at org.springframework.integration.handler.AbstractReplyProducingMessageHandler.handleMessageInternal(AbstractReplyProducingMessageHandler.java:99) ~[spring-integration-core-4.2.5.RELEASE.jar:na]at org.springframework.integration.handler.AbstractMessageHandler.handleMessage(AbstractMessageHandler.java:127) ~[spring-integration-core-4.2.5.RELEASE.jar:na]

原因:org.springframework.messaging.MessageHandlingException: 嵌套异常为com.gemstone.gemfire.pdx.JSONFormatterException: 无法分析JSON文档:[来源:{“symbol”:“FAKE”,“price”:73}; 行:1,列:29]at org.springframework.integration.handler.MethodInvokingMessageProcessor.processMessage(MethodInvokingMessageProcessor.java:96) ~[spring-integration-core-4.2.5.RELEASE.jar:na]at org.springframework.integration.transformer.AbstractMessageProcessingTransformer.transform(AbstractMessageProcessingTransformer.java:90) ~[spring-integration-core-4.2.5.RELEASE.jar:na]at org.springframework.integration.transformer.MessageTransformingHandler.HandlerRequestMessage(MessageTransformingHandler.java:89) ~[spring-integration-core-4.2.5.RELEASE.jar:na]。。。51公共帧 由于以下原因而忽略:com.gemstone.gemfire.pdx.JSONFormatterException: 无法分析JSON文档:[来源:{“symbol”:“FAKE”,“price”:73}; 行:1,列:29]at com.gemstone.gemfire.pdx.JSONFormatter.fromJSON(JSONFormatter.java:62) ~[na:na]at org.springframework.integration.x.gemfire.jsonStringToObject Transformer.toObject(jsonStringToObject Transformer.java:37) ~[na:na]在sun.reflect.NativeMethodAccessorImpl.invoke0(本机) 方法)~(na:1.8.025]at invoke(NativeMethodAccessorImpl.java:62) ~(na:1.8.0_25)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 位于java.lang.reflect.Method.invoke(Method.java:483)的~[na:1.8.025] ~[na:1.8.0_25]

原因:com.gemstone.gemfire.cache.client.ServerOperationException: java.lang.ClassNotFoundException: org.apache.geode.pdx.PdxInitializationException位于 com.gemstone.gemfire.cache.client.internal.OpExecutorImpl.handleException(OpExecutorImpl.java:686) ~[na:na]at com.gemstone.gemfire.cache.client.internal.OpExecutorImpl.handleException(OpExecutorImpl.java:613) ~[na:na]at com.gemstone.gemfire.cache.client.internal.OpExecutorImpl.execute(OpExecutorImpl.java:171) ~[na:na]at com.gemstone.gemfire.cache.client.internal.OpExecutorImpl.execute(OpExecutorImpl.java:115) ~[na:na]at gemstone.gemfire.cache.client.internal.PoolImpl.execute(PoolImpl.java:696) ~[na:na]at gemstone.gemfire.cache.client.internal.GetPDXIdForTypeOp.execute(GetPDXIdForTypeOp.java:34) ~[na:na]at com.gemstone.gemfire.pdx.internal.ClientTypeRegistration.defineType(ClientTypeRegistration.java:56) ~[na:na]at gemstone.gemfire.pdx.internal.TypeRegistry.defineType(TypeRegistry.java:179) ~[na:na]at gemstone.gemfire.pdx.internal.TypeRegistry.defineLocalType(TypeRegistry.java:224) ~[na:na]at com.gemstone.gemfire.pdx.internal.PdxWriterImpl.completedbytestreamgeneration(PdxWriterImpl.java:477) ~[na:na]at com.gemstone.gemfire.pdx.internal.pdxinstancefactorympl.create(pdxinstancefactorympl.java:53) ~[na:na]at com.gemstone.gemfire.pdx.internal.json.PdxInstanceHelper.endObjectField(PdxInstanceHelper.java:175) ~[na:na]at gemstone.gemfire.pdx.JSONFormatter.getPdxInstance(JSONFormatter.java:152) ~[na:na]at com.gemstone.gemfire.pdx.JSONFormatter.fromJSON(JSONFormatter.java:56) ~[na:na]。。。69因以下原因而忽略的公共框架: java.lang.ClassNotFoundException: org.apache.geode.pdx.PdxInitializationException位于 java.net.URLClassLoader$1.run(URLClassLoader.java:372)~[na:1.8.0\u 25] 在java.net.URLClassLoader$1.run(URLClassLoader.java:361) ~[na:1.8.0_25]位于java.security.AccessController.doPrivileged(本机) 方法)~(na:1.8.025]at java.net.URLClassLoader.findClass(URLClassLoader.java:360) ~[na:1.8.0_25]


springxd流已成功创建。我想我是否错过了一些LIB?它显示失败的原因:Noclassfound。但我只是从网站上下载了这个软件包,什么都没做。所以我不知道为什么。也许有人能帮我。谢谢。

谢谢拖延症患者。 大家好,我发现问题是由Geode版本引起的。最新的 包将类路径从“gemfire”更改为“geode”。 所以问题来了。 您应该使用以前的版本: 我使用v1.0.0-cubating.M2。 问题解决了