大模型应用 知识库中心 上传文件读取报错

Blade 未结 1 139
81277241
81277241 2025-08-20 18:49

一、该问题的重现步骤是什么?

  1.  纯文本文件可以读取image.png


2. xlsx docx 文件报错5baa929040638b07a30c9ad4fb2a84f9.png


二、你期待的结果是什么?实际看到的又是什么?

期望读取xlsx docx 文件正常,实际报错 获取文件内容失败: 

    "msg": "Handler dispatch failed: java.lang.NoSuchMethodError: 'org.apache.commons.compress.archivers.zip.ZipArchiveEntry org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.getNextEntry()'"

三、你正在使用的是什么产品,什么版本?在什么操作系统上?

BladeX-AI 1.1.1.RELEASE liunx

四、请提供详细的错误堆栈信息,这很重要。

2025-08-20 18:42:09.470 ERROR 11194 --- [  XNIO-1 task-4] o.s.c.l.e.BladeRestExceptionTranslator   : 服务器异常


jakarta.servlet.ServletException: Handler dispatch failed: java.lang.NoSuchMethodError: 'org.apache.commons.compress.archivers.zip.ZipArchiveEntry org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.getNextEntry()'

        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1104)

        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)

        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)

        at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903)

        at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:527)

        at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)

        at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)

        at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)

        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)

        at org.springblade.core.log.filter.LogTraceFilter.doFilter(LogTraceFilter.java:48)

        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)

        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)

        at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)

        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)

        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)

        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)

        at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)

        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)

        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)

        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)

        at org.springframework.session.web.http.SessionRepositoryFilter.doFilterInternal(SessionRepositoryFilter.java:142)

        at org.springframework.session.web.http.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:82)

        at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:362)

        at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:278)

        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)

        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)

        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)

        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)

        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)

        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)

        at org.springblade.core.boot.request.BladeRequestFilter.doFilter(BladeRequestFilter.java:94)

        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)

        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)

        at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)

        at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)

        at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)

        at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)

        at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)

        at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)

        at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)

        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)

        at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)

        at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)

        at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)

        at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)

        at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)

        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)

        at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)

        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)

        at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:276)

        at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135)

        at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:132)

        at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)

        at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)

        at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:256)

        at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:101)

        at io.undertow.server.Connectors.executeRootHandler(Connectors.java:395)

        at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:859)

        at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)

        at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)

        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)

        at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)

        at java.base/java.lang.Thread.run(Thread.java:842)

Caused by: java.lang.NoSuchMethodError: 'org.apache.commons.compress.archivers.zip.ZipArchiveEntry org.apache.commons.compress.archivers.zip.ZipArchiveInputStream.getNextEntry()'

        at org.apache.poi.openxml4j.util.ZipArchiveThresholdInputStream.getNextEntry(ZipArchiveThresholdInputStream.java:150)

        at org.apache.poi.openxml4j.util.ZipInputStreamZipEntrySource.(ZipInputStreamZipEntrySource.java:101)

        at org.apache.poi.openxml4j.opc.ZipPackage.(ZipPackage.java:211)

        at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:517)

        at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:490)

        at org.apache.poi.ooxml.util.PackageHelper.open(PackageHelper.java:67)

        at org.apache.poi.xssf.usermodel.XSSFWorkbook.(XSSFWorkbook.java:315)

        at org.apache.poi.xssf.usermodel.XSSFWorkbook.(XSSFWorkbook.java:289)

        at org.springblade.modules.aigc.kb.engine.handler.impl.ExcelFileHandler.getWorkbook(ExcelFileHandler.java:163)

        at org.springblade.modules.aigc.kb.engine.handler.impl.ExcelFileHandler.readContent(ExcelFileHandler.java:84)

        at org.springblade.modules.aigc.kb.engine.handler.impl.ExcelFileHandler.readContentPreview(ExcelFileHandler.java:123)

        at org.springblade.modules.aigc.kb.engine.service.impl.KnowledgeFileServiceImpl.readFileContentInternal(KnowledgeFileServiceImpl.java:134)

        at org.springblade.modules.aigc.kb.engine.service.impl.KnowledgeFileServiceImpl.readFileContentPreview(KnowledgeFileServiceImpl.java:64)

        at org.springblade.modules.aigc.kb.business.service.impl.AiKnowledgeAssetsServiceImpl.getFileContentWithCache(AiKnowledgeAssetsServiceImpl.java:261)

        at org.springblade.modules.aigc.kb.business.service.impl.AiKnowledgeAssetsServiceImpl.getFileContentPreview(AiKnowledgeAssetsServiceImpl.java:220)

        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.base/java.lang.reflect.Method.invoke(Method.java:568)

        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)

        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768)

        at org.springframework.validation.beanvalidation.MethodValidationInterceptor.invoke(MethodValidationInterceptor.java:174)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)

        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768)

        at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:720)

        at org.springblade.modules.aigc.kb.business.service.impl.AiKnowledgeAssetsServiceImpl$$SpringCGLIB$$0.getFileContentPreview()

        at org.springblade.modules.aigc.kb.business.controller.AiKnowledgeAssetsController.getFilePreview(AiKnowledgeAssetsController.java:138)

        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.base/java.lang.reflect.Method.invoke(Method.java:568)

        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)

        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768)

        at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)

        at org.springblade.core.log.aspect.RequestLogAspect.aroundApi(RequestLogAspect.java:128)

        at jdk.internal.reflect.GeneratedMethodAccessor36.invoke(Unknown Source)

        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.base/java.lang.reflect.Method.invoke(Method.java:568)

        at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:637)

        at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:627)

        at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:71)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:173)

        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768)

        at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)

        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768)

        at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:720)

        at org.springblade.modules.aigc.kb.business.controller.AiKnowledgeAssetsController$$SpringCGLIB$$0.getFilePreview()

        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.base/java.lang.reflect.Method.invoke(Method.java:568)

        at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:255)

        at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:188)

        at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118)

        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:926)

        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:831)

        at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)

        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089)

        ... 62 common frames omitted


五、若有更多详细信息,请在下面提供。


1条回答
  •  admin
    admin (楼主)
    2025-08-20 20:54

    先确认下是不是下载了我们的模版文件,以模版的格式为准创建的excel上传的

    CleanShot20250820205452@2x.png


    如果是模版格式也不行,则把你的excel内容脱敏,然后测试下是否能重现,重现后把脱敏后的excel发我们邮件,我们安排人看下。邮件地址:bladejava@qq.com

    作者追问:2025-08-20 20:54

    邮件已发送,麻烦给看看

    0 讨论(0)
提交回复