Details
-
Bug
-
Status: Resolved
-
Blocker
-
Resolution: Duplicate
-
None
-
None
-
None
-
None
Description
See FINERACT-932 for general background; I'm currently seeing this in logs of https://www.fineract.dev:
java.io.FileNotFoundException: /home/tomcat/.fineract/DefaultDemoTenant/documents/CLIENTS_PERSON/null/sf5694ypszb/CLIENTS_PERSON2020-05-06 (1).xls (No such file or directory) at java.io.FileInputStream.open0 (Native Method) at java.io.FileInputStream.open (FileInputStream.java:219) at java.io.FileInputStream.<init> (FileInputStream.java:157) at com.sun.jersey.core.impl.provider.entity.FileProvider.writeTo (FileProvider.java:101) at com.sun.jersey.core.impl.provider.entity.FileProvider.writeTo (FileProvider.java:64) at com.sun.jersey.spi.container.ContainerResponse.write (ContainerResponse.java:302) at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest (WebApplicationImpl.java:1510) at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest (WebApplicationImpl.java:1419) at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest (WebApplicationImpl.java:1409) at com.sun.jersey.spi.container.servlet.WebComponent.service (WebComponent.java:409) at com.sun.jersey.spi.container.servlet.ServletContainer.service (ServletContainer.java:558) at com.sun.jersey.spi.container.servlet.ServletContainer.service (ServletContainer.java:733) at javax.servlet.http.HttpServlet.service (HttpServlet.java:741) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:231) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166) at org.apache.tomcat.websocket.server.WsFilter.doFilter (WsFilter.java:53) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke (FilterSecurityInterceptor.java:115) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter (FilterSecurityInterceptor.java:90) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:320) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke (FilterSecurityInterceptor.java:115) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter (FilterSecurityInterceptor.java:90) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:334) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter (ExceptionTranslationFilter.java:118) 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:158) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:334) at org.apache.fineract.infrastructure.security.filter.InsecureTwoFactorAuthenticationFilter.doFilter (InsecureTwoFactorAuthenticationFilter.java:78) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:334) at org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:113) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:334) at org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:113) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:334) at org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:113) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:334) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter (SecurityContextPersistenceFilter.java:82) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:334) at org.springframework.security.web.access.channel.ChannelProcessingFilter.doFilter (ChannelProcessingFilter.java:157) 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:186) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:320) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke (FilterSecurityInterceptor.java:126) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter (FilterSecurityInterceptor.java:90) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:334) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter (ExceptionTranslationFilter.java:118) 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:158) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:334) at org.apache.fineract.infrastructure.security.filter.InsecureTwoFactorAuthenticationFilter.doFilter (InsecureTwoFactorAuthenticationFilter.java:78) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:334) at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter (HeaderWriterFilter.java:92) at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal (HeaderWriterFilter.java:77) at org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:119) 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:119) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter (FilterChainProxy.java:334) at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal (BasicAuthenticationFilter.java:204) at org.apache.fineract.infrastructure.security.filter.TenantAwareBasicAuthenticationFilter.doFilterInternal (TenantAwareBasicAuthenticationFilter.java:145) at org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:119) 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.access.channel.ChannelProcessingFilter.doFilter (ChannelProcessingFilter.java:157) 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:358) at org.springframework.web.filter.DelegatingFilterProxy.doFilter (DelegatingFilterProxy.java:271) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166) at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal (WebMvcMetricsFilter.java:109) at org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:119) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal (CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:119) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166) at org.springframework.web.filter.ForwardedHeaderFilter.doFilterInternal (ForwardedHeaderFilter.java:158) at org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:119) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166) at org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:202) at org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:96) at org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:541) at org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:139) at org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:92) at org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service (Http11Processor.java:373) at org.apache.coyote.AbstractProcessorLight.process (AbstractProcessorLight.java:65) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process (AbstractProtocol.java:868) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun (NioEndpoint.java:1590) at org.apache.tomcat.util.net.SocketProcessorBase.run (SocketProcessorBase.java:49) at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1128) at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:628) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run (TaskThread.java:61) at java.lang.Thread.run (Thread.java:834)
The stack trace doesn't make it super clear exactly where in Fineract this is coming from...
If I had to guess, it would be that we have a (or several?) REST Resource classes that accept a POST file upload ("multi-part" ?) and attempts to write it into a directory which... perhaps does not exist? Something somewhere should have created the missing parent directories?
Attachments
Issue Links
- blocks
-
FINERACT-932 Parent Issue for Error Logs seeing during "normal" usage (e.g. on fineract.dev)
- Open
- duplicates
-
FINERACT-1119 BulkImportWorkbookServiceImpl.getOutputTemplate() only works with FileSystemContentRepository
- Closed
- relates to
-
FINERACT-1119 BulkImportWorkbookServiceImpl.getOutputTemplate() only works with FileSystemContentRepository
- Closed
- links to