江苏叁拾叁信息技术有限公司LOGO 数智富农,领跑农业AI新时代!

  • 首页
  • 产品服务
    返回主菜单
    产品服务

    农业产业AI大模型

    农业产业数字化

    数字乡村

  • 解决方案
    返回主菜单
    解决方案

    面向政府

    综合农事服务中心解决方案 高标准农田智慧化建设解决方案 农业农村大数据解决方案 单品全产业链大数据解决方案 农产品价格监测平台解决方案 冷链物流解决方案 农业碳汇平台解决方案

    面向园区

    智慧园区解决方案 乡村文旅解决方案 农业元宇宙解决方案

    面向农企

    无人大田解决方案 无人设施解决方案 无人畜禽解决方案 无人水产解决方案 无人果园解决方案 无人茶园解决方案 社会化服务解决方案 农业电商解决方案 区块链溯源解决方案 种养殖一体化解决方案 中央厨房解决方案
  • 农业机器人
  • 经典案例
  • 新闻资讯
    返回主菜单
    新闻资讯

    企业资讯

    行业动态

  • 关于我们
    返回主菜单
    关于我们

    企业介绍

    招商合作

    研究院

  • 集团网站
    返回主菜单
    叁拾叁网站群

    集团网站

    千仓机器人网站

  • 选择区域/语言
    返回主菜单
    选择区域/语言

    Australia - English

    Canada - English

    China -简体中文

    Europe - English

    Ireland - English

    Kenya - English

    Malaysia - English

    New Zealand - English

    Singapore - English

    South Africa - English

    Switzerland - English

    United Kingdom - English

    Global - English

联系我们

Contact us

您的姓名:
姓名不能为空
您的单位:
单位不能为空
您的职务:
职务不能为空
您的所在地:
所在地不能为空
联系电话:
联系电话不能为空
您的需求:
您的需求不能为空
(03)s

提交成功 提交成功

提交失败 提交失败

行业动态

农业 AI 大模型在沙棘种植中的荒漠化治理与生态经济协同智能方案

沙棘是胡颓子科沙棘属落叶灌木,具有极强的抗旱、抗寒、耐贫瘠、耐盐碱能力,是我国北方荒漠化、水土流失治理的核心先锋树种,其果实富含维生素C、黄酮等功效成分,兼具极高的生态价值与经济价值,是北方生态脆弱区乡村振兴的重要生态经济产业,传统沙棘种植面临荒漠化地区成活率低、管护粗放、生态与经济效益协同性差、果实产量品质不稳定等痛点,农业AI大模型在沙棘种植中的荒漠化治理与生态经济协同智能方案,实现了沙棘生态修复与经济种植的全流程智能化管控,推动我国北方荒漠化治理与生态经济协同发展。
农业 AI 大模型在沙棘种植中的荒漠化治理与生态经济协同智能方案
来源:江苏叁拾叁

发布时间:2026-04-24

73阅读


沙棘是胡颓子科沙棘属落叶灌木,具有极强的抗旱、抗寒、耐贫瘠、耐盐碱能力,是我国北方荒漠化、水土流失治理的核心先锋树种,其果实富含维生素C、黄酮等功效成分,兼具极高的生态价值与经济价值,是北方生态脆弱区乡村振兴的重要生态经济产业,传统沙棘种植面临荒漠化地区成活率低、管护粗放、生态与经济效益协同性差、果实产量品质不稳定等痛点,农业AI大模型在沙棘种植中的荒漠化治理与生态经济协同智能方案,实现了沙棘生态修复与经济种植的全流程智能化管控,推动我国北方荒漠化治理与生态经济协同发展。

农业AI大模型为沙棘种植构建了荒漠化土地适配与生态修复智能规划体系,整合治理区域的荒漠化程度、地形地貌、土壤条件、气候特征、降水规律、水土流失状况等多源数据,结合不同沙棘品种的抗逆性、固沙能力、产量表现、适生区域,构建了沙棘荒漠化种植适配性评估模型。沙棘品种分为中国沙棘、大果沙棘等不同品系,模型通过深度分析荒漠化土地的立地条件,精准推荐适配的沙棘品种与种植模式,针对流动沙丘、重度荒漠化土地,推荐抗旱、耐贫瘠、固沙能力强的中国沙棘乡土品种,搭配柠条、沙蒿等乡土固沙植物,构建“乔灌草”结合的防风固沙体系,最大化提升生态修复效果;针对半固定沙地、轻度荒漠化土地,推荐丰产性好、果实品质优的大果沙棘品种,构建生态经济型种植模式,兼顾生态修复与经济效益;针对黄土高原水土流失区,推荐水平沟、鱼鳞坑整地种植模式,精准确定种植密度、株行距配置,最大化提升水土保持能力。江苏叁拾叁在内蒙古、陕西、甘肃、青海、新疆等沙棘主产区的实践中,打造的沙棘荒漠化种植AI系统,使沙棘在荒漠化土地的定植成活率从传统的40%提升至75%以上,植被覆盖度显著提升。

农业AI大模型9

沙棘荒漠化种植全周期智能管护与生态修复优化是系统的核心应用,模型结合沙棘的生长周期、治理区域的气象数据、土壤墒情监测数据,构建了沙棘专属管护模型。沙棘为多年生灌木,在荒漠化地区种植面临干旱、低温、风沙、土壤贫瘠等多重逆境,模型针对沙棘幼苗期、成林期、盛果期、衰老期的不同需求,动态优化管护方案。在幼苗期,优化抗旱保苗方案,通过地膜覆盖、秸秆覆盖、集雨保墒等措施,提升地温、减少土壤水分蒸发,应对荒漠化地区干旱少雨的问题,提升幼苗成活率;在成林期,优化修剪、水肥管理方案,促进沙棘树冠发育,提升防风固沙、水土保持能力,同时培育结果枝组,为果实丰产奠定基础;在盛果期,优化树体管理方案,平衡生态防护能力与果实产量,延长盛果期年限;在衰老期,优化平茬更新方案,恢复树势与生态防护能力,延长沙棘林的经营年限。针对荒漠化地区灌溉条件有限的特点,模型优化集雨节水灌溉方案,利用有限的天然降水与补充灌溉,保障沙棘的生长需求,提升抗旱能力。

沙棘生态经济协同优化与品质提升是系统的核心优势,模型构建了沙棘生态效益与经济效益双目标优化体系,在保障荒漠化治理、水土保持生态效益的前提下,最大化提升沙棘种植的经济效益。在果实品质提升方面,模型结合沙棘果实的加工用途,优化种植管理方案,针对果汁、果油、黄酮提取等不同加工需求,优化水肥管理、采收时间管控方案,促进沙棘果实维生素C、黄酮、油脂等功效成分的积累,提升果实的商品价值。在采收环节,模型通过监测沙棘果实的成熟度、有效成分含量,精准预测最佳采收时间,指导农户适时采收,保障果实品质。针对沙棘种植的经济效益,模型结合沙棘果实的市场价格、加工需求,优化种植品种结构、雌雄株配比,提升果实产量与种植收益,实现“生态修复-产业发展-农户增收-生态保护”的良性循环。

沙棘病虫害智能绿色防控与生态系统管护方面,针对沙棘种植中高发的沙棘木蠹蛾、蚜虫、干腐病、叶斑病等病虫害,模型结合荒漠化地区气候特点,构建病虫害发生预测模型,提前预警发生风险,优先推荐农业防治、物理防治、生物防治等绿色防控措施,保障沙棘林的生态系统健康,避免化学农药对生态环境的影响。同时模型通过卫星遥感、无人机航拍,实时监测沙棘林的生长情况、植被覆盖度、荒漠化治理效果,动态优化管护方案,持续提升生态修复成效。

该系统在内蒙古鄂尔多斯、陕西榆林、甘肃定西等荒漠化与水土流失地区推广应用后,项目区植被覆盖度平均提升45%以上,土壤风蚀水蚀量减少60%以上,沙棘果实平均亩产提升35%,既实现了荒漠化土地的生态修复,又带动了当地农户增收,实现了生态效益、经济效益与社会效益的协同统一,为我国北方生态脆弱区的生态治理与乡村振兴提供了智能化的技术支撑。


上一篇:农业 AI 大模型在佛手瓜种植中的立体栽培与供应智能管理技术 下一篇:农业 AI 大模型在菜心种植中的粤港澳大湾区供港标准种植智能管控
助力中国  影响世界

助力中国 影响世界

江苏叁拾叁智慧农业有限公司是以农业产业数字大脑、农业AI大模型、农业产业模型和农业智能终端装备产品为核心的国家级专精特新小巨人企业。作为中国智慧农业行业先驱,叁拾叁致力于打造中国现代农业生产的智慧化生态管理体系和农业企业精细化的科学管理体系,提升中国农业的智慧化水平和高标准农田智慧化建设,用先进技术和多场景综合解决方案为中国的农业园区、大型农场、农业经营主体、政府提供完备可靠的服务。叁拾叁已经成功落地580多个重点项目,客户企业主体25000多个。

相关动态

更多服务与支持

您的姓名
姓名不能为空
联系电话
电话不能为空
您的单位
您的单位不能为空
您的所在地
您的所在地不能为空
您的需求

解决方案

更多解决方案 解决方案
解决方案

when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${item.ID} [in template "mobile/hydt.shtml" at line 201, column 188] - Reached through: @wtl_col columnId="220" [in template "mobile/hydt.shtml" at line 199, column 105] - Reached through: @wtl_list columnId="15" fields="TITLE... [in template "mobile/hydt.shtml" at line 195, column 73] ---- Java stack trace (for programmers): ---- freemarker.core.InvalidReferenceException: [... Exception message was already printed; see it above ...] at freemarker.core.InvalidReferenceException.getInstance(InvalidReferenceException.java:134) at freemarker.core.EvalUtil.coerceModelToTextualCommon(EvalUtil.java:467) at freemarker.core.EvalUtil.coerceModelToStringOrMarkup(EvalUtil.java:389) at freemarker.core.EvalUtil.coerceModelToStringOrMarkup(EvalUtil.java:358) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:100) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:330) at freemarker.core.Environment.visit(Environment.java:372) at freemarker.core.Environment$NestedElementTemplateDirectiveBody.render(Environment.java:2900) at com.whir.tags.directive.tags.ColumnTag.execute(ColumnTag.java:486) at freemarker.core.Environment.visit(Environment.java:445) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:101) at freemarker.core.Environment.visit(Environment.java:330) at freemarker.core.Environment.visit(Environment.java:372) at freemarker.core.IteratorBlock$IterationContext.executedNestedContentForCollOrSeqListing(IteratorBlock.java:317) at freemarker.core.IteratorBlock$IterationContext.executeNestedContent(IteratorBlock.java:271) at freemarker.core.IteratorBlock$IterationContext.accept(IteratorBlock.java:242) at freemarker.core.Environment.visitIteratorBlock(Environment.java:642) at freemarker.core.IteratorBlock.acceptWithResult(IteratorBlock.java:107) at freemarker.core.IteratorBlock.accept(IteratorBlock.java:93) at freemarker.core.Environment.visit(Environment.java:330) at freemarker.core.Environment.visit(Environment.java:372) at freemarker.core.Environment$NestedElementTemplateDirectiveBody.render(Environment.java:2900) at com.whir.tags.directive.tags.ListTag.execute(ListTag.java:322) at freemarker.core.Environment.visit(Environment.java:445) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:101) at freemarker.core.Environment.visit(Environment.java:330) at freemarker.core.Environment.visit(Environment.java:336) at freemarker.core.Environment.process(Environment.java:309) at freemarker.template.Template.process(Template.java:384) at org.springframework.web.servlet.view.freemarker.FreeMarkerView.processTemplate(FreeMarkerView.java:396) at org.springframework.web.servlet.view.freemarker.FreeMarkerView.doRender(FreeMarkerView.java:309) at org.springframework.web.servlet.view.freemarker.FreeMarkerView.renderMergedTemplateModel(FreeMarkerView.java:257) at org.springframework.web.servlet.view.AbstractTemplateView.renderMergedOutputModel(AbstractTemplateView.java:165) at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:314) at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1325) at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1069) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1008) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:925) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:974) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:866) at javax.servlet.http.HttpServlet.service(HttpServlet.java:529) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:851) at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at com.github.xiaoymin.swaggerbootstrapui.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:84) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at com.github.xiaoymin.swaggerbootstrapui.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:124) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:170) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at com.whir.web.filter.JwtAuthenticationTokenFilter.doFilterInternal(JwtAuthenticationTokenFilter.java:286) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at com.whir.web.filter.ValidateCodeFilter.doFilterInternal(ValidateCodeFilter.java:51) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:116) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:66) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:109) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at org.springframework.boot.web.servlet.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:117) at org.springframework.boot.web.servlet.support.ErrorPageFilter.access$000(ErrorPageFilter.java:61) at org.springframework.boot.web.servlet.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:92) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.springframework.boot.web.servlet.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:110) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:660) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:383) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:937) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1791) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) at java.lang.Thread.run(Thread.java:745)