You may already realize this, but I believe this is what is happening:

You have an action defined to use the stream result type.  The stream
result requires an InputStream to be available on the stack when it starts
processing.  This is usually provided by a getInputStream() method on the
action.  When, getInputSteam() returns null, Struts continues to look up
the stack to try and find the InputStream to stream to the client.  When it
can't find it, it throws the exception you are seeing.  I think you should
look into what conditions could allow your getInputStream() method to
return null (and probably log the heck out of those situations).
  (*Chris*)

On Wed Nov 12 2014 at 9:56:10 AM Burton Rhodes <burtonrho...@gmail.com>
wrote:

> I am having trouble tracking down an error we are experiencing on our
> production server.  This happens very rarely, but every once in a while we
> will get flooded with 75+ error logs in about a 1 minute span with the
> errors below.  Having trouble identifying which action and/or class is
> causing the issue.  Any ideas?
>
> The two entries below are repeated over 70x in 2 minutes.
>
>
> [2014-11-12 17:28:54,111]
>
> ERROR
>
> org.apache.struts2.dispatcher.StreamResult
>
> Can not find a java.io.InputStream with the name [inputStream] in the
> invocation stack. Check the <param name="inputName"> tag specified for this
> action.
>
>
> [2014-11-12 17:28:52,576]
>
> ERROR
>
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor
>
> Can not find a java.io.InputStream with the name [inputStream] in the
> invocation stack. Check the <param name="inputName"> tag specified for this
> action.
>
> java.lang.IllegalArgumentException: Can not find a java.io.InputStream
> with
> the name [inputStream] in the invocation stack. Check the <param
> name="inputName"> tag specified for this action.
>  at
> org.apache.struts2.dispatcher.StreamResult.doExecute(
> StreamResult.java:237)
>  at
> org.apache.struts2.dispatcher.StrutsResultSupport.execute(
> StrutsResultSupport.java:186)
>  at
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(
> DefaultActionInvocation.java:371)
>  at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:275)
>  at
> org.apache.struts2.interceptor.DeprecationInterceptor.intercept(
> DeprecationInterceptor.java:41)
>  at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)
>  at
> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(
> ConversionErrorInterceptor.java:138)
>  at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)
>  at
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(
> ParametersInterceptor.java:254)
>  at
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(
> MethodFilterInterceptor.java:98)
>  at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)
>  at
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(
> ParametersInterceptor.java:254)
>  at
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(
> MethodFilterInterceptor.java:98)
>  at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)
>  at
> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(
> MultiselectInterceptor.java:73)
>  at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)
>  at
> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(
> CheckboxInterceptor.java:91)
>  at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)
>  at
> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(
> PrepareInterceptor.java:171)
>  at
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(
> MethodFilterInterceptor.java:98)
>  at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)
>  at
> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(
> ServletConfigInterceptor.java:164)
>  at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)
>  at
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(
> ExceptionMappingInterceptor.java:189)
>  at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)
>  at
> com.afs.web.interceptor.SessionInterceptor.intercept(
> SessionInterceptor.java:62)
>  at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)
>  at
> org.apache.struts2.impl.StrutsActionProxy.execute(
> StrutsActionProxy.java:54)
>  at
> org.apache.struts2.dispatcher.Dispatcher.serviceAction(
> Dispatcher.java:562)
>  at
> org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(
> ExecuteOperations.java:77)
>  at
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.
> doFilter(StrutsPrepareAndExecuteFilter.java:99)
>  at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> ApplicationFilterChain.java:235)
>  at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(
> ApplicationFilterChain.java:206)
>  at
> org.springframework.security.web.FilterChainProxy$
> VirtualFilterChain.doFilter(FilterChainProxy.java:330)
>  at
> org.springframework.security.web.access.intercept.
> FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
>  at
> org.springframework.security.web.access.intercept.
> FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
>  at
> org.springframework.security.web.FilterChainProxy$
> VirtualFilterChain.doFilter(FilterChainProxy.java:342)
>  at
> org.springframework.security.web.access.ExceptionTranslationFilter.
> doFilter(ExceptionTranslationFilter.java:113)
>  at
> org.springframework.security.web.FilterChainProxy$
> VirtualFilterChain.doFilter(FilterChainProxy.java:342)
>  at
> org.springframework.security.web.session.SessionManagementFilter.doFilter(
> SessionManagementFilter.java:103)
>  at
> org.springframework.security.web.FilterChainProxy$
> VirtualFilterChain.doFilter(FilterChainProxy.java:342)
>  at
> org.springframework.security.web.authentication.
> AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.
> java:113)
>  at
> org.springframework.security.web.FilterChainProxy$
> VirtualFilterChain.doFilter(FilterChainProxy.java:342)
>  at
> org.springframework.security.web.authentication.rememberme.
> RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter
> .java:146)
>  at
> org.springframework.security.web.FilterChainProxy$
> VirtualFilterChain.doFilter(FilterChainProxy.java:342)
>  at
> org.springframework.security.web.servletapi.SecurityContextHolderAwareRequ
> estFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
>  at
> org.springframework.security.web.FilterChainProxy$
> VirtualFilterChain.doFilter(FilterChainProxy.java:342)
>  at
> org.springframework.security.web.savedrequest.RequestCacheAwareFilter.
> doFilter(RequestCacheAwareFilter.java:45)
>  at
> org.springframework.security.web.FilterChainProxy$
> VirtualFilterChain.doFilter(FilterChainProxy.java:342)
>  at
> org.springframework.security.web.authentication.
> AbstractAuthenticationProcessingFilter.doFilter(
> AbstractAuthenticationProcessingFilter.java:183)
>  at
> org.springframework.security.web.FilterChainProxy$
> VirtualFilterChain.doFilter(FilterChainProxy.java:342)
>  at
> org.springframework.security.web.authentication.logout.
> LogoutFilter.doFilter(LogoutFilter.java:105)
>  at
> org.springframework.security.web.FilterChainProxy$
> VirtualFilterChain.doFilter(FilterChainProxy.java:342)
>  at
> org.springframework.security.web.session.ConcurrentSessionFilter.doFilter(
> ConcurrentSessionFilter.java:125)
>  at
> org.springframework.security.web.FilterChainProxy$
> VirtualFilterChain.doFilter(FilterChainProxy.java:342)
>  at
> org.springframework.security.web.context.SecurityContextPersistenceFilt
> er.doFilter(SecurityContextPersistenceFilter.java:87)
>  at
> org.springframework.security.web.FilterChainProxy$
> VirtualFilterChain.doFilter(FilterChainProxy.java:342)
>  at
> org.springframework.security.web.FilterChainProxy.doFilterInternal(
> FilterChainProxy.java:192)
>  at
> org.springframework.security.web.FilterChainProxy.doFilter(
> FilterChainProxy.java:160)
>  at
> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(
> DelegatingFilterProxy.java:346)
>  at
> org.springframework.web.filter.DelegatingFilterProxy.doFilter(
> DelegatingFilterProxy.java:259)
>  at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> ApplicationFilterChain.java:235)
>  at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(
> ApplicationFilterChain.java:206)
>  at
> org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.
> doFilterInternal(OpenEntityManagerInViewFilter.java:147)
>  at
> org.springframework.web.filter.OncePerRequestFilter.
> doFilter(OncePerRequestFilter.java:76)
>  at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
> ApplicationFilterChain.java:235)
>  at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(
> ApplicationFilterChain.java:206)
>  at
> org.apache.catalina.core.StandardWrapperValve.invoke(
> StandardWrapperValve.java:233)
>  at
> org.apache.catalina.core.StandardContextValve.invoke(
> StandardContextValve.java:191)
>  at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(
> AuthenticatorBase.java:470)
>  at
> org.apache.catalina.core.StandardHostValve.invoke(
> StandardHostValve.java:127)
>  at
> org.apache.catalina.valves.ErrorReportValve.invoke(
> ErrorReportValve.java:102)
>  at
> org.apache.catalina.core.StandardEngineValve.invoke(
> StandardEngineValve.java:109)
>  at
> org.apache.catalina.connector.CoyoteAdapter.service(
> CoyoteAdapter.java:293)
>  at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
>  at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
>  at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776)
>  at
> org.apache.jk.common.ChannelSocket.processConnection(
> ChannelSocket.java:705)
>  at
> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(
> ChannelSocket.java:898)
>  at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool.java:690)
>  at java.lang.Thread.run(Thread.java:701)
>

Reply via email to