- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经使用 Spring Pivotal Gemfire 创建了一个定位器应用程序。根据文档,我在启动应用程序时设置了 GEODE_HOME。当我尝试从 gfsh 命令提示符进行连接时。它尝试从 GEODE_HOME 部署脉冲并抛出以下错误以进行 jackson 类型转换。
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter]: Constructor threw exception; nested exception is java.lang.ClassCastException: class com.fasterxml.jackson.datatype.jdk8.Jdk8Module cannot be cast to class com.fasterxml.jackson.databind.Module (com.fasterxml.jackson.datatype.jdk8.Jdk8Module is in unnamed module of loader 'app'; com.fasterxml.jackson.databind.Module is in unnamed module of loader org.eclipse.jetty.webapp.WebAppClassLoader @18a3c727)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1160) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1104) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:481) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:312) ~[na:na]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:308) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867) ~[spring-context-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543) ~[spring-context-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:443) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:325) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:930) ~[jetty-server-9.4.25.v20191220.jar:9.4.25.v20191220]
at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:553) ~[jetty-servlet-9.4.25.v20191220.jar:9.4.25.v20191220]
at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:889) ~[jetty-server-9.4.25.v20191220.jar:9.4.25.v20191220]
at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:356) ~[jetty-servlet-9.4.25.v20191220.jar:9.4.25.v20191220]
at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1445) ~[jetty-webapp-9.4.25.v20191220.jar:9.4.25.v20191220]
at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1409) ~[jetty-webapp-9.4.25.v20191220.jar:9.4.25.v20191220]
at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:822) ~[jetty-server-9.4.25.v20191220.jar:9.4.25.v20191220]
at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:275) ~[jetty-servlet-9.4.25.v20191220.jar:9.4.25.v20191220]
at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:524) ~[jetty-webapp-9.4.25.v20191220.jar:9.4.25.v20191220]
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72) ~[jetty-util-9.4.25.v20191220.jar:9.4.25.v20191220]
at org.apache.geode.internal.cache.HttpService.addWebApplication(HttpService.java:169) ~[geode-core-9.8.4.jar:na]
at org.apache.geode.management.internal.ManagementAgent.loadWebApplications(ManagementAgent.java:232) ~[geode-core-9.8.4.jar:na]
at org.apache.geode.management.internal.ManagementAgent.startAgent(ManagementAgent.java:127) ~[geode-core-9.8.4.jar:na]
at org.apache.geode.management.internal.SystemManagementService.startManager(SystemManagementService.java:432) ~[geode-core-9.8.4.jar:na]
at org.apache.geode.management.internal.JmxManagerLocator.findJmxManager(JmxManagerLocator.java:102) ~[geode-core-9.8.4.jar:na]
at org.apache.geode.management.internal.JmxManagerLocator.processRequest(JmxManagerLocator.java:52) ~[geode-core-9.8.4.jar:na]
at org.apache.geode.distributed.internal.InternalLocator$PrimaryHandler.processRequest(InternalLocator.java:1309) ~[geode-core-9.8.4.jar:na]
at org.apache.geode.distributed.internal.tcpserver.TcpServer.processOneConnection(TcpServer.java:475) ~[geode-core-9.8.4.jar:na]
at org.apache.geode.distributed.internal.tcpserver.TcpServer.lambda$processRequest$0(TcpServer.java:369) ~[geode-core-9.8.4.jar:na]
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter]: Constructor threw exception; nested exception is java.lang.ClassCastException: class com.fasterxml.jackson.datatype.jdk8.Jdk8Module cannot be cast to class com.fasterxml.jackson.databind.Module (com.fasterxml.jackson.datatype.jdk8.Jdk8Module is in unnamed module of loader 'app'; com.fasterxml.jackson.databind.Module is in unnamed module of loader org.eclipse.jetty.webapp.WebAppClassLoader @18a3c727)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:154) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:89) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1152) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
... 35 common frames omitted
Caused by: java.lang.ClassCastException: class com.fasterxml.jackson.datatype.jdk8.Jdk8Module cannot be cast to class com.fasterxml.jackson.databind.Module (com.fasterxml.jackson.datatype.jdk8.Jdk8Module is in unnamed module of loader 'app'; com.fasterxml.jackson.databind.Module is in unnamed module of loader org.eclipse.jetty.webapp.WebAppClassLoader @18a3c727)
at org.springframework.http.converter.json.Jackson2ObjectMapperBuilder.registerWellKnownModulesIfAvailable(Jackson2ObjectMapperBuilder.java:740) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.http.converter.json.Jackson2ObjectMapperBuilder.configure(Jackson2ObjectMapperBuilder.java:607) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.http.converter.json.Jackson2ObjectMapperBuilder.build(Jackson2ObjectMapperBuilder.java:590) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.http.converter.json.MappingJackson2HttpMessageConverter.<init>(MappingJackson2HttpMessageConverter.java:57) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.http.converter.support.AllEncompassingFormHttpMessageConverter.<init>(AllEncompassingFormHttpMessageConverter.java:66) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.<init>(RequestMappingHandlerAdapter.java:204) ~[spring-webmvc-5.2.3.RELEASE.jar:5.2.3.RELEASE]
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:na]
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:na]
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:na]
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[na:na]
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:142) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]
... 37 common frames omitted
最佳答案
此问题应在 Geode 1.11.0
中修复并由此 Jira 覆盖:https://issues.apache.org/jira/browse/GEODE-7334 .
以下是问题的一些背景信息和潜在的解决方法:(对“joda”的引用可以替换为“jdk8”)
当 web 应用程序启动时,它会加载 com.fasterxml.jackson.databind.Module
(这是一个抽象类)使用 web 应用程序的类加载器。在某些时候 Spring 会尝试加载各种 ObjectMappers Jackson2ObjectMapperBuilder.java#L772-L822 。在本例中,它在系统类路径上找到joda模块。为了解决com.fasterxml.jackson.datatype.joda.JodaModule
类(由系统类加载器),它还需要加载 com.fasterxml.jackson.databind.Module
然后也由系统类加载器加载。然而,这意味着JodaModule
与 c.f.j.d.Module
不兼容由 webapp 加载的类;导致异常。
只要所有必需的 jackson jar 都位于系统类路径上,解决方法就是从 webapp jar 中删除所有 jackson jar。例如:zip -d .../tools/Pulse/geode-pulse-1.10.0.war WEB-INF/lib/jackson\*
关于java - 尝试使用 Spring Boot 2 启动 Gemfire 脉冲时出现 Jackson Cast 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60154427/
我正在将 GemFire 集群从 8.2.7(使用 Spring Data GemFire 1.6.0.RELEASE)迁移到 Pivotal GemFire 9.3.0(SDG 2.0.7.RELE
我正在尝试按日期查询我的 gemfire 区域。任何人都可以帮助解决如何格式化 to_date 以便对我的 gemfire 区域进行日期查询。 我有一个格式为 'MM/dd/yyyy' 的日期,然后我
我想在 Spring Boot 应用程序中创建一个 Gemfire 区域。按照这个 sample ,它在不添加数据库支持的情况下运行良好。如果我添加数据库,它会显示错误,如“创建名称为‘dataSou
我正在尝试使用 Spring Data GemFire 和 Spring Boot 连接到现有的 GemFire 定位器。 以下是我的缓存配置 当我尝试运行此代码时
我正在尝试使用 Spring Data GemFire 和 Spring Boot 连接到现有的 GemFire 定位器。 以下是我的缓存配置 当我尝试运行此代码时
我的团队使用 Geode 作为临时分析引擎。我们在 Geode 中存储了大量原始数据对象(每个 200MB+),但这些对象永远不会直接返回给客户端。相反,我们严重依赖自定义函数执行来在 Geode 内
我一直在研究“内存数据网格”,并看到了“gemfire”一词。我很困惑。似乎 gemfire 是一个术语,指的是像数据库一样存储和操作数据但在计算机内存中的技术,不是吗? gemfire到底是什么?
我正在为一个 Java 应用程序编写设计文档,其中两个冗余进程从消息队列中读取项目,我们希望它们都使用相同的 key 将项目存储到 gemfire 存储中,目的是许多运行连续查询的应用程序会处理这些项
我正在尝试在 springXD 中设置流。 gemfire 安装在 10.99.40.60 机器上,springXD 安装在我的本地 VM 上。 xd:>stream create -
我有一个客户端/服务器拓扑场景。 在本地运行由一个定位器和两台服务器组成的简单集群,不同的 JVM 进程,服务器在启动时没有使用以下配置创建区域: ${gemfire.server.na
我正在尝试使用 gfsh 启动定位器,但我不断发现找不到主类。 我正在运行这个:gfsh start locator --name=locator1 此后我收到以下错误: Error: Could n
我正在与 GemFire 合作开展一个项目。为了将数据从数据库导入到 GemFire,我做了一个连接到数据库和 GemFire 的 java 程序,然后我从数据库中选择数据并放入它位于 GemFire
我试图在一个 JVM 中创建一个本地缓存和一个客户端缓存,但是我收到下面所述的错误,我认为这是由于缓存是单例而发生的,并且每个 JVM 只能创建一个。 有没有人知道一个好的解决方法? 错误: Erro
我正在使用 gemfire,目前有一个客户端和一个服务器。现在,服务器动态地在一个区域中创建一些子区域,并在其中放置一些对象。我正在尝试使用客户端检索对象,但看不到对象或子区域。如何同步区域?我还能做
我有一个嵌入到具有本地 Gemfire 缓存的 Web 服务中的 JAR。我试图解决的问题是这些数据的过期。 我创建了一个自定义过期计时器,它将设置每个条目的过期时间(以秒为单位),并绑定(bind)
在此gemfire tutorial 我无法解释这个通用声明: people = cache.createRegionFactory(REPLICATE) .addCacheListene
我使用 gemfire 作为我的缓存。缓存堆大小远高于 100GB。我发现当我们从客户端将数据放入gemfire缓存中时,它会序列化数据并发送给服务器,并且在服务器上数据以序列化形式存储。问题: 当我
我们使用 Pivotal Gemfire 作为数据缓存。最近,我们从 gemfire 8.2.1 迁移到 9.5.1,具有完全相同的区域、数据和索引。但是在特定的一个区域上创建索引花费了太多时间,该区
当我在 gfsh 控制台中运行 SELECT 查询时,它按预期工作: query --query="SELECT * FROM /channelProfiles_composite_asrd WHER
我已经为我的用例搜索了解决方案,但没有找到正确的解决方案,因此期待一些好的想法可以进一步探索。 我有两个 gemfire(版本 8.2)集群(私有(private)和公共(public)),每个集群都
我是一名优秀的程序员,十分优秀!