[ 
https://issues.apache.org/jira/browse/WW-4198?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13925313#comment-13925313
 ] 

ASF GitHub Bot commented on WW-4198:
------------------------------------

GitHub user lukaszlenart opened a pull request:

    https://github.com/apache/struts/pull/3

    Extends UrlValidator to support custom regex

    This PR is related to 
[WW-4198](https://issues.apache.org/jira/browse/WW-4198)

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/apache/struts 
feature/WW-4198-update-form-close

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/struts/pull/3.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #3
    
----
commit 31be88afa28fb9b1e9854d0d7673ab9b979cf9be
Author: Lukasz Lenart <lukaszlen...@apache.org>
Date:   2014-03-09T20:01:15Z

    Extends validator to allow set predefined regex used to validate URLs

commit 3457a656ba95539145ef3b19d254fe0129b4d187
Author: Lukasz Lenart <lukaszlen...@apache.org>
Date:   2014-03-09T20:01:44Z

    Marks method as deprecated

commit 3f6ce657da3ac6c133939bfcebb4e4e5f6bd2bc1
Author: Lukasz Lenart <lukaszlen...@apache.org>
Date:   2014-03-09T20:02:27Z

    Adds usage of new urlRegex field in client side validation

commit e66a3062992fac588cf3f570a224bbe7d9ce5ef5
Author: Lukasz Lenart <lukaszlen...@apache.org>
Date:   2014-03-09T20:04:11Z

    Extends annotation to support new URL regex parameters

----


> Template form-close-validate.ftl incompatible with URLValidator
> ---------------------------------------------------------------
>
>                 Key: WW-4198
>                 URL: https://issues.apache.org/jira/browse/WW-4198
>             Project: Struts 2
>          Issue Type: Bug
>    Affects Versions: 2.3.15, 2.3.15.1
>            Reporter: Bruno Klava
>            Assignee: Lukasz Lenart
>             Fix For: 2.3.17
>
>
> In Struts 2.3.15 the form-close-validate.ftl template was updated to use the 
> regex field, but there is no such field in 
> com.opensymphony.xwork2.validator.annotations.UrlValidator neither a default 
> value for it in com.opensymphony.xwork2.validator.validators.URLValidator 
> (like is done in com.opensymphony.xwork2.validator.validators.EmailValidator).
> -----------------------------------------------
> {noformat}
> HTTP Status 500 - Expression validator.regex is undefined on line 123, column 
> 106 in template/xhtml/form-close-validate.ftl. - Class: 
> freemarker.core.TemplateObject
> type Exception report
> message Expression validator.regex is undefined on line 123, column 106 in 
> template/xhtml/form-close-validate.ftl. - Class: 
> freemarker.core.TemplateObject
> description The server encountered an internal error that prevented it from 
> fulfilling this request.
> {noformat}
> exception
> {noformat}
> org.apache.jasper.JasperException: Expression validator.regex is undefined on 
> line 123, column 106 in template/xhtml/form-close-validate.ftl. - Class: 
> freemarker.core.TemplateObject
> File: TemplateObject.java
> Method: assertNonNull
> Line: 125 - freemarker/core/TemplateObject.java:125:-1
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:472)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
>       
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:96)
>       
> org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:164)
>       
> org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:371)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:275)
>       
> org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:167)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
>       
> org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:191)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:73)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:91)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:252)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:161)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:193)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
>       
> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:563)
>       
> org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>       
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
> root cause
> Expression validator.regex is undefined on line 123, column 106 in 
> template/xhtml/form-close-validate.ftl. - Class: 
> freemarker.core.TemplateObject
> File: TemplateObject.java
> Method: assertNonNull
> Line: 125 - freemarker/core/TemplateObject.java:125:-1
>       org.apache.struts2.components.UIBean.end(UIBean.java:528)
>       
> org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42)
>       
> org.apache.jsp.WEB_002dINF.content.index_jsp._jspx_meth_s_005fform_005f0(index_jsp.java:193)
>       
> org.apache.jsp.WEB_002dINF.content.index_jsp._jspService(index_jsp.java:99)
>       org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
>       
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:96)
>       
> org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:164)
>       
> org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:371)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:275)
>       
> org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:167)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
>       
> org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:191)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:73)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:91)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:252)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:161)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:193)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
>       
> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:563)
>       
> org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>       
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
> root cause
> freemarker.core.InvalidReferenceException: Expression validator.regex is 
> undefined on line 123, column 106 in template/xhtml/form-close-validate.ftl.
>       freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:125)
>       freemarker.core.Expression.getStringValue(Expression.java:118)
>       freemarker.core.Expression.getStringValue(Expression.java:93)
>       
> freemarker.core.StringBuiltins$StringBuiltIn._getAsTemplateModel(StringBuiltins.java:71)
>       freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
>       freemarker.core.Expression.getStringValue(Expression.java:93)
>       freemarker.core.DollarVariable.accept(DollarVariable.java:76)
>       freemarker.core.Environment.visit(Environment.java:221)
>       freemarker.core.MixedContent.accept(MixedContent.java:92)
>       freemarker.core.Environment.visit(Environment.java:221)
>       freemarker.core.IfBlock.accept(IfBlock.java:82)
>       freemarker.core.Environment.visit(Environment.java:221)
>       freemarker.core.MixedContent.accept(MixedContent.java:92)
>       freemarker.core.Environment.visit(Environment.java:221)
>       freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:167)
>       freemarker.core.Environment.visit(Environment.java:428)
>       freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
>       freemarker.core.Environment.visit(Environment.java:221)
>       freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:167)
>       freemarker.core.Environment.visit(Environment.java:428)
>       freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
>       freemarker.core.Environment.visit(Environment.java:221)
>       freemarker.core.MixedContent.accept(MixedContent.java:92)
>       freemarker.core.Environment.visit(Environment.java:221)
>       freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79)
>       freemarker.core.Environment.visit(Environment.java:221)
>       freemarker.core.MixedContent.accept(MixedContent.java:92)
>       freemarker.core.Environment.visit(Environment.java:221)
>       freemarker.core.Environment.include(Environment.java:1508)
>       freemarker.core.Include.accept(Include.java:169)
>       freemarker.core.Environment.visit(Environment.java:221)
>       freemarker.core.MixedContent.accept(MixedContent.java:92)
>       freemarker.core.Environment.visit(Environment.java:221)
>       freemarker.core.Environment.process(Environment.java:199)
>       freemarker.template.Template.process(Template.java:259)
>       
> org.apache.struts2.components.template.FreemarkerTemplateEngine.renderTemplate(FreemarkerTemplateEngine.java:157)
>       org.apache.struts2.components.UIBean.mergeTemplate(UIBean.java:572)
>       org.apache.struts2.components.UIBean.end(UIBean.java:526)
>       
> org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42)
>       
> org.apache.jsp.WEB_002dINF.content.index_jsp._jspx_meth_s_005fform_005f0(index_jsp.java:193)
>       
> org.apache.jsp.WEB_002dINF.content.index_jsp._jspService(index_jsp.java:99)
>       org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
>       
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:96)
>       
> org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:164)
>       
> org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:371)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:275)
>       
> org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:167)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
>       
> org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:191)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:73)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:91)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:252)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
>       
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:161)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:193)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
>       
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
>       
> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
>       
> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:563)
>       
> org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
>       
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to