Yes, That fixed my issue.

I am going to convert the Codebehind to Convention now. But app is working
well now with suggested changes.

Thank you very much for the support.

Regards,

Vidula.

Vidula Hasaranga
Consultant Technology

[image: ACCELaero] <http://www.accelaero.com>
<http://www.worldtravelawards.com/award-travel-technologys-leading-pss-provider-2015>
Information
Systems Associates (Pvt) Ltd, Colombo 3, Sri Lanka
Tel *+94112058886* - Mob *+94773799694* - Fax *+971 65528857*
*accelaero.com* <http://accelaero.com> ⸰ *LinkedIn*
<https://www.linkedin.com/company/information-systems-associates-fze> ⸰
*Twitter* <https://twitter.com/isafeeds>


On Thu, Jul 7, 2016 at 5:04 PM, Lukasz Lenart <lukaszlen...@apache.org>
wrote:

> It's a bug related to this change [1] and this commit [2] and the
> problem is here [3] & [4]. The best option is to migrate to the
> Convention plugin instead of using deprecated Codebehind or define you
> own JSONResult as follow:
>
> public class MyJSONResult extends JSONResult {
>
>     public static final String DEFAULT_PARAM = "root";
>
> }
>
> [1] https://issues.apache.org/jira/browse/WW-4163
> [2]
> https://github.com/apache/struts/commit/6cfc28b359949c4e87e8e75316b11dbf19a33419
> [3]
> https://github.com/apache/struts/blob/support-2-3/plugins/codebehind/src/main/java/org/apache/struts2/config/ClasspathPackageProvider.java#L655
> [4]
> https://github.com/apache/struts/blob/support-2-3/plugins/codebehind/src/main/java/org/apache/struts2/config/ClasspathPackageProvider.java#L666
>
>
> Regards
> --
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
>
> 2016-07-07 11:33 GMT+02:00 Vidula Hasaranga <vhasara...@isa.ae>:
> > Yes, making the file rename to struts.xml and putting that in
> > WEB-INF/classes folder resolved the 404 issue that I had. But now it
> gives
> > a different error with code 500.
> >
> > Console log is as follows:
> >
> > 07-Jul-2016 14:48:33.430 SEVERE [http-nio-7070-exec-4]
> > com.opensymphony.xwork2.util.logging.commons.CommonsLogger.error There
> was
> > an exception while instantiating the result of type
> > org.apache.struts2.json.JSONResult
> >  java.lang.NullPointerException
> > at
> java.util.concurrent.ConcurrentHashMap.hash(ConcurrentHashMap.java:333)
> > at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:988)
> > at
> >
> com.opensymphony.xwork2.ognl.OgnlUtil.compileAndExecute(OgnlUtil.java:373)
> > at com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:288)
> > at
> >
> com.opensymphony.xwork2.ognl.OgnlUtil.internalSetProperty(OgnlUtil.java:617)
> > at com.opensymphony.xwork2.ognl.OgnlUtil.setProperty(OgnlUtil.java:239)
> > at
> >
> com.opensymphony.xwork2.ognl.OgnlReflectionProvider.setProperty(OgnlReflectionProvider.java:90)
> > at
> >
> org.apache.struts2.factory.StrutsResultFactory.setParameter(StrutsResultFactory.java:67)
> > at
> >
> org.apache.struts2.factory.StrutsResultFactory.setParameters(StrutsResultFactory.java:52)
> > at
> >
> org.apache.struts2.factory.StrutsResultFactory.buildResult(StrutsResultFactory.java:41)
> > at
> com.opensymphony.xwork2.ObjectFactory.buildResult(ObjectFactory.java:219)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.createResult(DefaultActionInvocation.java:215)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:366)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:276)
> > at
> >
> org.apache.struts2.interceptor.DeprecationInterceptor.intercept(DeprecationInterceptor.java:41)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:168)
> > at
> >
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
> > at
> >
> org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:76)
> > at
> >
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:229)
> > at
> >
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:229)
> > at
> >
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:191)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:73)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> org.apache.struts2.interceptor.DateTextFieldInterceptor.intercept(DateTextFieldInterceptor.java:125)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:91)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:253)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > 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:245)
> > at
> >
> com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:140)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:193)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
> > at
> >
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
> > at
> >
> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
> > at
> >
> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:567)
> > at
> >
> org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:81)
> > at
> >
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> > at
> >
> com.isa.maxaero.web.filter.UserMDCServletFilter.doFilter(UserMDCServletFilter.java:57)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
> > 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.servletapi.SecurityContextHolderAwareRequestFilter.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.SecurityContextPersistenceFilter.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:237)
> > at
> >
> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> > at
> >
> com.isa.maxaero.web.filter.AuthRedirectFilter.doFilter(AuthRedirectFilter.java:69)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> > at
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
> > at
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
> > at
> >
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
> > at
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
> > at
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
> > at
> >
> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)
> > at
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
> > at
> >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:537)
> > at
> >
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1085)
> > at
> >
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:658)
> > at
> >
> org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222)
> > at
> >
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1556)
> > at
> >
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1513)
> > at
> >
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> > at
> >
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> > at
> >
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
> > at java.lang.Thread.run(Thread.java:745)
> >
> > 07-Jul-2016 14:48:33.432 SEVERE [http-nio-7070-exec-4]
> > freemarker.log._JULLoggerFactory$JULLogger.error Error executing
> FreeMarker
> > template
> >  FreeMarker template error:
> > The FreeMarker value exists, but has nothing inside it; the TemplateModel
> > object (class: freemarker.ext.beans.StringModel) has returned a null
> > instead of a String. This is possibly a bug in the non-FreeMarker code
> that
> > builds the data-model.
> > The blamed expression:
> > ==> ex  [in template "org/apache/struts2/dispatcher/error.ftl" at line
> 129,
> > column 15]
> >
> > ----
> > FTL stack trace ("~" means nesting-related):
> > - Failed at: ${ex?html}  [in template
> > "org/apache/struts2/dispatcher/error.ftl" at line 129, column 13]
> > ----
> >
> > Java stack trace (for programmers):
> > ----
> > freemarker.core._TemplateModelException: [... Exception message was
> already
> > printed; see it above ...]
> > at
> freemarker.core.EvalUtil.newModelHasStoredNullException(EvalUtil.java:92)
> > at freemarker.core.EvalUtil.modelToString(EvalUtil.java:61)
> > at freemarker.core.EvalUtil.coerceModelToString(EvalUtil.java:340)
> > at freemarker.core.Expression.evalAndCoerceToString(Expression.java:82)
> > at freemarker.core.BuiltInForString._eval(BuiltInForString.java:26)
> > at freemarker.core.Expression.eval(Expression.java:78)
> > at freemarker.core.Expression.evalAndCoerceToString(Expression.java:82)
> > at freemarker.core.DollarVariable.accept(DollarVariable.java:40)
> > at freemarker.core.Environment.visit(Environment.java:312)
> > at freemarker.core.MixedContent.accept(MixedContent.java:62)
> > at freemarker.core.Environment.visitByHiddingParent(Environment.java:333)
> > at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:148)
> > at freemarker.core.Environment.visitIteratorBlock(Environment.java:559)
> > at freemarker.core.IteratorBlock.accept(IteratorBlock.java:67)
> > at freemarker.core.Environment.visit(Environment.java:312)
> > at freemarker.core.MixedContent.accept(MixedContent.java:62)
> > at freemarker.core.Environment.visit(Environment.java:312)
> > at freemarker.core.Environment.process(Environment.java:290)
> > at freemarker.template.Template.process(Template.java:312)
> > at
> >
> org.apache.struts2.dispatcher.DefaultDispatcherErrorHandler.handleErrorInDevMode(DefaultDispatcherErrorHandler.java:99)
> > at
> >
> org.apache.struts2.dispatcher.DefaultDispatcherErrorHandler.handleError(DefaultDispatcherErrorHandler.java:57)
> > at
> org.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:912)
> > at
> >
> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:579)
> > at
> >
> org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:81)
> > at
> >
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> > at
> >
> com.isa.maxaero.web.filter.UserMDCServletFilter.doFilter(UserMDCServletFilter.java:57)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
> > 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.servletapi.SecurityContextHolderAwareRequestFilter.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.SecurityContextPersistenceFilter.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:237)
> > at
> >
> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> > at
> >
> com.isa.maxaero.web.filter.AuthRedirectFilter.doFilter(AuthRedirectFilter.java:69)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
> > at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> > at
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
> > at
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
> > at
> >
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
> > at
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
> > at
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
> > at
> >
> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)
> > at
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
> > at
> >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:537)
> > at
> >
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1085)
> > at
> >
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:658)
> > at
> >
> org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222)
> > at
> >
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1556)
> > at
> >
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1513)
> > at
> >
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> > at
> >
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> > at
> >
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
> > at java.lang.Thread.run(Thread.java:745)
> >
> >
> > I have to mention that struts2-json-plugin-2.3.29.jar is in my classpath
> > with freemarker-2.3.22.jar. (I have build using maven so all the
> > dependencies load as per configurations)
> >
> > In Action class, I have put following configurations and the calling
> method
> > return 'json' as return value:
> >
> > @Namespace(S2Constants.Namespace.PRIVATE_DASHBOARD)
> > @Results({ @Result(name = "success", value =
> > "/private/user/ui/manageUser.jsp"),
> > @Result(name = "json", value = "", type = JSONResult.class) })
> >
> > Any idea on this...
> >
> > Regards,
> >
> > Vidula Hasaranga
> > Consultant Technology
> >
> > [image: ACCELaero] <http://www.accelaero.com>
> > <
> http://www.worldtravelawards.com/award-travel-technologys-leading-pss-provider-2015
> >
> > Information
> > Systems Associates (Pvt) Ltd, Colombo 3, Sri Lanka
> > Tel *+94112058886* - Mob *+94773799694* - Fax *+971 65528857*
> > *accelaero.com* <http://accelaero.com> ⸰ *LinkedIn*
> > <https://www.linkedin.com/company/information-systems-associates-fze> ⸰
> > *Twitter* <https://twitter.com/isafeeds>
> >
> >
> > On Thu, Jul 7, 2016 at 10:47 AM, Lukasz Lenart <lukaszlen...@apache.org>
> > wrote:
> >
> >> 2016-07-06 9:19 GMT+02:00 Vidula Hasaranga <vhasara...@isa.ae>:
> >> > web.xml
> >> >
> >> >         <filter>
> >> >                 <filter-name>struts2</filter-name>
> >> >
> >>
> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
> >> >                 <init-param>
> >> >                         <param-name>config</param-name>
> >> >                         <param-value>struts-default.xml,
> >> >                                 struts-plugin.xml,
> >> >
>  /WEB-INF/struts-config.xml</param-value>
> >>
> >> This is the issue and it never worked - Struts doesn't lookup for
> >> resources in /WEB-INF folder. The best option is to drop this
> >> configuration and rename "struts-config.xml" into "struts.xml" and put
> >> it under "classes" folder (or if you are using Maven put it under
> >> "resources")
> >>
> >>
> >> Regards
> >> --
> >> Łukasz
> >> + 48 606 323 122 http://www.lenart.org.pl/
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
> >> For additional commands, e-mail: user-h...@struts.apache.org
> >>
> >>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
> For additional commands, e-mail: user-h...@struts.apache.org
>
>

Reply via email to