[jira] [Closed] (WW-5060) Struts 2 Rest Plugin Conversion Issue

2024-06-23 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart closed WW-5060.
-
Resolution: Not A Problem

> Struts 2 Rest Plugin Conversion Issue
> -
>
> Key: WW-5060
> URL: https://issues.apache.org/jira/browse/WW-5060
> Project: Struts 2
>  Issue Type: Bug
>  Components: Other
>Affects Versions: 2.3.1
>Reporter: Ronak Jain
>Priority: Major
> Fix For: 6.5.0
>
>
> I integrated strust2 convention plugin and rest plugin.
> When a request come to server where my field is long and I am sending a 
> string then default stacktrace occurs.
> I want to handle the exception from my side but before request come to any 
> interceptor, it is throwing exception.
> My configuration:
> {code:xml}
>  class="org.apache.struts2.rest.handler.JacksonLibHandler"/>
> 
> 
>   
>  class="org.apache.struts2.views.tiles.TilesResult" />
>  class="com.elitecore.neoxemsippbx.coreneoxemsippbx.ep.util.EliteJsonResult" />
>   
>   
>  class="com.elitecore.neoxemsippbx.system.interceptor.TransactionInterceptor"/>
>  class="com.elitecore.neoxemsippbx.system.interceptor.AuditInterceptor" />
>  class="com.elitecore.neoxemsippbx.system.interceptor.CustomRestWorkflowInterceptor"/>
> 
>   
>  name="excludeMethods">deleteConfirm,cacheServerGroups,validateRuleset
>   
>   
>   
> *
>   
>   
> 
>   
>   
> ${actionChainUrl}
>  type="tiles">commons/general/UnhandledException
> commons/general/Error
> ${actionChainUrl}
>  type="tiles">ServerManagerWelcome
> ${actionChainUrl}
>  type="tiles">${actionChainUrl}
>  type="tiles">_${actionChainUrl}
>  type="tiles">${actionChainUrl}
> ${actionChainUrl}
> ${actionChainUrl}
> 
> 
> 
>   attachment;filename=${fileName}
>   $(contentType)
>   fileInputStream
>   1024
> 
> 
>   
>   false
>   
>   ${includeSearchProperties}
> 
>   
>   
>  exception="java.lang.Throwable">
>  exception="java.lang.RuntimeException">
>   
> 
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (WW-5060) Struts 2 Rest Plugin Conversion Issue

2024-06-23 Thread Lukasz Lenart (Jira)


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

Lukasz Lenart commented on WW-5060:
---

Do you use Struts JSON plugin as well? Looks like you are mixing REST plugin 
which has it's own JSON handlers with JSON plugin - this won't work.

> Struts 2 Rest Plugin Conversion Issue
> -
>
> Key: WW-5060
> URL: https://issues.apache.org/jira/browse/WW-5060
> Project: Struts 2
>  Issue Type: Bug
>  Components: Other
>Affects Versions: 2.3.1
>Reporter: Ronak Jain
>Priority: Major
> Fix For: 6.5.0
>
>
> I integrated strust2 convention plugin and rest plugin.
> When a request come to server where my field is long and I am sending a 
> string then default stacktrace occurs.
> I want to handle the exception from my side but before request come to any 
> interceptor, it is throwing exception.
> My configuration:
> {code:xml}
>  class="org.apache.struts2.rest.handler.JacksonLibHandler"/>
> 
> 
>   
>  class="org.apache.struts2.views.tiles.TilesResult" />
>  class="com.elitecore.neoxemsippbx.coreneoxemsippbx.ep.util.EliteJsonResult" />
>   
>   
>  class="com.elitecore.neoxemsippbx.system.interceptor.TransactionInterceptor"/>
>  class="com.elitecore.neoxemsippbx.system.interceptor.AuditInterceptor" />
>  class="com.elitecore.neoxemsippbx.system.interceptor.CustomRestWorkflowInterceptor"/>
> 
>   
>  name="excludeMethods">deleteConfirm,cacheServerGroups,validateRuleset
>   
>   
>   
> *
>   
>   
> 
>   
>   
> ${actionChainUrl}
>  type="tiles">commons/general/UnhandledException
> commons/general/Error
> ${actionChainUrl}
>  type="tiles">ServerManagerWelcome
> ${actionChainUrl}
>  type="tiles">${actionChainUrl}
>  type="tiles">_${actionChainUrl}
>  type="tiles">${actionChainUrl}
> ${actionChainUrl}
> ${actionChainUrl}
> 
> 
> 
>   attachment;filename=${fileName}
>   $(contentType)
>   fileInputStream
>   1024
> 
> 
>   
>   false
>   
>   ${includeSearchProperties}
> 
>   
>   
>  exception="java.lang.Throwable">
>  exception="java.lang.RuntimeException">
>   
> 
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5060) Struts 2 Rest Plugin Conversion Issue

2024-06-23 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart updated WW-5060:
--
Description: 
I integrated strust2 convention plugin and rest plugin.
When a request come to server where my field is long and I am sending a string 
then default stacktrace occurs.
I want to handle the exception from my side but before request come to any 
interceptor, it is throwing exception.

My configuration:

{code:xml}



  


  
  




  
deleteConfirm,cacheServerGroups,validateRuleset
  
  
  
*
  
  

  
  
${actionChainUrl}
commons/general/UnhandledException
commons/general/Error
${actionChainUrl}
ServerManagerWelcome
${actionChainUrl}
${actionChainUrl}
_${actionChainUrl}
${actionChainUrl}
${actionChainUrl}
${actionChainUrl}



  attachment;filename=${fileName}
  $(contentType)
  fileInputStream
  1024


  
  false
  
  ${includeSearchProperties}

  
  


  

{code}

  was:
I integrated strust2 convention plugin and rest plugin.
When a request come to server where my field is long and I am sending a string 
then default stacktrace occurs.
I want to handle the exception from my side but before request come to any 
interceptor, it is throwing exception.

My configuration:

{code:xml}



  


  
  




  
deleteConfirm,cacheServerGroups,validateRuleset
  
  
  
*
  
  

  
  
${actionChainUrl}
commons/general/UnhandledException
commons/general/Error
${actionChainUrl}
ServerManagerWelcome
${actionChainUrl}
${actionChainUrl}
_${actionChainUrl}
${actionChainUrl}
${actionChainUrl}
${actionChainUrl}



  attachment;filename=${fileName}
  $(contentType)
  fileInputStream
  1024


  
  false
  
  ${includeSearchProperties}

  
  


  

{code:xml}


> Struts 2 Rest Plugin Conversion Issue
> -
>
> Key: WW-5060
> URL: https://issues.apache.org/jira/browse/WW-5060
> Project: Struts 2
>  Issue Type: Bug
>  Components: Other
>Affects Versions: 2.3.1
>Reporter: Ronak Jain
>Priority: Major
> Fix For: 6.5.0
>
>
> I integrated strust2 convention plugin and rest plugin.
> When a request come to server where my field is long and I am sending a 
> string then default stacktrace occurs.
> I want to handle the exception from my side but before request come to any 
> interceptor, it is throwing exception.
> My configuration:
> {code:xml}
>  class="org.apache.struts2.rest.handler.JacksonLibHandler"/>
> 
> 
>   
>  class="org.apache.struts2.views.tiles.TilesResult" />
>  class="com.elitecore.neoxemsippbx.coreneoxemsippbx.ep.util.EliteJsonResult" />
>   
>   
>  class="com.elitecore.neoxemsippbx.system.interceptor.TransactionInterceptor"/>
>  class="com.elitecore.neoxemsippbx.system.interceptor.AuditInterceptor" />
>  class="com.elitecore.neoxemsippbx.system.interceptor.CustomRestWorkflowInterceptor"/>
> 
>   
>  name="excludeMethods">deleteConfirm,cacheServerGroups,validateRuleset
>   
>   
>   
> *
>   
>   
> 
>   
>   
> ${actionChainUrl}
>  type="tiles">commons/general/UnhandledException
> commons/general/Error
> ${actionChainUrl}
>  type="tiles">ServerManagerWelcome
> ${actionChainUrl}
>  type="tiles">${actionChainUrl}
>  type="tiles">_${actionChainUrl}
>  type="tiles">${actionChainUrl}
> ${actionChainUrl}
> ${actionChainUrl}
> 
> 
> 
>   attachment;filename=${fileName}
>   $(contentType)
>   fileInputStream
>   1024
> 
> 
>   
>   false
>   
>   ${includeSearchProperties}
> 
>   
>   
>  exception="java.lang.Throwable">
>  exception="java.lang.RuntimeException">
>   
> 
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5060) Struts 2 Rest Plugin Conversion Issue

2024-06-23 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart updated WW-5060:
--
Description: 
I integrated strust2 convention plugin and rest plugin.
When a request come to server where my field is long and I am sending a string 
then default stacktrace occurs.
I want to handle the exception from my side but before request come to any 
interceptor, it is throwing exception.

My configuration:

{code:xml}



  


  
  




  
deleteConfirm,cacheServerGroups,validateRuleset
  
  
  
*
  
  

  
  
${actionChainUrl}
commons/general/UnhandledException
commons/general/Error
${actionChainUrl}
ServerManagerWelcome
${actionChainUrl}
${actionChainUrl}
_${actionChainUrl}
${actionChainUrl}
${actionChainUrl}
${actionChainUrl}



  attachment;filename=${fileName}
  $(contentType)
  fileInputStream
  1024


  
  false
  
  ${includeSearchProperties}

  
  


  

{code:xml}

  was:
I integrated strust2 convention plugin and rest plugin.
When a request come to server where my field is long and I am sending a string 
then default stacktrace occurs.
I want to handle the exception from my side but before request come to any 
interceptor, it is throwing exception.

My configuration:

{noformat}



  


  
  




  
deleteConfirm,cacheServerGroups,validateRuleset
  
  
  
*
  
  

  
  
${actionChainUrl}
commons/general/UnhandledException
commons/general/Error
${actionChainUrl}
ServerManagerWelcome
${actionChainUrl}
${actionChainUrl}
_${actionChainUrl}
${actionChainUrl}
${actionChainUrl}
${actionChainUrl}



  attachment;filename=${fileName}
  $(contentType)
  fileInputStream
  1024


  
  false
  
  ${includeSearchProperties}

  
  


  

{noformat}


> Struts 2 Rest Plugin Conversion Issue
> -
>
> Key: WW-5060
> URL: https://issues.apache.org/jira/browse/WW-5060
> Project: Struts 2
>  Issue Type: Bug
>  Components: Other
>Affects Versions: 2.3.1
>Reporter: Ronak Jain
>Priority: Major
> Fix For: 6.5.0
>
>
> I integrated strust2 convention plugin and rest plugin.
> When a request come to server where my field is long and I am sending a 
> string then default stacktrace occurs.
> I want to handle the exception from my side but before request come to any 
> interceptor, it is throwing exception.
> My configuration:
> {code:xml}
>  class="org.apache.struts2.rest.handler.JacksonLibHandler"/>
> 
> 
>   
>  class="org.apache.struts2.views.tiles.TilesResult" />
>  class="com.elitecore.neoxemsippbx.coreneoxemsippbx.ep.util.EliteJsonResult" />
>   
>   
>  class="com.elitecore.neoxemsippbx.system.interceptor.TransactionInterceptor"/>
>  class="com.elitecore.neoxemsippbx.system.interceptor.AuditInterceptor" />
>  class="com.elitecore.neoxemsippbx.system.interceptor.CustomRestWorkflowInterceptor"/>
> 
>   
>  name="excludeMethods">deleteConfirm,cacheServerGroups,validateRuleset
>   
>   
>   
> *
>   
>   
> 
>   
>   
> ${actionChainUrl}
>  type="tiles">commons/general/UnhandledException
> commons/general/Error
> ${actionChainUrl}
>  type="tiles">ServerManagerWelcome
> ${actionChainUrl}
>  type="tiles">${actionChainUrl}
>  type="tiles">_${actionChainUrl}
>  type="tiles">${actionChainUrl}
> ${actionChainUrl}
> ${actionChainUrl}
> 
> 
> 
>   attachment;filename=${fileName}
>   $(contentType)
>   fileInputStream
>   1024
> 
> 
>   
>   false
>   
>   ${includeSearchProperties}
> 
>   
>   
>  exception="java.lang.Throwable">
>  exception="java.lang.RuntimeException">
>   
> 
> {code:xml}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5060) Struts 2 Rest Plugin Conversion Issue

2024-06-23 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart updated WW-5060:
--
Description: 
I integrated strust2 convention plugin and rest plugin.
When a request come to server where my field is long and I am sending a string 
then default stacktrace occurs.
I want to handle the exception from my side but before request come to any 
interceptor, it is throwing exception.

My configuration:

{noformat}



  


  
  




  
deleteConfirm,cacheServerGroups,validateRuleset
  
  
  
*
  
  

  
  
${actionChainUrl}
commons/general/UnhandledException
commons/general/Error
${actionChainUrl}
ServerManagerWelcome
${actionChainUrl}
${actionChainUrl}
_${actionChainUrl}
${actionChainUrl}
${actionChainUrl}
${actionChainUrl}



  attachment;filename=${fileName}
  $(contentType)
  fileInputStream
  1024


  
  false
  
  ${includeSearchProperties}

  
  


  

{noformat}

  was:
I integrated strust2 convention plugin and rest plugin.
When a request come to server where my field is long and I am sending a string 
then default stacktrace occurs.
I want to handle the exception from my side but before request come to any 
interceptor, it is throwing exception.

My configuration :

{code:xml}



  


  
  




  
deleteConfirm,cacheServerGroups,validateRuleset
  
  
  
*
  
  

  
  
${actionChainUrl}
commons/general/UnhandledException
commons/general/Error
${actionChainUrl}
ServerManagerWelcome
${actionChainUrl}
${actionChainUrl}
_${actionChainUrl}
${actionChainUrl}
${actionChainUrl}
${actionChainUrl}



  attachment;filename=${fileName}
  $(contentType)
  fileInputStream
  1024


  
  false
  
  ${includeSearchProperties}

  
  


  

{code:xml}


> Struts 2 Rest Plugin Conversion Issue
> -
>
> Key: WW-5060
> URL: https://issues.apache.org/jira/browse/WW-5060
> Project: Struts 2
>  Issue Type: Bug
>  Components: Other
>Affects Versions: 2.3.1
>Reporter: Ronak Jain
>Priority: Major
> Fix For: 6.5.0
>
>
> I integrated strust2 convention plugin and rest plugin.
> When a request come to server where my field is long and I am sending a 
> string then default stacktrace occurs.
> I want to handle the exception from my side but before request come to any 
> interceptor, it is throwing exception.
> My configuration:
> {noformat}
>  class="org.apache.struts2.rest.handler.JacksonLibHandler"/>
> 
> 
>   
>  class="org.apache.struts2.views.tiles.TilesResult" />
>  class="com.elitecore.neoxemsippbx.coreneoxemsippbx.ep.util.EliteJsonResult" />
>   
>   
>  class="com.elitecore.neoxemsippbx.system.interceptor.TransactionInterceptor"/>
>  class="com.elitecore.neoxemsippbx.system.interceptor.AuditInterceptor" />
>  class="com.elitecore.neoxemsippbx.system.interceptor.CustomRestWorkflowInterceptor"/>
> 
>   
>  name="excludeMethods">deleteConfirm,cacheServerGroups,validateRuleset
>   
>   
>   
> *
>   
>   
> 
>   
>   
> ${actionChainUrl}
>  type="tiles">commons/general/UnhandledException
> commons/general/Error
> ${actionChainUrl}
>  type="tiles">ServerManagerWelcome
> ${actionChainUrl}
>  type="tiles">${actionChainUrl}
>  type="tiles">_${actionChainUrl}
>  type="tiles">${actionChainUrl}
> ${actionChainUrl}
> ${actionChainUrl}
> 
> 
> 
>   attachment;filename=${fileName}
>   $(contentType)
>   fileInputStream
>   1024
> 
> 
>   
>   false
>   
>   ${includeSearchProperties}
> 
>   
>   
>  exception="java.lang.Throwable">
>  exception="java.lang.RuntimeException">
>   
> 
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5060) Struts 2 Rest Plugin Conversion Issue

2024-06-23 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart updated WW-5060:
--
Description: 
I integrated strust2 convention plugin and rest plugin.
When a request come to server where my field is long and I am sending a string 
then default stacktrace occurs.
I want to handle the exception from my side but before request come to any 
interceptor, it is throwing exception.

My configuration :

{code:xml}



  


  
  




  
deleteConfirm,cacheServerGroups,validateRuleset
  
  
  
*
  
  

  
  
${actionChainUrl}
commons/general/UnhandledException
commons/general/Error
${actionChainUrl}
ServerManagerWelcome
${actionChainUrl}
${actionChainUrl}
_${actionChainUrl}
${actionChainUrl}
${actionChainUrl}
${actionChainUrl}



  attachment;filename=${fileName}
  $(contentType)
  fileInputStream
  1024


  
  false
  
  ${includeSearchProperties}

  
  


  

{code:xml}

  was:
I integrated strust2 convention plugin and rest plugin.
When a request come to server where my field is long and I am sending a string 
then default stacktrace occurs.
I want to handle the exception from my side but before request come to any 
interceptor, it is throwing exception.

My configuration :

{code:xml}






  


  
  




  
deleteConfirm,cacheServerGroups,validateRuleset
  
  
  
*
  
  


  
  
${actionChainUrl}
commons/general/UnhandledException
commons/general/Error
${actionChainUrl}
ServerManagerWelcome
${actionChainUrl}
${actionChainUrl}
_${actionChainUrl}
${actionChainUrl}
${actionChainUrl}
${actionChainUrl}



  attachment;filename=${fileName}
  $(contentType)
  fileInputStream
  1024



  
  false
  
  ${includeSearchProperties}

  

  


  

{code:xml}


> Struts 2 Rest Plugin Conversion Issue
> -
>
> Key: WW-5060
> URL: https://issues.apache.org/jira/browse/WW-5060
> Project: Struts 2
>  Issue Type: Bug
>  Components: Other
>Affects Versions: 2.3.1
>Reporter: Ronak Jain
>Priority: Major
> Fix For: 6.5.0
>
>
> I integrated strust2 convention plugin and rest plugin.
> When a request come to server where my field is long and I am sending a 
> string then default stacktrace occurs.
> I want to handle the exception from my side but before request come to any 
> interceptor, it is throwing exception.
> My configuration :
> {code:xml}
>  class="org.apache.struts2.rest.handler.JacksonLibHandler"/>
> 
> 
>   
>  class="org.apache.struts2.views.tiles.TilesResult" />
>  class="com.elitecore.neoxemsippbx.coreneoxemsippbx.ep.util.EliteJsonResult" />
>   
>   
>  class="com.elitecore.neoxemsippbx.system.interceptor.TransactionInterceptor"/>
>  class="com.elitecore.neoxemsippbx.system.interceptor.AuditInterceptor" />
>  class="com.elitecore.neoxemsippbx.system.interceptor.CustomRestWorkflowInterceptor"/>
> 
>   
>  name="excludeMethods">deleteConfirm,cacheServerGroups,validateRuleset
>   
>   
>   
> *
>   
>   
> 
>   
>   
> ${actionChainUrl}
>  type="tiles">commons/general/UnhandledException
> commons/general/Error
> ${actionChainUrl}
>  type="tiles">ServerManagerWelcome
> ${actionChainUrl}
>  type="tiles">${actionChainUrl}
>  type="tiles">_${actionChainUrl}
>  type="tiles">${actionChainUrl}
> ${actionChainUrl}
> ${actionChainUrl}
> 
> 
> 
>   attachment;filename=${fileName}
>   $(contentType)
>   fileInputStream
>   1024
> 
> 
>   
>   false
>   
>   ${includeSearchProperties}
> 
>   
>   
>  exception="java.lang.Throwable">
>  exception="java.lang.RuntimeException">
>   
> 
> {code:xml}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5060) Struts 2 Rest Plugin Conversion Issue

2024-06-23 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart updated WW-5060:
--
Description: 
I integrated strust2 convention plugin and rest plugin.
When a request come to server where my field is long and I am sending a string 
then default stacktrace occurs.
I want to handle the exception from my side but before request come to any 
interceptor, it is throwing exception.

My configuration :

{code:xml}






  


  
  




  
deleteConfirm,cacheServerGroups,validateRuleset
  
  
  
*
  
  


  
  
${actionChainUrl}
commons/general/UnhandledException
commons/general/Error
${actionChainUrl}
ServerManagerWelcome
${actionChainUrl}
${actionChainUrl}
_${actionChainUrl}
${actionChainUrl}
${actionChainUrl}
${actionChainUrl}



  attachment;filename=${fileName}
  $(contentType)
  fileInputStream
  1024



  
  false
  
  ${includeSearchProperties}

  

  


  

{code:xml}

  was:
I integrated strust2 convention plugin and rest plugin.
When a request come to server where my field is long and I am sending a string 
then default stacktrace occurs.
I want to handle the exception from my side but before request come to any 
interceptor, it is throwing exception.

My configuration :

{code:xml}







 
 
 
 
 
 
 
 
 
 deleteConfirm,cacheServerGroups,validateRuleset
 
 
 
 *
 
 
 


 
 ${actionChainUrl}
 commons/general/UnhandledException
 commons/general/Error
 ${actionChainUrl}
 ServerManagerWelcome
 ${actionChainUrl}
 ${actionChainUrl}
 _${actionChainUrl}
 ${actionChainUrl}
 ${actionChainUrl}
 ${actionChainUrl}
 
 
 
 attachment;filename=${fileName}
 $(contentType)
 fileInputStream
 1024
 


 
 false
 
 ${includeSearchProperties}
 
 


 
 
 
 
{code:xml}


> Struts 2 Rest Plugin Conversion Issue
> -
>
> Key: WW-5060
> URL: https://issues.apache.org/jira/browse/WW-5060
> Project: Struts 2
>  Issue Type: Bug
>  Components: Other
>Affects Versions: 2.3.1
>Reporter: Ronak Jain
>Priority: Major
> Fix For: 6.5.0
>
>
> I integrated strust2 convention plugin and rest plugin.
> When a request come to server where my field is long and I am sending a 
> string then default stacktrace occurs.
> I want to handle the exception from my side but before request come to any 
> interceptor, it is throwing exception.
> My configuration :
> {code:xml}
>  name="jackson" class="org.apache.struts2.rest.handler.JacksonLibHandler"/>
> 
> 
>   
>  class="org.apache.struts2.views.tiles.TilesResult" />
>  class="com.elitecore.neoxemsippbx.coreneoxemsippbx.ep.util.EliteJsonResult" />
>   
>   
>  class="com.elitecore.neoxemsippbx.system.interceptor.TransactionInterceptor"/>
>  class="com.elitecore.neoxemsippbx.system.interceptor.AuditInterceptor" />
>  class="com.elitecore.neoxemsippbx.system.interceptor.CustomRestWorkflowInterceptor"/>
> 
>   
>  name="excludeMethods">deleteConfirm,cacheServerGroups,validateRuleset
>   
>   
>   
> *
>   
>   
> 
>   
>   
> ${actionChainUrl}
>  type="tiles">commons/general/UnhandledException
> commons/general/Error
> ${actionChainUrl}
>  type="tiles">ServerManagerWelcome
> ${actionChainUrl}
>  type="tiles">${actionChainUrl}
>  type="tiles">_${actionChainUrl}
>  type="tiles">${actionChainUrl}
> ${actionChainUrl}
> ${actionChainUrl}
> 
> 
> 
>   attachment;filename=${fileName}
>   $(contentType)
>   fileInputStream
>   1024
> 
> 
>   
>   false
>   
>   ${includeSearchProperties}
> 
>   
>   
>  exception="java.lang.Throwable">
>  exception="java.lang.RuntimeException">
>   
> 
> {code:xml}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5060) Struts 2 Rest Plugin Conversion Issue

2024-06-23 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart updated WW-5060:
--
Description: 
I integrated strust2 convention plugin and rest plugin.
When a request come to server where my field is long and I am sending a string 
then default stacktrace occurs.
I want to handle the exception from my side but before request come to any 
interceptor, it is throwing exception.

My configuration :

{code:xml}







 
 
 
 
 
 
 
 
 
 deleteConfirm,cacheServerGroups,validateRuleset
 
 
 
 *
 
 
 


 
 ${actionChainUrl}
 commons/general/UnhandledException
 commons/general/Error
 ${actionChainUrl}
 ServerManagerWelcome
 ${actionChainUrl}
 ${actionChainUrl}
 _${actionChainUrl}
 ${actionChainUrl}
 ${actionChainUrl}
 ${actionChainUrl}
 
 
 
 attachment;filename=${fileName}
 $(contentType)
 fileInputStream
 1024
 


 
 false
 
 ${includeSearchProperties}
 
 


 
 
 
 
{code:xml}

  was:
 I integrated strust2 convention plugin and rest plugin.

When a request come to server where my field is long and I am sending a string 
then default stacktrace occurs.

I want to handle the exception from my side but before request come to any 
interceptor, it is throwing exception.

 

My configuration :


 

 




 
 
 
 
 
 
 
 
 
 deleteConfirm,cacheServerGroups,validateRuleset
 
 
 
 *
 
 
 


 
 ${actionChainUrl}
 commons/general/UnhandledException
 commons/general/Error
 ${actionChainUrl}
 ServerManagerWelcome
 ${actionChainUrl}
 ${actionChainUrl}
 _${actionChainUrl}
 ${actionChainUrl}
 ${actionChainUrl}
 ${actionChainUrl}
 
 
 
 attachment;filename=${fileName}
 $(contentType)
 fileInputStream
 1024
 


 
 false
 
 ${includeSearchProperties}
 
 


 
 
 
 


> Struts 2 Rest Plugin Conversion Issue
> -
>
> Key: WW-5060
> URL: https://issues.apache.org/jira/browse/WW-5060
> Project: Struts 2
>  Issue Type: Bug
>  Components: Other
>Affects Versions: 2.3.1
>Reporter: Ronak Jain
>Priority: Major
> Fix For: 6.5.0
>
>
> I integrated strust2 convention plugin and rest plugin.
> When a request come to server where my field is long and I am sending a 
> string then default stacktrace occurs.
> I want to handle the exception from my side but before request come to any 
> interceptor, it is throwing exception.
> My configuration :
> {code:xml}
>  name="jackson" class="org.apache.struts2.rest.handler.JacksonLibHandler"/>
> 
> 
> 
>   />
>   class="com.elitecore.neoxemsippbx.coreneoxemsippbx.ep.util.EliteJsonResult" />
>  
>  
>   class="com.elitecore.neoxemsippbx.system.interceptor.TransactionInterceptor">
>   class="com.elitecore.neoxemsippbx.system.interceptor.AuditInterceptor" />
>   class="com.elitecore.neoxemsippbx.system.interceptor.CustomRestWorkflowInterceptor"/>
>  
>  
>   name="excludeMethods">deleteConfirm,cacheServerGroups,validateRuleset
>  
>  
>  
>  *
>  
>  
>  
> 
>  
>  ${actionChainUrl}
>   type="tiles">commons/general/UnhandledException
>  commons/general/Error
>  ${actionChainUrl}
>   type="tiles">ServerManagerWelcome
>  ${actionChainUrl}
>   type="tiles">${actionChainUrl}
>  _${actionChainUrl}
>  ${actionChainUrl}
>  ${actionChainUrl}
>  ${actionChainUrl}
>  
>  
>  
>  attachment;filename=${fileName}
>  $(contentType)
>  fileInputStream
>  1024
>  
> 
>  
>  false
>  
>  ${includeSearchProperties}
>  
>  
> 
>   exception="java.lang.Throwable">
>   exception="java.lang.RuntimeException">
>  
>  
> {code:xml}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (WW-5435) Bump org.apache.felix:org.apache.felix.main from 6.0.3 to 7.0.5

2024-06-23 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5435?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart resolved WW-5435.
---
Resolution: Fixed

> Bump org.apache.felix:org.apache.felix.main from 6.0.3 to 7.0.5
> ---
>
> Key: WW-5435
> URL: https://issues.apache.org/jira/browse/WW-5435
> Project: Struts 2
>  Issue Type: Dependency
>  Components: Plugin - OSGi
>Reporter: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>
> Bump org.apache.felix:org.apache.felix.main from 6.0.3 to 7.0.5



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (WW-5435) Bump org.apache.felix:org.apache.felix.main from 6.0.3 to 7.0.5

2024-06-23 Thread Lukasz Lenart (Jira)
Lukasz Lenart created WW-5435:
-

 Summary: Bump org.apache.felix:org.apache.felix.main from 6.0.3 to 
7.0.5
 Key: WW-5435
 URL: https://issues.apache.org/jira/browse/WW-5435
 Project: Struts 2
  Issue Type: Dependency
  Components: Plugin - OSGi
Reporter: Lukasz Lenart
 Fix For: 6.5.0


Bump org.apache.felix:org.apache.felix.main from 6.0.3 to 7.0.5



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (WW-5434) Bump commons-validator:commons-validator from 1.8.0 to 1.9.0

2024-06-23 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5434?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart resolved WW-5434.
---
Resolution: Fixed

> Bump commons-validator:commons-validator from 1.8.0 to 1.9.0
> 
>
> Key: WW-5434
> URL: https://issues.apache.org/jira/browse/WW-5434
> Project: Struts 2
>  Issue Type: Dependency
>  Components: Core
>Reporter: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>
> Bump commons-validator:commons-validator from 1.8.0 to 1.9.0



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (WW-5434) Bump commons-validator:commons-validator from 1.8.0 to 1.9.0

2024-06-23 Thread Lukasz Lenart (Jira)
Lukasz Lenart created WW-5434:
-

 Summary: Bump commons-validator:commons-validator from 1.8.0 to 
1.9.0
 Key: WW-5434
 URL: https://issues.apache.org/jira/browse/WW-5434
 Project: Struts 2
  Issue Type: Dependency
  Components: Core
Reporter: Lukasz Lenart
 Fix For: 6.5.0


Bump commons-validator:commons-validator from 1.8.0 to 1.9.0



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5431) Mark as deprecated unused constants in FreemarkerManager

2024-06-23 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5431?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart updated WW-5431:
--
Priority: Trivial  (was: Minor)

> Mark as deprecated unused constants in FreemarkerManager
> 
>
> Key: WW-5431
> URL: https://issues.apache.org/jira/browse/WW-5431
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Trivial
> Fix For: 6.5.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Mark as @Deprecated
> {code:java}
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_INCLUDE = "include_page";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PRIVATE = 
> "__FreeMarkerServlet.Request__";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_HASHMODEL_PRIVATE = 
> "__FreeMarkerManager.Request__";
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5431) Mark as deprecated unused constants in FreemarkerManager

2024-06-23 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5431?focusedWorklogId=924053=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-924053
 ]

ASF GitHub Bot logged work on WW-5431:
--

Author: ASF GitHub Bot
Created on: 24/Jun/24 05:40
Start Date: 24/Jun/24 05:40
Worklog Time Spent: 10m 
  Work Description: lukaszlenart merged PR #971:
URL: https://github.com/apache/struts/pull/971




Issue Time Tracking
---

Worklog Id: (was: 924053)
Time Spent: 0.5h  (was: 20m)

> Mark as deprecated unused constants in FreemarkerManager
> 
>
> Key: WW-5431
> URL: https://issues.apache.org/jira/browse/WW-5431
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Mark as @Deprecated
> {code:java}
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_INCLUDE = "include_page";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PRIVATE = 
> "__FreeMarkerServlet.Request__";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_HASHMODEL_PRIVATE = 
> "__FreeMarkerManager.Request__";
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (WW-5431) Mark as deprecated unused constants in FreemarkerManager

2024-06-23 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5431?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart resolved WW-5431.
---
Resolution: Fixed

> Mark as deprecated unused constants in FreemarkerManager
> 
>
> Key: WW-5431
> URL: https://issues.apache.org/jira/browse/WW-5431
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Mark as @Deprecated
> {code:java}
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_INCLUDE = "include_page";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PRIVATE = 
> "__FreeMarkerServlet.Request__";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_HASHMODEL_PRIVATE = 
> "__FreeMarkerManager.Request__";
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (WW-5430) Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader

2024-06-23 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5430?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart resolved WW-5430.
---
Resolution: Fixed

> Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader
> -
>
> Key: WW-5430
> URL: https://issues.apache.org/jira/browse/WW-5430
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 7.0.0
>Reporter: Rubens Gomes
>Priority: Major
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Getting runtime error below with 7.0.0-M6.  It appears that method
>  
> {{org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader}}
> is using {{freemarker.cache.WebappTemplateLoader}} which is based on legacy 
> {{{}javax.servlet{}}}?
> {noformat}
> Note that this is for the legacy "javax" Servlet API; for Jakarta (that 
> is, in modern Servlet containers), use 
> freemarker.ext.jakarta.servlet.WebappTemplateLoader instead (since 2.3.33). 
> ..."
> java.lang.NoSuchMethodError: 'void 
> freemarker.cache.WebappTemplateLoader.(jakarta.servlet.ServletContext)'
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader(FreemarkerManager.java:468)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.init(FreemarkerManager.java:293)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.getConfiguration(FreemarkerManager.java:265)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.DefaultDispatcherErrorHandler.init(DefaultDispatcherErrorHandler.java:66)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:632) 
> ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:48)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:60)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:245)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:102)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3846)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4450)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) 
> ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) 
> ~[na:na]
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5430) Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader

2024-06-23 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5430?focusedWorklogId=924052=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-924052
 ]

ASF GitHub Bot logged work on WW-5430:
--

Author: ASF GitHub Bot
Created on: 24/Jun/24 05:39
Start Date: 24/Jun/24 05:39
Worklog Time Spent: 10m 
  Work Description: lukaszlenart merged PR #970:
URL: https://github.com/apache/struts/pull/970




Issue Time Tracking
---

Worklog Id: (was: 924052)
Time Spent: 40m  (was: 0.5h)

> Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader
> -
>
> Key: WW-5430
> URL: https://issues.apache.org/jira/browse/WW-5430
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 7.0.0
>Reporter: Rubens Gomes
>Priority: Major
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Getting runtime error below with 7.0.0-M6.  It appears that method
>  
> {{org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader}}
> is using {{freemarker.cache.WebappTemplateLoader}} which is based on legacy 
> {{{}javax.servlet{}}}?
> {noformat}
> Note that this is for the legacy "javax" Servlet API; for Jakarta (that 
> is, in modern Servlet containers), use 
> freemarker.ext.jakarta.servlet.WebappTemplateLoader instead (since 2.3.33). 
> ..."
> java.lang.NoSuchMethodError: 'void 
> freemarker.cache.WebappTemplateLoader.(jakarta.servlet.ServletContext)'
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader(FreemarkerManager.java:468)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.init(FreemarkerManager.java:293)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.getConfiguration(FreemarkerManager.java:265)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.DefaultDispatcherErrorHandler.init(DefaultDispatcherErrorHandler.java:66)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:632) 
> ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:48)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:60)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:245)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:102)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3846)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4450)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) 
> ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) 
> ~[na:na]
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5431) Mark as deprecated unused constants in FreemarkerManager

2024-06-21 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5431?focusedWorklogId=924010=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-924010
 ]

ASF GitHub Bot logged work on WW-5431:
--

Author: ASF GitHub Bot
Created on: 21/Jun/24 14:29
Start Date: 21/Jun/24 14:29
Worklog Time Spent: 10m 
  Work Description: lukaszlenart opened a new pull request, #971:
URL: https://github.com/apache/struts/pull/971

   To be removed in Struts 7
   
   Closes [WW-5431](https://issues.apache.org/jira/browse/WW-5431)




Issue Time Tracking
---

Worklog Id: (was: 924010)
Remaining Estimate: 0h
Time Spent: 10m

> Mark as deprecated unused constants in FreemarkerManager
> 
>
> Key: WW-5431
> URL: https://issues.apache.org/jira/browse/WW-5431
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Mark as @Deprecated
> {code:java}
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_INCLUDE = "include_page";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PRIVATE = 
> "__FreeMarkerServlet.Request__";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_HASHMODEL_PRIVATE = 
> "__FreeMarkerManager.Request__";
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5430) Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader

2024-06-21 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5430?focusedWorklogId=924009=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-924009
 ]

ASF GitHub Bot logged work on WW-5430:
--

Author: ASF GitHub Bot
Created on: 21/Jun/24 14:29
Start Date: 21/Jun/24 14:29
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #970:
URL: https://github.com/apache/struts/pull/970#issuecomment-2182081889

   ## [![Quality Gate 
Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png
 'Quality Gate 
Passed')](https://sonarcloud.io/dashboard?id=apache_struts=970) 
**Quality Gate passed**  
   Issues  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 New 
issues](https://sonarcloud.io/project/issues?id=apache_struts=970=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png
 '') [0 Accepted 
issues](https://sonarcloud.io/project/issues?id=apache_struts=970=WONTFIX)
   
   Measures  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_struts=970=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0.0% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=970=new_coverage=list)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0.0% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=970=new_duplicated_lines_density=list)
  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=970)
   
   




Issue Time Tracking
---

Worklog Id: (was: 924009)
Time Spent: 0.5h  (was: 20m)

> Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader
> -
>
> Key: WW-5430
> URL: https://issues.apache.org/jira/browse/WW-5430
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 7.0.0
>Reporter: Rubens Gomes
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Getting runtime error below with 7.0.0-M6.  It appears that method
>  
> {{org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader}}
> is using {{freemarker.cache.WebappTemplateLoader}} which is based on legacy 
> {{{}javax.servlet{}}}?
> {noformat}
> Note that this is for the legacy "javax" Servlet API; for Jakarta (that 
> is, in modern Servlet containers), use 
> freemarker.ext.jakarta.servlet.WebappTemplateLoader instead (since 2.3.33). 
> ..."
> java.lang.NoSuchMethodError: 'void 
> freemarker.cache.WebappTemplateLoader.(jakarta.servlet.ServletContext)'
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader(FreemarkerManager.java:468)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.init(FreemarkerManager.java:293)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.getConfiguration(FreemarkerManager.java:265)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.DefaultDispatcherErrorHandler.init(DefaultDispatcherErrorHandler.java:66)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:632) 
> ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:48)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:60)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:245)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:102)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3846)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4450)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>  

[jira] [Work logged] (WW-5431) Mark as deprecated unused constants in FreemarkerManager

2024-06-21 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5431?focusedWorklogId=924011=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-924011
 ]

ASF GitHub Bot logged work on WW-5431:
--

Author: ASF GitHub Bot
Created on: 21/Jun/24 14:29
Start Date: 21/Jun/24 14:29
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #971:
URL: https://github.com/apache/struts/pull/971#issuecomment-2182094378

   ## [![Quality Gate 
Failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-failed-20px.png
 'Quality Gate 
Failed')](https://sonarcloud.io/dashboard?id=apache_struts=971) 
**Quality Gate failed**  
   Failed conditions  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [C Maintainability Rating on New 
Code](https://sonarcloud.io/dashboard?id=apache_struts=971) 
(required ≥ A)  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=971)
   
   ##   
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/light_bulb-16px.png
 '') Catch issues before they fail your Quality Gate with our IDE extension 
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/sonarlint-16px.png
 '') 
[SonarLint](https://www.sonarsource.com/products/sonarlint/features/connected-mode/?referrer=pull-request)
   
   




Issue Time Tracking
---

Worklog Id: (was: 924011)
Time Spent: 20m  (was: 10m)

> Mark as deprecated unused constants in FreemarkerManager
> 
>
> Key: WW-5431
> URL: https://issues.apache.org/jira/browse/WW-5431
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Mark as @Deprecated
> {code:java}
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_INCLUDE = "include_page";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PRIVATE = 
> "__FreeMarkerServlet.Request__";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_HASHMODEL_PRIVATE = 
> "__FreeMarkerManager.Request__";
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5430) Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader

2024-06-21 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5430?focusedWorklogId=924007=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-924007
 ]

ASF GitHub Bot logged work on WW-5430:
--

Author: ASF GitHub Bot
Created on: 21/Jun/24 14:28
Start Date: 21/Jun/24 14:28
Worklog Time Spent: 10m 
  Work Description: lukaszlenart opened a new pull request, #970:
URL: https://github.com/apache/struts/pull/970

   Closes [WW-5430](https://issues.apache.org/jira/browse/WW-5430)




Issue Time Tracking
---

Worklog Id: (was: 924007)
Remaining Estimate: 0h
Time Spent: 10m

> Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader
> -
>
> Key: WW-5430
> URL: https://issues.apache.org/jira/browse/WW-5430
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 7.0.0
>Reporter: Rubens Gomes
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Getting runtime error below with 7.0.0-M6.  It appears that method
>  
> {{org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader}}
> is using {{freemarker.cache.WebappTemplateLoader}} which is based on legacy 
> {{{}javax.servlet{}}}?
> {noformat}
> Note that this is for the legacy "javax" Servlet API; for Jakarta (that 
> is, in modern Servlet containers), use 
> freemarker.ext.jakarta.servlet.WebappTemplateLoader instead (since 2.3.33). 
> ..."
> java.lang.NoSuchMethodError: 'void 
> freemarker.cache.WebappTemplateLoader.(jakarta.servlet.ServletContext)'
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader(FreemarkerManager.java:468)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.init(FreemarkerManager.java:293)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.getConfiguration(FreemarkerManager.java:265)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.DefaultDispatcherErrorHandler.init(DefaultDispatcherErrorHandler.java:66)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:632) 
> ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:48)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:60)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:245)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:102)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3846)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4450)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) 
> ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) 
> ~[na:na]
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5310) s:url does not handle equal sign correctly

2024-06-21 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5310?focusedWorklogId=924004=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-924004
 ]

ASF GitHub Bot logged work on WW-5310:
--

Author: ASF GitHub Bot
Created on: 21/Jun/24 14:28
Start Date: 21/Jun/24 14:28
Worklog Time Spent: 10m 
  Work Description: lukaszlenart merged PR #968:
URL: https://github.com/apache/struts/pull/968




Issue Time Tracking
---

Worklog Id: (was: 924004)
Time Spent: 3h  (was: 2h 50m)

> s:url does not handle equal sign correctly
> --
>
> Key: WW-5310
> URL: https://issues.apache.org/jira/browse/WW-5310
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Tags
>Affects Versions: 2.5.30, 6.1.2
>Reporter: nikos dimitrakas
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> We discovered a strange case when a URL is passed to s:url. The URL contains 
> an equal sign as part of a parameter value. Example:
> [https://www.scitepress.org/PublicationsDetail.aspx?ID=GjTu91suYQI==1]
> This URL works in the browser even though the equal sign that is part of the 
> value of the parameter ID has not been replaced with %3D.
> When this URL is passed to an s:url as value then the equal sign disappears. 
> When I put a break point in ComponentTagSupport.doStartTag() I can see that 
> the query string has been split and the component.parameters contains the two 
> parameters (ID and t), but the equal sign is missing. 
> The problem seems to be in ServletUrlRenderer.mergeRequestParameters called 
> from beforeRenderUrl. The way the StrutsQueryStringParser.parse splits each 
> param of the queryString on equal sign causes all the equal signs to be used, 
> not just the first. Shouldn't that split be only on the first equal sign so 
> that any remaining equal signs can be considered as part of the value? Just 
> by adding a limit of one to the split should fix this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5430) Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader

2024-06-21 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5430?focusedWorklogId=924008=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-924008
 ]

ASF GitHub Bot logged work on WW-5430:
--

Author: ASF GitHub Bot
Created on: 21/Jun/24 14:28
Start Date: 21/Jun/24 14:28
Worklog Time Spent: 10m 
  Work Description: lukaszlenart commented on PR #970:
URL: https://github.com/apache/struts/pull/970#issuecomment-2182076577

   cc: @rubensgomes (hope the right one :D )




Issue Time Tracking
---

Worklog Id: (was: 924008)
Time Spent: 20m  (was: 10m)

> Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader
> -
>
> Key: WW-5430
> URL: https://issues.apache.org/jira/browse/WW-5430
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 7.0.0
>Reporter: Rubens Gomes
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Getting runtime error below with 7.0.0-M6.  It appears that method
>  
> {{org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader}}
> is using {{freemarker.cache.WebappTemplateLoader}} which is based on legacy 
> {{{}javax.servlet{}}}?
> {noformat}
> Note that this is for the legacy "javax" Servlet API; for Jakarta (that 
> is, in modern Servlet containers), use 
> freemarker.ext.jakarta.servlet.WebappTemplateLoader instead (since 2.3.33). 
> ..."
> java.lang.NoSuchMethodError: 'void 
> freemarker.cache.WebappTemplateLoader.(jakarta.servlet.ServletContext)'
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader(FreemarkerManager.java:468)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.init(FreemarkerManager.java:293)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.getConfiguration(FreemarkerManager.java:265)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.DefaultDispatcherErrorHandler.init(DefaultDispatcherErrorHandler.java:66)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:632) 
> ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:48)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:60)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:245)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:102)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3846)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4450)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) 
> ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) 
> ~[na:na]
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Closed] (WW-5432) Replace ClassTemplateLoader with WebappClassTemplateLoader

2024-06-21 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5432?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart closed WW-5432.
-
Resolution: Won't Do

{{WebappClassTemplateLoader}} is Tiles specific class not available in Struts 
core

> Replace ClassTemplateLoader with WebappClassTemplateLoader
> --
>
> Key: WW-5432
> URL: https://issues.apache.org/jira/browse/WW-5432
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Plugin - Tiles
>Reporter: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>
> {{FreemarkerManager}} uses custom logic to select from where to load 
> templates:
> {code:java}
> if (templatePath.startsWith("class://")) {
> // substring(7) is intentional as we "reuse" the last slash
> templatePathLoader = new ClassTemplateLoader(getClass(), 
> templatePath.substring(7));
> } else if (templatePath.startsWith("file://")) {
> templatePathLoader = new FileTemplateLoader(new 
> File(templatePath.substring(7)));
> }
> {code}
> yet this can be replaced with {{WebappClassTemplateLoader}} which does the 
> same



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (WW-5431) Mark as deprecated unused constants in FreemarkerManager

2024-06-21 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5431?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart reassigned WW-5431:
-

Assignee: Lukasz Lenart

> Mark as deprecated unused constants in FreemarkerManager
> 
>
> Key: WW-5431
> URL: https://issues.apache.org/jira/browse/WW-5431
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>
> Mark as @Deprecated
> {code:java}
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_INCLUDE = "include_page";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PRIVATE = 
> "__FreeMarkerServlet.Request__";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_HASHMODEL_PRIVATE = 
> "__FreeMarkerManager.Request__";
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work started] (WW-5431) Mark as deprecated unused constants in FreemarkerManager

2024-06-21 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5431?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Work on WW-5431 started by Lukasz Lenart.
-
> Mark as deprecated unused constants in FreemarkerManager
> 
>
> Key: WW-5431
> URL: https://issues.apache.org/jira/browse/WW-5431
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>
> Mark as @Deprecated
> {code:java}
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_INCLUDE = "include_page";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PRIVATE = 
> "__FreeMarkerServlet.Request__";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_HASHMODEL_PRIVATE = 
> "__FreeMarkerManager.Request__";
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5433) Remove deprecated constants in FreemarkerManager

2024-06-21 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5433?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart updated WW-5433:
--
Description: 
Delete the @Deprecated constants
{code:java}
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_INCLUDE = "include_page";
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_REQUEST_PRIVATE = 
"__FreeMarkerServlet.Request__";
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_HASHMODEL_PRIVATE = 
"__FreeMarkerManager.Request__";
{code}

  was:
Mark as @Deprecated

{code:java}
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_INCLUDE = "include_page";
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_REQUEST_PRIVATE = 
"__FreeMarkerServlet.Request__";
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_HASHMODEL_PRIVATE = 
"__FreeMarkerManager.Request__";
{code}


> Remove deprecated constants in FreemarkerManager
> 
>
> Key: WW-5433
> URL: https://issues.apache.org/jira/browse/WW-5433
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Lukasz Lenart
>Priority: Minor
> Fix For: 7.0.0
>
>
> Delete the @Deprecated constants
> {code:java}
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_INCLUDE = "include_page";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PRIVATE = 
> "__FreeMarkerServlet.Request__";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_HASHMODEL_PRIVATE = 
> "__FreeMarkerManager.Request__";
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (WW-5433) Remove deprecated constants in FreemarkerManager

2024-06-21 Thread Lukasz Lenart (Jira)
Lukasz Lenart created WW-5433:
-

 Summary: Remove deprecated constants in FreemarkerManager
 Key: WW-5433
 URL: https://issues.apache.org/jira/browse/WW-5433
 Project: Struts 2
  Issue Type: Improvement
  Components: Core
Reporter: Lukasz Lenart
 Fix For: 6.5.0


Mark as @Deprecated

{code:java}
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_INCLUDE = "include_page";
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_REQUEST_PRIVATE = 
"__FreeMarkerServlet.Request__";
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_HASHMODEL_PRIVATE = 
"__FreeMarkerManager.Request__";
{code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5433) Remove deprecated constants in FreemarkerManager

2024-06-21 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5433?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart updated WW-5433:
--
Fix Version/s: 7.0.0
   (was: 6.5.0)

> Remove deprecated constants in FreemarkerManager
> 
>
> Key: WW-5433
> URL: https://issues.apache.org/jira/browse/WW-5433
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Lukasz Lenart
>Priority: Minor
> Fix For: 7.0.0
>
>
> Mark as @Deprecated
> {code:java}
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_INCLUDE = "include_page";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PRIVATE = 
> "__FreeMarkerServlet.Request__";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
> @Deprecated(since = "Struts 6.5.0", forRemoval = true)
> public static final String KEY_HASHMODEL_PRIVATE = 
> "__FreeMarkerManager.Request__";
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (WW-5430) Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader

2024-06-21 Thread Lukasz Lenart (Jira)


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

Lukasz Lenart commented on WW-5430:
---

[~rubensgomes] could you review the PR?

> Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader
> -
>
> Key: WW-5430
> URL: https://issues.apache.org/jira/browse/WW-5430
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 7.0.0
>Reporter: Rubens Gomes
>Priority: Major
>
> Getting runtime error below with 7.0.0-M6.  It appears that method
>  
> {{org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader}}
> is using {{freemarker.cache.WebappTemplateLoader}} which is based on legacy 
> {{{}javax.servlet{}}}?
> {noformat}
> Note that this is for the legacy "javax" Servlet API; for Jakarta (that 
> is, in modern Servlet containers), use 
> freemarker.ext.jakarta.servlet.WebappTemplateLoader instead (since 2.3.33). 
> ..."
> java.lang.NoSuchMethodError: 'void 
> freemarker.cache.WebappTemplateLoader.(jakarta.servlet.ServletContext)'
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader(FreemarkerManager.java:468)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.init(FreemarkerManager.java:293)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.views.freemarker.FreemarkerManager.getConfiguration(FreemarkerManager.java:265)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.DefaultDispatcherErrorHandler.init(DefaultDispatcherErrorHandler.java:66)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:632) 
> ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:48)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:60)
>  ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
>     at 
> org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:245)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:102)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3846)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4450)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) 
> ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193)
>  ~[tomcat-embed-core-10.1.24.jar:10.1.24]
>     at 
> java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) 
> ~[na:na]
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (WW-5432) Replace ClassTemplateLoader with WebappClassTemplateLoader

2024-06-20 Thread Lukasz Lenart (Jira)
Lukasz Lenart created WW-5432:
-

 Summary: Replace ClassTemplateLoader with WebappClassTemplateLoader
 Key: WW-5432
 URL: https://issues.apache.org/jira/browse/WW-5432
 Project: Struts 2
  Issue Type: Improvement
  Components: Plugin - Tiles
Reporter: Lukasz Lenart
 Fix For: 6.5.0


{{FreemarkerManager}} uses custom logic to select from where to load templates:
{code:java}
if (templatePath.startsWith("class://")) {
// substring(7) is intentional as we "reuse" the last slash
templatePathLoader = new ClassTemplateLoader(getClass(), 
templatePath.substring(7));
} else if (templatePath.startsWith("file://")) {
templatePathLoader = new FileTemplateLoader(new 
File(templatePath.substring(7)));
}
{code}
yet this can be replaced with {{WebappClassTemplateLoader}} which does the same



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (WW-5431) Mark as deprecated unused constants in FreemarkerManager

2024-06-20 Thread Lukasz Lenart (Jira)
Lukasz Lenart created WW-5431:
-

 Summary: Mark as deprecated unused constants in FreemarkerManager
 Key: WW-5431
 URL: https://issues.apache.org/jira/browse/WW-5431
 Project: Struts 2
  Issue Type: Improvement
  Components: Core
Reporter: Lukasz Lenart
 Fix For: 6.5.0


Mark as @Deprecated

{code:java}
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_INCLUDE = "include_page";
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_REQUEST_PRIVATE = 
"__FreeMarkerServlet.Request__";
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_REQUEST_PARAMETERS = "RequestParameters";
@Deprecated(since = "Struts 6.5.0", forRemoval = true)
public static final String KEY_HASHMODEL_PRIVATE = 
"__FreeMarkerManager.Request__";
{code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5430) Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader

2024-06-20 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5430?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart updated WW-5430:
--
Description: 
Getting runtime error below with 7.0.0-M6.  It appears that method
 {{org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader}}

is using {{freemarker.cache.WebappTemplateLoader}} which is based on legacy 
{{{}javax.servlet{}}}?

{noformat}
Note that this is for the legacy "javax" Servlet API; for Jakarta (that is, 
in modern Servlet containers), use 
freemarker.ext.jakarta.servlet.WebappTemplateLoader instead (since 2.3.33). ..."

java.lang.NoSuchMethodError: 'void 
freemarker.cache.WebappTemplateLoader.(jakarta.servlet.ServletContext)'
    at 
org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader(FreemarkerManager.java:468)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.views.freemarker.FreemarkerManager.init(FreemarkerManager.java:293)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.views.freemarker.FreemarkerManager.getConfiguration(FreemarkerManager.java:265)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.dispatcher.DefaultDispatcherErrorHandler.init(DefaultDispatcherErrorHandler.java:66)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:632) 
~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:48)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:60)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:245)
 ~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:102)
 ~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3846) 
~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4450)
 ~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) 
~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) 
~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) 
~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) 
~[na:na]
{noformat}

  was:
Getting runtime error below with 7.0.0-M6.  It appears that method
 "org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader"

is using "freemarker.cache.WebappTemplateLoader" which is based on legacy 
"javax.servlet"?

"Note that this is for the legacy "javax" Servlet API; for Jakarta (that 
is, in modern Servlet containers), use 
freemarker.ext.jakarta.servlet.WebappTemplateLoader instead (since 2.3.33). ..."

java.lang.NoSuchMethodError: 'void 
freemarker.cache.WebappTemplateLoader.(jakarta.servlet.ServletContext)'
    at 
org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader(FreemarkerManager.java:468)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.views.freemarker.FreemarkerManager.init(FreemarkerManager.java:293)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.views.freemarker.FreemarkerManager.getConfiguration(FreemarkerManager.java:265)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.dispatcher.DefaultDispatcherErrorHandler.init(DefaultDispatcherErrorHandler.java:66)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:632) 
~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:48)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:60)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:245)
 ~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:102)
 ~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3846) 
~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.StandardContext.startInternal(St

[jira] [Resolved] (WW-5310) s:url does not handle equal sign correctly

2024-06-20 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart resolved WW-5310.
---
Resolution: Fixed

> s:url does not handle equal sign correctly
> --
>
> Key: WW-5310
> URL: https://issues.apache.org/jira/browse/WW-5310
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Tags
>Affects Versions: 2.5.30, 6.1.2
>Reporter: nikos dimitrakas
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 50m
>  Remaining Estimate: 0h
>
> We discovered a strange case when a URL is passed to s:url. The URL contains 
> an equal sign as part of a parameter value. Example:
> [https://www.scitepress.org/PublicationsDetail.aspx?ID=GjTu91suYQI==1]
> This URL works in the browser even though the equal sign that is part of the 
> value of the parameter ID has not been replaced with %3D.
> When this URL is passed to an s:url as value then the equal sign disappears. 
> When I put a break point in ComponentTagSupport.doStartTag() I can see that 
> the query string has been split and the component.parameters contains the two 
> parameters (ID and t), but the equal sign is missing. 
> The problem seems to be in ServletUrlRenderer.mergeRequestParameters called 
> from beforeRenderUrl. The way the StrutsQueryStringParser.parse splits each 
> param of the queryString on equal sign causes all the equal signs to be used, 
> not just the first. Shouldn't that split be only on the first equal sign so 
> that any remaining equal signs can be considered as part of the value? Just 
> by adding a limit of one to the split should fix this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (WW-5430) Struts 7.0.0-M6 - Runtime Error freemarker.cache.WebappTemplateLoader

2024-06-20 Thread Rubens Gomes (Jira)
Rubens Gomes created WW-5430:


 Summary: Struts 7.0.0-M6 - Runtime Error 
freemarker.cache.WebappTemplateLoader
 Key: WW-5430
 URL: https://issues.apache.org/jira/browse/WW-5430
 Project: Struts 2
  Issue Type: Bug
  Components: Core
Affects Versions: 7.0.0
Reporter: Rubens Gomes


Getting runtime error below with 7.0.0-M6.  It appears that method
 "org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader"

is using "freemarker.cache.WebappTemplateLoader" which is based on legacy 
"javax.servlet"?

"Note that this is for the legacy "javax" Servlet API; for Jakarta (that 
is, in modern Servlet containers), use 
freemarker.ext.jakarta.servlet.WebappTemplateLoader instead (since 2.3.33). ..."

java.lang.NoSuchMethodError: 'void 
freemarker.cache.WebappTemplateLoader.(jakarta.servlet.ServletContext)'
    at 
org.apache.struts2.views.freemarker.FreemarkerManager.createTemplateLoader(FreemarkerManager.java:468)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.views.freemarker.FreemarkerManager.init(FreemarkerManager.java:293)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.views.freemarker.FreemarkerManager.getConfiguration(FreemarkerManager.java:265)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.dispatcher.DefaultDispatcherErrorHandler.init(DefaultDispatcherErrorHandler.java:66)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:632) 
~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:48)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:60)
 ~[struts2-core-7.0.0-M6.jar:7.0.0-M6]
    at 
org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:245)
 ~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:102)
 ~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3846) 
~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4450)
 ~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:171) 
~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) 
~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) 
~[tomcat-embed-core-10.1.24.jar:10.1.24]
    at 
java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) 
~[na:na]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (WW-5310) s:url does not handle equal sign correctly

2024-06-18 Thread nikos dimitrakas (Jira)


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

nikos dimitrakas commented on WW-5310:
--

The new changes together with the changes from Pull Request #692 seem good.

> s:url does not handle equal sign correctly
> --
>
> Key: WW-5310
> URL: https://issues.apache.org/jira/browse/WW-5310
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Tags
>Affects Versions: 2.5.30, 6.1.2
>Reporter: nikos dimitrakas
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 50m
>  Remaining Estimate: 0h
>
> We discovered a strange case when a URL is passed to s:url. The URL contains 
> an equal sign as part of a parameter value. Example:
> [https://www.scitepress.org/PublicationsDetail.aspx?ID=GjTu91suYQI==1]
> This URL works in the browser even though the equal sign that is part of the 
> value of the parameter ID has not been replaced with %3D.
> When this URL is passed to an s:url as value then the equal sign disappears. 
> When I put a break point in ComponentTagSupport.doStartTag() I can see that 
> the query string has been split and the component.parameters contains the two 
> parameters (ID and t), but the equal sign is missing. 
> The problem seems to be in ServletUrlRenderer.mergeRequestParameters called 
> from beforeRenderUrl. The way the StrutsQueryStringParser.parse splits each 
> param of the queryString on equal sign causes all the equal signs to be used, 
> not just the first. Shouldn't that split be only on the first equal sign so 
> that any remaining equal signs can be considered as part of the value? Just 
> by adding a limit of one to the split should fix this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5429) Log parameter annotation issues at ERROR level when in DevMode

2024-06-18 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5429?focusedWorklogId=923855=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923855
 ]

ASF GitHub Bot logged work on WW-5429:
--

Author: ASF GitHub Bot
Created on: 18/Jun/24 09:44
Start Date: 18/Jun/24 09:44
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #969:
URL: https://github.com/apache/struts/pull/969#issuecomment-2175670709

   ## [![Quality Gate 
Failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-failed-20px.png
 'Quality Gate 
Failed')](https://sonarcloud.io/dashboard?id=apache_struts=969) 
**Quality Gate failed**  
   Failed conditions  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [65.8% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=969=new_coverage=list)
 (required ≥ 80%)  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=969)
   
   




Issue Time Tracking
---

Worklog Id: (was: 923855)
Time Spent: 40m  (was: 0.5h)

> Log parameter annotation issues at ERROR level when in DevMode
> --
>
> Key: WW-5429
> URL: https://issues.apache.org/jira/browse/WW-5429
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core, Core Interceptors
>Reporter: Kusal Kithul-Godage
>Priority: Trivial
> Fix For: 6.5.0, 7.0.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5429) Log parameter annotation issues at ERROR level when in DevMode

2024-06-18 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5429?focusedWorklogId=923854=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923854
 ]

ASF GitHub Bot logged work on WW-5429:
--

Author: ASF GitHub Bot
Created on: 18/Jun/24 09:42
Start Date: 18/Jun/24 09:42
Worklog Time Spent: 10m 
  Work Description: kusalk commented on code in PR #969:
URL: https://github.com/apache/struts/pull/969#discussion_r1644161012


##
core/src/main/java/com/opensymphony/xwork2/interceptor/ValidationAware.java:
##
@@ -119,7 +119,9 @@ public interface ValidationAware {
  *
  * @return (hasActionErrors() || hasFieldErrors())
  */
-boolean hasErrors();
+default boolean hasErrors() {

Review Comment:
   Added default implementation which matches the JavaDoc, makes implementing 
this class simpler



##
core/src/main/java/com/opensymphony/xwork2/util/DebugUtils.java:
##
@@ -0,0 +1,42 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package com.opensymphony.xwork2.util;
+
+import com.opensymphony.xwork2.TextProvider;
+import com.opensymphony.xwork2.interceptor.ValidationAware;
+import org.apache.logging.log4j.Logger;
+
+/**
+ * @since 6.5.0
+ */
+public class DebugUtils {
+
+public static void notifyDeveloperOfError(Logger log, Object action, 
String message) {

Review Comment:
   Extracted this method out of `ParametersInterceptor` for reuse



##
core/src/test/java/org/apache/struts2/interceptor/parameter/ParametersInterceptorTest.java:
##
@@ -116,15 +116,17 @@ public void testInsecureParameters() throws Exception {
 pi.setParameters(action, vs, HttpParameters.create(params).build());
 
 // then
-assertEquals(3, action.getActionMessages().size());
+assertEquals(3, action.getActionErrors().size());
 
-String msg1 = action.getActionMessage(0);
-String msg2 = action.getActionMessage(1);
-String msg3 = action.getActionMessage(2);
+List actionErrors = new ArrayList<>(action.getActionErrors());
 
-assertEquals("Error setting expression 'expression' with value 
'#f=#_memberAccess.getClass().getDeclaredField('allowStaticMethodAccess'),#f.setAccessible(true),#f.set(#_memberAccess,true),#req=@org.apache.struts2.ServletActionContext@getRequest(),#resp=@org.apache.struts2.ServletActionContext@getResponse().getWriter(),#resp.println(#req.getRealPath('/')),#resp.close()'",
 msg1);
-assertEquals("Error setting expression 'name' with value 
'(#context[\"xwork.MethodAccessor.denyMethodExecution\"]= new 
java.lang.Boolean(false), #_memberAccess[\"allowStaticMethodAccess\"]= new 
java.lang.Boolean(true), @java.lang.Runtime@getRuntime().exec('mkdir 
/tmp/PWNAGE'))(meh)'", msg2);
-assertEquals("Error setting expression 'top['name'](0)' with value 
'true'", msg3);
+String msg1 = actionErrors.get(0);
+String msg2 = actionErrors.get(1);
+String msg3 = actionErrors.get(2);
+
+assertEquals("Unexpected Exception caught setting 'expression' on 
'class org.apache.struts2.interceptor.parameter.ValidateAction: Error setting 
expression 'expression' with value 
'#f=#_memberAccess.getClass().getDeclaredField('allowStaticMethodAccess'),#f.setAccessible(true),#f.set(#_memberAccess,true),#req=@org.apache.struts2.ServletActionContext@getRequest(),#resp=@org.apache.struts2.ServletActionContext@getResponse().getWriter(),#resp.println(#req.getRealPath('/')),#resp.close()'",
 msg1);

Review Comment:
   These messages now include both the context message as well as the exception 
message. Whilst they are very similar in this test example, it's not guaranteed 
to be the case



##
core/src/main/java/com/opensymphony/xwork2/ognl/ErrorMessageBuilder.java:
##
@@ -42,7 +42,7 @@ public ErrorMessageBuilder 
errorSettingExpressionWithValue(String expr, Object v
 return this;
 }
 
-private void appenExpression(String expr) {
+private void appendExpression(String expr) {

Review Comment:
 

[jira] [Work logged] (WW-5429) Log parameter annotation issues at ERROR level when in DevMode

2024-06-18 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5429?focusedWorklogId=923852=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923852
 ]

ASF GitHub Bot logged work on WW-5429:
--

Author: ASF GitHub Bot
Created on: 18/Jun/24 09:29
Start Date: 18/Jun/24 09:29
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #969:
URL: https://github.com/apache/struts/pull/969#issuecomment-2175638628

   ## [![Quality Gate 
Failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-failed-20px.png
 'Quality Gate 
Failed')](https://sonarcloud.io/dashboard?id=apache_struts=969) 
**Quality Gate failed**  
   Failed conditions  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [8 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_struts=969=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [28.6% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=969=new_coverage=list)
 (required ≥ 80%)  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [4.0% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=969=new_duplicated_lines_density=list)
 (required ≤ 3%)  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [E Reliability Rating on New 
Code](https://sonarcloud.io/dashboard?id=apache_struts=969) 
(required ≥ A)  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [E Security Rating on New 
Code](https://sonarcloud.io/dashboard?id=apache_struts=969) 
(required ≥ A)  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=969)
   
   ##   
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/light_bulb-16px.png
 '') Catch issues before they fail your Quality Gate with our IDE extension 
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/sonarlint-16px.png
 '') 
[SonarLint](https://www.sonarsource.com/products/sonarlint/features/connected-mode/?referrer=pull-request)
   
   




Issue Time Tracking
---

Worklog Id: (was: 923852)
Time Spent: 20m  (was: 10m)

> Log parameter annotation issues at ERROR level when in DevMode
> --
>
> Key: WW-5429
> URL: https://issues.apache.org/jira/browse/WW-5429
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core, Core Interceptors
>Reporter: Kusal Kithul-Godage
>Priority: Trivial
> Fix For: 6.5.0, 7.0.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5429) Log parameter annotation issues at ERROR level when in DevMode

2024-06-18 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5429?focusedWorklogId=923850=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923850
 ]

ASF GitHub Bot logged work on WW-5429:
--

Author: ASF GitHub Bot
Created on: 18/Jun/24 09:08
Start Date: 18/Jun/24 09:08
Worklog Time Spent: 10m 
  Work Description: kusalk opened a new pull request, #969:
URL: https://github.com/apache/struts/pull/969

   WW-5429
   --




Issue Time Tracking
---

Worklog Id: (was: 923850)
Remaining Estimate: 0h
Time Spent: 10m

> Log parameter annotation issues at ERROR level when in DevMode
> --
>
> Key: WW-5429
> URL: https://issues.apache.org/jira/browse/WW-5429
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core, Core Interceptors
>Reporter: Kusal Kithul-Godage
>Priority: Trivial
> Fix For: 6.5.0, 7.0.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (WW-5429) Log parameter annotation issues at ERROR level when in DevMode

2024-06-18 Thread Kusal Kithul-Godage (Jira)
Kusal Kithul-Godage created WW-5429:
---

 Summary: Log parameter annotation issues at ERROR level when in 
DevMode
 Key: WW-5429
 URL: https://issues.apache.org/jira/browse/WW-5429
 Project: Struts 2
  Issue Type: Improvement
  Components: Core, Core Interceptors
Reporter: Kusal Kithul-Godage
 Fix For: 6.5.0, 7.0.0






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5310) s:url does not handle equal sign correctly

2024-06-18 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5310?focusedWorklogId=923838=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923838
 ]

ASF GitHub Bot logged work on WW-5310:
--

Author: ASF GitHub Bot
Created on: 18/Jun/24 07:47
Start Date: 18/Jun/24 07:47
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #968:
URL: https://github.com/apache/struts/pull/968#issuecomment-2175427339

   ## [![Quality Gate 
Failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-failed-20px.png
 'Quality Gate 
Failed')](https://sonarcloud.io/dashboard?id=apache_struts=968) 
**Quality Gate failed**  
   Failed conditions  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [8 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_struts=968=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [28.6% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=968=new_coverage=list)
 (required ≥ 80%)  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [4.0% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=968=new_duplicated_lines_density=list)
 (required ≤ 3%)  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [E Reliability Rating on New 
Code](https://sonarcloud.io/dashboard?id=apache_struts=968) 
(required ≥ A)  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [E Security Rating on New 
Code](https://sonarcloud.io/dashboard?id=apache_struts=968) 
(required ≥ A)  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=968)
   
   ##   
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/light_bulb-16px.png
 '') Catch issues before they fail your Quality Gate with our IDE extension 
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/sonarlint-16px.png
 '') 
[SonarLint](https://www.sonarsource.com/products/sonarlint/features/connected-mode/?referrer=pull-request)
   
   




Issue Time Tracking
---

Worklog Id: (was: 923838)
Time Spent: 2h 50m  (was: 2h 40m)

> s:url does not handle equal sign correctly
> --
>
> Key: WW-5310
> URL: https://issues.apache.org/jira/browse/WW-5310
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Tags
>Affects Versions: 2.5.30, 6.1.2
>Reporter: nikos dimitrakas
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 50m
>  Remaining Estimate: 0h
>
> We discovered a strange case when a URL is passed to s:url. The URL contains 
> an equal sign as part of a parameter value. Example:
> [https://www.scitepress.org/PublicationsDetail.aspx?ID=GjTu91suYQI==1]
> This URL works in the browser even though the equal sign that is part of the 
> value of the parameter ID has not been replaced with %3D.
> When this URL is passed to an s:url as value then the equal sign disappears. 
> When I put a break point in ComponentTagSupport.doStartTag() I can see that 
> the query string has been split and the component.parameters contains the two 
> parameters (ID and t), but the equal sign is missing. 
> The problem seems to be in ServletUrlRenderer.mergeRequestParameters called 
> from beforeRenderUrl. The way the StrutsQueryStringParser.parse splits each 
> param of the queryString on equal sign causes all the equal signs to be used, 
> not just the first. Shouldn't that split be only on the first equal sign so 
> that any remaining equal signs can be considered as part of the value? Just 
> by adding a limit of one to the split should fix this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (WW-5310) s:url does not handle equal sign correctly

2024-06-18 Thread Lukasz Lenart (Jira)


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

Lukasz Lenart commented on WW-5310:
---

[~nikos] could you review this [GitHub Pull Request 
#968|https://github.com/apache/struts/pull/968]?

> s:url does not handle equal sign correctly
> --
>
> Key: WW-5310
> URL: https://issues.apache.org/jira/browse/WW-5310
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Tags
>Affects Versions: 2.5.30, 6.1.2
>Reporter: nikos dimitrakas
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 40m
>  Remaining Estimate: 0h
>
> We discovered a strange case when a URL is passed to s:url. The URL contains 
> an equal sign as part of a parameter value. Example:
> [https://www.scitepress.org/PublicationsDetail.aspx?ID=GjTu91suYQI==1]
> This URL works in the browser even though the equal sign that is part of the 
> value of the parameter ID has not been replaced with %3D.
> When this URL is passed to an s:url as value then the equal sign disappears. 
> When I put a break point in ComponentTagSupport.doStartTag() I can see that 
> the query string has been split and the component.parameters contains the two 
> parameters (ID and t), but the equal sign is missing. 
> The problem seems to be in ServletUrlRenderer.mergeRequestParameters called 
> from beforeRenderUrl. The way the StrutsQueryStringParser.parse splits each 
> param of the queryString on equal sign causes all the equal signs to be used, 
> not just the first. Shouldn't that split be only on the first equal sign so 
> that any remaining equal signs can be considered as part of the value? Just 
> by adding a limit of one to the split should fix this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work started] (WW-5310) s:url does not handle equal sign correctly

2024-06-18 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Work on WW-5310 started by Lukasz Lenart.
-
> s:url does not handle equal sign correctly
> --
>
> Key: WW-5310
> URL: https://issues.apache.org/jira/browse/WW-5310
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Tags
>Affects Versions: 2.5.30, 6.1.2
>Reporter: nikos dimitrakas
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 40m
>  Remaining Estimate: 0h
>
> We discovered a strange case when a URL is passed to s:url. The URL contains 
> an equal sign as part of a parameter value. Example:
> [https://www.scitepress.org/PublicationsDetail.aspx?ID=GjTu91suYQI==1]
> This URL works in the browser even though the equal sign that is part of the 
> value of the parameter ID has not been replaced with %3D.
> When this URL is passed to an s:url as value then the equal sign disappears. 
> When I put a break point in ComponentTagSupport.doStartTag() I can see that 
> the query string has been split and the component.parameters contains the two 
> parameters (ID and t), but the equal sign is missing. 
> The problem seems to be in ServletUrlRenderer.mergeRequestParameters called 
> from beforeRenderUrl. The way the StrutsQueryStringParser.parse splits each 
> param of the queryString on equal sign causes all the equal signs to be used, 
> not just the first. Shouldn't that split be only on the first equal sign so 
> that any remaining equal signs can be considered as part of the value? Just 
> by adding a limit of one to the split should fix this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (WW-5310) s:url does not handle equal sign correctly

2024-06-18 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart reassigned WW-5310:
-

Assignee: Lukasz Lenart

> s:url does not handle equal sign correctly
> --
>
> Key: WW-5310
> URL: https://issues.apache.org/jira/browse/WW-5310
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Tags
>Affects Versions: 2.5.30, 6.1.2
>Reporter: nikos dimitrakas
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 40m
>  Remaining Estimate: 0h
>
> We discovered a strange case when a URL is passed to s:url. The URL contains 
> an equal sign as part of a parameter value. Example:
> [https://www.scitepress.org/PublicationsDetail.aspx?ID=GjTu91suYQI==1]
> This URL works in the browser even though the equal sign that is part of the 
> value of the parameter ID has not been replaced with %3D.
> When this URL is passed to an s:url as value then the equal sign disappears. 
> When I put a break point in ComponentTagSupport.doStartTag() I can see that 
> the query string has been split and the component.parameters contains the two 
> parameters (ID and t), but the equal sign is missing. 
> The problem seems to be in ServletUrlRenderer.mergeRequestParameters called 
> from beforeRenderUrl. The way the StrutsQueryStringParser.parse splits each 
> param of the queryString on equal sign causes all the equal signs to be used, 
> not just the first. Shouldn't that split be only on the first equal sign so 
> that any remaining equal signs can be considered as part of the value? Just 
> by adding a limit of one to the split should fix this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5310) s:url does not handle equal sign correctly

2024-06-18 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5310?focusedWorklogId=923837=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923837
 ]

ASF GitHub Bot logged work on WW-5310:
--

Author: ASF GitHub Bot
Created on: 18/Jun/24 07:39
Start Date: 18/Jun/24 07:39
Worklog Time Spent: 10m 
  Work Description: lukaszlenart opened a new pull request, #968:
URL: https://github.com/apache/struts/pull/968

   Closes [WW-5310](https://issues.apache.org/jira/browse/WW-5310)




Issue Time Tracking
---

Worklog Id: (was: 923837)
Time Spent: 2h 40m  (was: 2.5h)

> s:url does not handle equal sign correctly
> --
>
> Key: WW-5310
> URL: https://issues.apache.org/jira/browse/WW-5310
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Tags
>Affects Versions: 2.5.30, 6.1.2
>Reporter: nikos dimitrakas
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 40m
>  Remaining Estimate: 0h
>
> We discovered a strange case when a URL is passed to s:url. The URL contains 
> an equal sign as part of a parameter value. Example:
> [https://www.scitepress.org/PublicationsDetail.aspx?ID=GjTu91suYQI==1]
> This URL works in the browser even though the equal sign that is part of the 
> value of the parameter ID has not been replaced with %3D.
> When this URL is passed to an s:url as value then the equal sign disappears. 
> When I put a break point in ComponentTagSupport.doStartTag() I can see that 
> the query string has been split and the component.parameters contains the two 
> parameters (ID and t), but the equal sign is missing. 
> The problem seems to be in ServletUrlRenderer.mergeRequestParameters called 
> from beforeRenderUrl. The way the StrutsQueryStringParser.parse splits each 
> param of the queryString on equal sign causes all the equal signs to be used, 
> not just the first. Shouldn't that split be only on the first equal sign so 
> that any remaining equal signs can be considered as part of the value? Just 
> by adding a limit of one to the split should fix this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (WW-5141) Support for JEE 9+

2024-06-18 Thread Lukasz Lenart (Jira)


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

Lukasz Lenart commented on WW-5141:
---

As I already mentioned a few time in different places the current plan is to 
release GA version after summer vacation, around September. That being said, I 
also plan to push M7 or M8 into the Maven Central to let users test this 
version and prepare migration.

> Support for JEE 9+ 
> ---
>
> Key: WW-5141
> URL: https://issues.apache.org/jira/browse/WW-5141
> Project: Struts 2
>  Issue Type: New Feature
>  Components: Core
>Reporter: Daniel Le Berre
>Priority: Major
>  Labels: M1
> Fix For: 7.0.0
>
> Attachments: pom.xml
>
>  Time Spent: 9h 40m
>  Remaining Estimate: 0h
>
> JEE 9 breaks the JEE API by replacing javax domain by jakarta.
> Tomcat 10 implements some specifications of JEE 9.
> Struts 2.5 has some dependencies with the javax servlet API.
> Struts would require some changes to run on Tomcat 10+.
> Is there any plan to support JEE 9+ in the future?
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (WW-5141) Support for JEE 9+

2024-06-18 Thread Silviu Parau (Jira)


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

Silviu Parau commented on WW-5141:
--

Could you please let us know when the 7.0.0. version is going to be finally 
released? We are under time pressure and wanted to know how the short horizon 
would look like. Thank you.

> Support for JEE 9+ 
> ---
>
> Key: WW-5141
> URL: https://issues.apache.org/jira/browse/WW-5141
> Project: Struts 2
>  Issue Type: New Feature
>  Components: Core
>Reporter: Daniel Le Berre
>Priority: Major
>  Labels: M1
> Fix For: 7.0.0
>
> Attachments: pom.xml
>
>  Time Spent: 9h 40m
>  Remaining Estimate: 0h
>
> JEE 9 breaks the JEE API by replacing javax domain by jakarta.
> Tomcat 10 implements some specifications of JEE 9.
> Struts 2.5 has some dependencies with the javax servlet API.
> Struts would require some changes to run on Tomcat 10+.
> Is there any plan to support JEE 9+ in the future?
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5417) Update OGNL member access criteria

2024-06-17 Thread Kusal Kithul-Godage (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5417?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kusal Kithul-Godage updated WW-5417:

Summary: Update OGNL member access criteria  (was: Patch OGNL security bugs)

> Update OGNL member access criteria
> --
>
> Key: WW-5417
> URL: https://issues.apache.org/jira/browse/WW-5417
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core
>Reporter: Kusal Kithul-Godage
>Priority: Major
>  Labels: security
> Fix For: 6.5.0
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5428) Allowlist capability should resolve Hibernate proxies when disableProxyObjects is not set

2024-06-17 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5428?focusedWorklogId=923671=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923671
 ]

ASF GitHub Bot logged work on WW-5428:
--

Author: ASF GitHub Bot
Created on: 17/Jun/24 11:28
Start Date: 17/Jun/24 11:28
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #967:
URL: https://github.com/apache/struts/pull/967#issuecomment-2173137443

   ## [![Quality Gate 
Failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-failed-20px.png
 'Quality Gate 
Failed')](https://sonarcloud.io/dashboard?id=apache_struts=967) 
**Quality Gate failed**  
   Failed conditions  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [8 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_struts=967=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [28.6% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=967=new_coverage=list)
 (required ≥ 80%)  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [4.0% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=967=new_duplicated_lines_density=list)
 (required ≤ 3%)  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [E Reliability Rating on New 
Code](https://sonarcloud.io/dashboard?id=apache_struts=967) 
(required ≥ A)  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [E Security Rating on New 
Code](https://sonarcloud.io/dashboard?id=apache_struts=967) 
(required ≥ A)  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=967)
   
   ##   
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/light_bulb-16px.png
 '') Catch issues before they fail your Quality Gate with our IDE extension 
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/sonarlint-16px.png
 '') 
[SonarLint](https://www.sonarsource.com/products/sonarlint/features/connected-mode/?referrer=pull-request)
   
   




Issue Time Tracking
---

Worklog Id: (was: 923671)
Time Spent: 0.5h  (was: 20m)

> Allowlist capability should resolve Hibernate proxies when 
> disableProxyObjects is not set
> -
>
> Key: WW-5428
> URL: https://issues.apache.org/jira/browse/WW-5428
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Kusal Kithul-Godage
>Priority: Minor
> Fix For: 6.5.0, 7.0.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Refer to PR description for further details



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5428) Allowlist capability should resolve Hibernate proxies when disableProxyObjects is not set

2024-06-17 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5428?focusedWorklogId=923668=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923668
 ]

ASF GitHub Bot logged work on WW-5428:
--

Author: ASF GitHub Bot
Created on: 17/Jun/24 11:18
Start Date: 17/Jun/24 11:18
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #967:
URL: https://github.com/apache/struts/pull/967#issuecomment-2173119414

   ## [![Quality Gate 
Failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-failed-20px.png
 'Quality Gate 
Failed')](https://sonarcloud.io/dashboard?id=apache_struts=967) 
**Quality Gate failed**  
   Failed conditions  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [8 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_struts=967=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [28.6% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=967=new_coverage=list)
 (required ≥ 80%)  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [4.0% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=967=new_duplicated_lines_density=list)
 (required ≤ 3%)  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [E Reliability Rating on New 
Code](https://sonarcloud.io/dashboard?id=apache_struts=967) 
(required ≥ A)  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [E Security Rating on New 
Code](https://sonarcloud.io/dashboard?id=apache_struts=967) 
(required ≥ A)  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=967)
   
   ##   
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/light_bulb-16px.png
 '') Catch issues before they fail your Quality Gate with our IDE extension 
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/sonarlint-16px.png
 '') 
[SonarLint](https://www.sonarsource.com/products/sonarlint/features/connected-mode/?referrer=pull-request)
   
   




Issue Time Tracking
---

Worklog Id: (was: 923668)
Time Spent: 20m  (was: 10m)

> Allowlist capability should resolve Hibernate proxies when 
> disableProxyObjects is not set
> -
>
> Key: WW-5428
> URL: https://issues.apache.org/jira/browse/WW-5428
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Kusal Kithul-Godage
>Priority: Minor
> Fix For: 6.5.0, 7.0.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Refer to PR description for further details



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5428) Allowlist capability should resolve Hibernate proxies when disableProxyObjects is not set

2024-06-17 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5428?focusedWorklogId=923666=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923666
 ]

ASF GitHub Bot logged work on WW-5428:
--

Author: ASF GitHub Bot
Created on: 17/Jun/24 11:03
Start Date: 17/Jun/24 11:03
Worklog Time Spent: 10m 
  Work Description: kusalk opened a new pull request, #967:
URL: https://github.com/apache/struts/pull/967

   WW-5428
   --




Issue Time Tracking
---

Worklog Id: (was: 923666)
Remaining Estimate: 0h
Time Spent: 10m

> Allowlist capability should resolve Hibernate proxies when 
> disableProxyObjects is not set
> -
>
> Key: WW-5428
> URL: https://issues.apache.org/jira/browse/WW-5428
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Kusal Kithul-Godage
>Priority: Minor
> Fix For: 6.5.0, 7.0.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Refer to PR description for further details



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5428) Allowlist capability should resolve Hibernate proxies when disableProxyObjects is not set

2024-06-17 Thread Kusal Kithul-Godage (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5428?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kusal Kithul-Godage updated WW-5428:

Description: Refer to PR description for further details

> Allowlist capability should resolve Hibernate proxies when 
> disableProxyObjects is not set
> -
>
> Key: WW-5428
> URL: https://issues.apache.org/jira/browse/WW-5428
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core
>Reporter: Kusal Kithul-Godage
>Priority: Minor
> Fix For: 6.5.0, 7.0.0
>
>
> Refer to PR description for further details



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (WW-5428) Allowlist capability should resolve Hibernate proxies when disableProxyObjects is not set

2024-06-17 Thread Kusal Kithul-Godage (Jira)
Kusal Kithul-Godage created WW-5428:
---

 Summary: Allowlist capability should resolve Hibernate proxies 
when disableProxyObjects is not set
 Key: WW-5428
 URL: https://issues.apache.org/jira/browse/WW-5428
 Project: Struts 2
  Issue Type: Improvement
  Components: Core
Reporter: Kusal Kithul-Godage
 Fix For: 6.5.0, 7.0.0






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5418) Forbid Enums and Jasper classes

2024-06-12 Thread Daniel Gruno (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5418?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Daniel Gruno updated WW-5418:
-
Summary: Forbid Enums and Jasper classes  (was: Patch Struts security bugs)

> Forbid Enums and Jasper classes
> ---
>
> Key: WW-5418
> URL: https://issues.apache.org/jira/browse/WW-5418
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core
>Reporter: Kusal Kithul-Godage
>Priority: Critical
>  Labels: security
> Fix For: 6.5.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> This change includes:
> - Forbid accessign enums
> - Exclude Tomcat Jasper classes



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-10 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922768=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922768
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 06:34
Start Date: 10/Jun/24 06:34
Worklog Time Spent: 10m 
  Work Description: lukaszlenart merged PR #240:
URL: https://github.com/apache/struts-site/pull/240




Issue Time Tracking
---

Worklog Id: (was: 922768)
Time Spent: 4h 40m  (was: 4.5h)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 4h 40m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-10 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922766=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922766
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 06:27
Start Date: 10/Jun/24 06:27
Worklog Time Spent: 10m 
  Work Description: asf-ci commented on PR #240:
URL: https://github.com/apache/struts-site/pull/240#issuecomment-2157426725

   Staged site is ready at https://struts.staged.apache.org/




Issue Time Tracking
---

Worklog Id: (was: 922766)
Time Spent: 4.5h  (was: 4h 20m)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 4.5h
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-10 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922765=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922765
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 06:16
Start Date: 10/Jun/24 06:16
Worklog Time Spent: 10m 
  Work Description: asf-ci commented on PR #240:
URL: https://github.com/apache/struts-site/pull/240#issuecomment-2157400709

   Staged site is ready at https://struts.staged.apache.org/




Issue Time Tracking
---

Worklog Id: (was: 922765)
Time Spent: 4h 20m  (was: 4h 10m)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 4h 20m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-10 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922764=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922764
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 06:10
Start Date: 10/Jun/24 06:10
Worklog Time Spent: 10m 
  Work Description: lukaszlenart opened a new pull request, #240:
URL: https://github.com/apache/struts-site/pull/240

   (no comment)




Issue Time Tracking
---

Worklog Id: (was: 922764)
Time Spent: 4h 10m  (was: 4h)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 4h 10m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-10 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922763=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922763
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 06:03
Start Date: 10/Jun/24 06:03
Worklog Time Spent: 10m 
  Work Description: lukaszlenart merged PR #239:
URL: https://github.com/apache/struts-site/pull/239




Issue Time Tracking
---

Worklog Id: (was: 922763)
Time Spent: 4h  (was: 3h 50m)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 4h
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-10 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922762=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922762
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 06:02
Start Date: 10/Jun/24 06:02
Worklog Time Spent: 10m 
  Work Description: lukaszlenart opened a new pull request, #239:
URL: https://github.com/apache/struts-site/pull/239

   Refs [WW-5400](https://issues.apache.org/jira/browse/WW-5400)




Issue Time Tracking
---

Worklog Id: (was: 922762)
Time Spent: 3h 50m  (was: 3h 40m)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 3h 50m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-10 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922761=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922761
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 06:02
Start Date: 10/Jun/24 06:02
Worklog Time Spent: 10m 
  Work Description: lukaszlenart closed pull request #239: WW-5400 
Documents how to use cspSettingsClassName parameter
URL: https://github.com/apache/struts-site/pull/239




Issue Time Tracking
---

Worklog Id: (was: 922761)
Time Spent: 3h 40m  (was: 3.5h)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 3h 40m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-09 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922758=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922758
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 05:32
Start Date: 10/Jun/24 05:32
Worklog Time Spent: 10m 
  Work Description: lukaszlenart opened a new pull request, #239:
URL: https://github.com/apache/struts-site/pull/239

   Refs [WW-5400](https://issues.apache.org/jira/browse/WW-5400)




Issue Time Tracking
---

Worklog Id: (was: 922758)
Time Spent: 3.5h  (was: 3h 20m)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 3.5h
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-09 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922757=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922757
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 05:32
Start Date: 10/Jun/24 05:32
Worklog Time Spent: 10m 
  Work Description: lukaszlenart closed pull request #239: WW-5400 
Documents how to use cspSettingsClassName parameter
URL: https://github.com/apache/struts-site/pull/239




Issue Time Tracking
---

Worklog Id: (was: 922757)
Time Spent: 3h 20m  (was: 3h 10m)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 3h 20m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-09 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922756=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922756
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 05:28
Start Date: 10/Jun/24 05:28
Worklog Time Spent: 10m 
  Work Description: lukaszlenart opened a new pull request, #239:
URL: https://github.com/apache/struts-site/pull/239

   Refs [WW-5400](https://issues.apache.org/jira/browse/WW-5400)




Issue Time Tracking
---

Worklog Id: (was: 922756)
Time Spent: 3h 10m  (was: 3h)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 3h 10m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-09 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922755=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922755
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 05:28
Start Date: 10/Jun/24 05:28
Worklog Time Spent: 10m 
  Work Description: lukaszlenart closed pull request #239: WW-5400 
Documents how to use cspSettingsClassName parameter
URL: https://github.com/apache/struts-site/pull/239




Issue Time Tracking
---

Worklog Id: (was: 922755)
Time Spent: 3h  (was: 2h 50m)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 3h
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-09 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922753=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922753
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 05:10
Start Date: 10/Jun/24 05:10
Worklog Time Spent: 10m 
  Work Description: lukaszlenart opened a new pull request, #239:
URL: https://github.com/apache/struts-site/pull/239

   Refs [WW-5400](https://issues.apache.org/jira/browse/WW-5400)




Issue Time Tracking
---

Worklog Id: (was: 922753)
Time Spent: 2h 50m  (was: 2h 40m)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 50m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5250) Address TODO in DefaultActionValidatorManagerTest

2024-06-09 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5250?focusedWorklogId=922752=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922752
 ]

ASF GitHub Bot logged work on WW-5250:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 05:03
Start Date: 10/Jun/24 05:03
Worklog Time Spent: 10m 
  Work Description: lukaszlenart merged PR #957:
URL: https://github.com/apache/struts/pull/957




Issue Time Tracking
---

Worklog Id: (was: 922752)
Time Spent: 0.5h  (was: 20m)

> Address TODO in DefaultActionValidatorManagerTest
> -
>
> Key: WW-5250
> URL: https://issues.apache.org/jira/browse/WW-5250
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core, Unit Tests, XML Validators
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> There is a TODO which should be addressed:
> {noformat}
> // TODO: this all need to be converted to real unit tests
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (WW-5250) Address TODO in DefaultActionValidatorManagerTest

2024-06-09 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5250?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart resolved WW-5250.
---
Resolution: Fixed

> Address TODO in DefaultActionValidatorManagerTest
> -
>
> Key: WW-5250
> URL: https://issues.apache.org/jira/browse/WW-5250
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core, Unit Tests, XML Validators
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> There is a TODO which should be addressed:
> {noformat}
> // TODO: this all need to be converted to real unit tests
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-09 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922751=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922751
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 05:02
Start Date: 10/Jun/24 05:02
Worklog Time Spent: 10m 
  Work Description: lukaszlenart merged PR #956:
URL: https://github.com/apache/struts/pull/956




Issue Time Tracking
---

Worklog Id: (was: 922751)
Time Spent: 2h 40m  (was: 2.5h)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 40m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-09 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart resolved WW-5400.
---
Resolution: Fixed

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 40m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5423) Query Parameters in Multipart Requests not working in v7 M6

2024-06-09 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5423?focusedWorklogId=922750=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922750
 ]

ASF GitHub Bot logged work on WW-5423:
--

Author: ASF GitHub Bot
Created on: 10/Jun/24 05:02
Start Date: 10/Jun/24 05:02
Worklog Time Spent: 10m 
  Work Description: lukaszlenart merged PR #954:
URL: https://github.com/apache/struts/pull/954




Issue Time Tracking
---

Worklog Id: (was: 922750)
Time Spent: 40m  (was: 0.5h)

> Query Parameters in Multipart Requests not working in v7 M6
> ---
>
> Key: WW-5423
> URL: https://issues.apache.org/jira/browse/WW-5423
> Project: Struts 2
>  Issue Type: Bug
>Affects Versions: 7.0.0
>Reporter: Philip Crider
>Priority: Major
> Fix For: 7.0.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> One of the changes in [https://github.com/apache/struts/pull/861] broke query 
> parameters in multipart requests. Their values are being lost.
> This is the old implementation, which returns null if the parameter doesn't 
> exist.
> {code:java}
> public String[] getParameterValues(String name) {
> List v = params.get(name);
> if (v != null && !v.isEmpty()) {
> return v.toArray(new String[0]);
> }
> return null;
> } {code}
>  
> And this is the new implementation, which returns an empty array in that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return parameters.getOrDefault(name, Collections.emptyList())
> .toArray(String[]::new);
> }{code}
>  
> This method in MultiPartRequestWrapper is expecting null to be returned in 
> that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return ((multi == null) || (multi.getParameterValues(name) == null)) ? 
> super.getParameterValues(name) : multi.getParameterValues(name);
> }{code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (WW-5423) Query Parameters in Multipart Requests not working in v7 M6

2024-06-09 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5423?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart resolved WW-5423.
---
Resolution: Fixed

> Query Parameters in Multipart Requests not working in v7 M6
> ---
>
> Key: WW-5423
> URL: https://issues.apache.org/jira/browse/WW-5423
> Project: Struts 2
>  Issue Type: Bug
>Affects Versions: 7.0.0
>Reporter: Philip Crider
>Priority: Major
> Fix For: 7.0.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> One of the changes in [https://github.com/apache/struts/pull/861] broke query 
> parameters in multipart requests. Their values are being lost.
> This is the old implementation, which returns null if the parameter doesn't 
> exist.
> {code:java}
> public String[] getParameterValues(String name) {
> List v = params.get(name);
> if (v != null && !v.isEmpty()) {
> return v.toArray(new String[0]);
> }
> return null;
> } {code}
>  
> And this is the new implementation, which returns an empty array in that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return parameters.getOrDefault(name, Collections.emptyList())
> .toArray(String[]::new);
> }{code}
>  
> This method in MultiPartRequestWrapper is expecting null to be returned in 
> that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return ((multi == null) || (multi.getParameterValues(name) == null)) ? 
> super.getParameterValues(name) : multi.getParameterValues(name);
> }{code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5250) Address TODO in DefaultActionValidatorManagerTest

2024-06-07 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5250?focusedWorklogId=922464=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922464
 ]

ASF GitHub Bot logged work on WW-5250:
--

Author: ASF GitHub Bot
Created on: 07/Jun/24 06:39
Start Date: 07/Jun/24 06:39
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #957:
URL: https://github.com/apache/struts/pull/957#issuecomment-2154189972

   ## [![Quality Gate 
Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png
 'Quality Gate 
Passed')](https://sonarcloud.io/dashboard?id=apache_struts=957) 
**Quality Gate passed**  
   Issues  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [1 New 
issue](https://sonarcloud.io/project/issues?id=apache_struts=957=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png
 '') [0 Accepted 
issues](https://sonarcloud.io/project/issues?id=apache_struts=957=WONTFIX)
   
   Measures  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_struts=957=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [100.0% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=957=new_coverage=list)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0.0% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=957=new_duplicated_lines_density=list)
  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=957)
   
   




Issue Time Tracking
---

Worklog Id: (was: 922464)
Time Spent: 20m  (was: 10m)

> Address TODO in DefaultActionValidatorManagerTest
> -
>
> Key: WW-5250
> URL: https://issues.apache.org/jira/browse/WW-5250
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core, Unit Tests, XML Validators
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> There is a TODO which should be addressed:
> {noformat}
> // TODO: this all need to be converted to real unit tests
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work started] (WW-5250) Address TODO in DefaultActionValidatorManagerTest

2024-06-07 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5250?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Work on WW-5250 started by Lukasz Lenart.
-
> Address TODO in DefaultActionValidatorManagerTest
> -
>
> Key: WW-5250
> URL: https://issues.apache.org/jira/browse/WW-5250
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core, Unit Tests, XML Validators
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> There is a TODO which should be addressed:
> {noformat}
> // TODO: this all need to be converted to real unit tests
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5250) Address TODO in DefaultActionValidatorManagerTest

2024-06-07 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5250?focusedWorklogId=922458=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922458
 ]

ASF GitHub Bot logged work on WW-5250:
--

Author: ASF GitHub Bot
Created on: 07/Jun/24 06:33
Start Date: 07/Jun/24 06:33
Worklog Time Spent: 10m 
  Work Description: lukaszlenart opened a new pull request, #957:
URL: https://github.com/apache/struts/pull/957

   Closes [WW-5250](https://issues.apache.org/jira/browse/WW-5250)




Issue Time Tracking
---

Worklog Id: (was: 922458)
Remaining Estimate: 0h
Time Spent: 10m

> Address TODO in DefaultActionValidatorManagerTest
> -
>
> Key: WW-5250
> URL: https://issues.apache.org/jira/browse/WW-5250
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core, Unit Tests, XML Validators
>Reporter: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> There is a TODO which should be addressed:
> {noformat}
> // TODO: this all need to be converted to real unit tests
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (WW-5250) Address TODO in DefaultActionValidatorManagerTest

2024-06-07 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5250?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart reassigned WW-5250:
-

Assignee: Lukasz Lenart

> Address TODO in DefaultActionValidatorManagerTest
> -
>
> Key: WW-5250
> URL: https://issues.apache.org/jira/browse/WW-5250
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core, Unit Tests, XML Validators
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Minor
> Fix For: 6.5.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> There is a TODO which should be addressed:
> {noformat}
> // TODO: this all need to be converted to real unit tests
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-05 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922279=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922279
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 06/Jun/24 04:38
Start Date: 06/Jun/24 04:38
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #956:
URL: https://github.com/apache/struts/pull/956#issuecomment-2151397853

   ## [![Quality Gate 
Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png
 'Quality Gate 
Passed')](https://sonarcloud.io/dashboard?id=apache_struts=956) 
**Quality Gate passed**  
   Issues  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 New 
issues](https://sonarcloud.io/project/issues?id=apache_struts=956=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png
 '') [0 Accepted 
issues](https://sonarcloud.io/project/issues?id=apache_struts=956=WONTFIX)
   
   Measures  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_struts=956=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [100.0% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=956=new_coverage=list)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0.0% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=956=new_duplicated_lines_density=list)
  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=956)
   
   




Issue Time Tracking
---

Worklog Id: (was: 922279)
Time Spent: 2.5h  (was: 2h 20m)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2.5h
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-05 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922275=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922275
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 06/Jun/24 03:54
Start Date: 06/Jun/24 03:54
Worklog Time Spent: 10m 
  Work Description: kusalk commented on code in PR #956:
URL: https://github.com/apache/struts/pull/956#discussion_r1628741666


##
core/src/main/java/org/apache/struts2/interceptor/csp/CspInterceptor.java:
##
@@ -57,26 +59,28 @@ public String intercept(ActionInvocation invocation) throws 
Exception {
 LOG.trace("Using CspSettings provided by the action: {}", action);
 applySettings(invocation, ((CspSettingsAware) 
action).getCspSettings());
 } else {
-LOG.trace("Using {} with action: {}", defaultCspSettingsClassName, 
action);
+LOG.trace("Using {} with action: {}", cspSettingsClassName, 
action);
+CspSettings cspSettings = createCspSettings(invocation);
+applySettings(invocation, cspSettings);
+}
+return invocation.invoke();
+}
 
-// if the defaultCspSettingsClassName is not a real class, throw 
an exception
-try {
-Class.forName(defaultCspSettingsClassName, false, 
Thread.currentThread().getContextClassLoader());
-}
-catch (ClassNotFoundException e) {
-throw new IllegalArgumentException("The 
defaultCspSettingsClassName must be a real class.");
-}
+private CspSettings createCspSettings(ActionInvocation invocation) throws 
ClassNotFoundException {
+Class cspSettingsClass;
 
-// if defaultCspSettingsClassName does not implement CspSettings, 
throw an exception
-if 
(!CspSettings.class.isAssignableFrom(Class.forName(defaultCspSettingsClassName)))
 {
-throw new IllegalArgumentException("The 
defaultCspSettingsClassName must implement CspSettings.");
-}
+try {
+cspSettingsClass = ClassLoaderUtil.loadClass(cspSettingsClassName, 
getClass());
+} catch (ClassNotFoundException e) {
+throw new ConfigurationException(String.format("The class %s 
doesn't exist!", cspSettingsClassName));
+}
 
-CspSettings cspSettings = (CspSettings) 
Class.forName(defaultCspSettingsClassName)
-.getDeclaredConstructor().newInstance();
-applySettings(invocation, cspSettings);
+if 
(!CspSettings.class.isAssignableFrom(Class.forName(cspSettingsClassName))) {

Review Comment:
   ```suggestion
   if (!CspSettings.class.isAssignableFrom(cspSettingsClass)) {
   ```





Issue Time Tracking
---

Worklog Id: (was: 922275)
Time Spent: 2h 20m  (was: 2h 10m)

> CSP interceptor only allows very limited configuration
> --
>
>     Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-04 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922080=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922080
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 05/Jun/24 05:46
Start Date: 05/Jun/24 05:46
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #956:
URL: https://github.com/apache/struts/pull/956#issuecomment-2148906410

   ## [![Quality Gate 
Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png
 'Quality Gate 
Passed')](https://sonarcloud.io/dashboard?id=apache_struts=956) 
**Quality Gate passed**  
   Issues  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 New 
issues](https://sonarcloud.io/project/issues?id=apache_struts=956=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png
 '') [0 Accepted 
issues](https://sonarcloud.io/project/issues?id=apache_struts=956=WONTFIX)
   
   Measures  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_struts=956=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [100.0% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=956=new_coverage=list)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0.0% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=956=new_duplicated_lines_density=list)
  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=956)
   
   




Issue Time Tracking
---

Worklog Id: (was: 922080)
Time Spent: 2h 10m  (was: 2h)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 10m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-04 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922079=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922079
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 05/Jun/24 05:45
Start Date: 05/Jun/24 05:45
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #956:
URL: https://github.com/apache/struts/pull/956#issuecomment-2148904765

   ## [![Quality Gate 
Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png
 'Quality Gate 
Passed')](https://sonarcloud.io/dashboard?id=apache_struts=956) 
**Quality Gate passed**  
   Issues  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 New 
issues](https://sonarcloud.io/project/issues?id=apache_struts=956=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png
 '') [0 Accepted 
issues](https://sonarcloud.io/project/issues?id=apache_struts=956=WONTFIX)
   
   Measures  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_struts=956=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [100.0% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=956=new_coverage=list)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0.0% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=956=new_duplicated_lines_density=list)
  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=956)
   
   




Issue Time Tracking
---

Worklog Id: (was: 922079)
Time Spent: 2h  (was: 1h 50m)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5414) AfterInvocation of BackgroundProcess is not called when an exception occurs when using ExecuteAndWaitInterceptor

2024-06-04 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5414?focusedWorklogId=922078=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922078
 ]

ASF GitHub Bot logged work on WW-5414:
--

Author: ASF GitHub Bot
Created on: 05/Jun/24 05:42
Start Date: 05/Jun/24 05:42
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #955:
URL: https://github.com/apache/struts/pull/955#issuecomment-2148902161

   ## [![Quality Gate 
Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png
 'Quality Gate 
Passed')](https://sonarcloud.io/dashboard?id=apache_struts=955) 
**Quality Gate passed**  
   Issues  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 New 
issues](https://sonarcloud.io/project/issues?id=apache_struts=955=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png
 '') [0 Accepted 
issues](https://sonarcloud.io/project/issues?id=apache_struts=955=WONTFIX)
   
   Measures  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_struts=955=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [100.0% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=955=new_coverage=list)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0.0% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=955=new_duplicated_lines_density=list)
  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=955)
   
   




Issue Time Tracking
---

Worklog Id: (was: 922078)
Time Spent: 2h 20m  (was: 2h 10m)

> AfterInvocation of BackgroundProcess is not called when an exception occurs 
> when using ExecuteAndWaitInterceptor
> 
>
> Key: WW-5414
> URL: https://issues.apache.org/jira/browse/WW-5414
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Interceptors
>Affects Versions: 2.5.30, 6.3.0
>Reporter: Yukio Suzuki
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> In my project, we are using Struts2.5.x and recently started using the 
> ExecuteAndWaitInterceptor. We have extended BackgroundProcess and overridden 
> the beforeInvocation and afterInvocation methods to perform certain actions 
> before and after the invocation of an action. However, we are facing a 
> problem where afterInvocation is not called when an exception occurs. Here is 
> the relevant code:
>  
> {code:java}
> final Thread t = new Thread(new Runnable() {
>   public void run() {
>     try {
>       beforeInvocation();
>       result = invocation.invokeActionOnly();
>       afterInvocation();
>     } catch (Exception e) {
>       exception = e;
>     }
>     
>     done = true;
>   }
> });
> {code}
> In the existing code, the beforeInvocation and afterInvocation methods set 
> and clear the context, but it seems unintentional that the context is not 
> cleared when an exception occurs.
> {code:java}
> protected void beforeInvocation() throws Exception {
>     ActionContext.setContext(invocation.getInvocationContext());
> }
> protected void afterInvocation() throws Exception {
>     ActionContext.setContext(null);
> }{code}
> One possible improvement is to modify the code as follows, ensuring that 
> afterInvocation is called even when an exception occurs:
> {code:java}
> beforeInvocation();
> try {
>   result = invocation.invokeActionOnly();
> } finally {
>   afterInvocation();
> }{code}
> Alternatively, if compatibility is a concern, you can add an 
> afterInvocation(Throwable t) method and modify the code as follows:
> {code:java}
> beforeInvocation();
> try {
>   result = invocation.invokeActionOnly();
> } catch (Throwable t) {
>   afterInvocation(t);
>   throw t;
> }
> afterInvocation();{code}
> Please consider these modifications to ensure that afterInvocation is called 
> even when an exception occurs.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-04 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart reassigned WW-5400:
-

Assignee: Lukasz Lenart

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-04 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922076=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922076
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 05/Jun/24 05:39
Start Date: 05/Jun/24 05:39
Worklog Time Spent: 10m 
  Work Description: lukaszlenart commented on PR #956:
URL: https://github.com/apache/struts/pull/956#issuecomment-2148898785

   /cc: @eschulma
   




Issue Time Tracking
---

Worklog Id: (was: 922076)
Time Spent: 1h 50m  (was: 1h 40m)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5400) CSP interceptor only allows very limited configuration

2024-06-04 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5400?focusedWorklogId=922075=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922075
 ]

ASF GitHub Bot logged work on WW-5400:
--

Author: ASF GitHub Bot
Created on: 05/Jun/24 05:38
Start Date: 05/Jun/24 05:38
Worklog Time Spent: 10m 
  Work Description: lukaszlenart opened a new pull request, #956:
URL: https://github.com/apache/struts/pull/956

   Small refactoring of how `CspSettings` class is created plus additional 
tests. See #913 for more details.
   
   Closes [WW-5400](https://issues.apache.org/jira/browse/WW-5400)




Issue Time Tracking
---

Worklog Id: (was: 922075)
Time Spent: 1h 40m  (was: 1.5h)

> CSP interceptor only allows very limited configuration
> --
>
> Key: WW-5400
> URL: https://issues.apache.org/jira/browse/WW-5400
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Core Interceptors
>Affects Versions: 6.3.0
>Reporter: Erica Kane
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 1h 40m
>  Remaining Estimate: 0h
>
> I have been trying to implement CSP on our website. The CSP interceptor 
> provides an elegant solution with the  and  tags. However, 
> I want to set my own base-uri. And perhaps make some other changes to the CSP 
> headers.
> But these values are not accessible. Only the report-only and report-uri can 
> be changed. Even if one is willing to work at the Action level and implement 
> a new interface for all of them, I can't change the base-uri. I've seen 
> people on Stack Overflow disable it for this reason. I want to use it, but 
> could someone please explain how to set the base-uri globally? If not, I will 
> likely have to make my own.
> P.S. I will update the documentation page. Nowhere in the description of the 
> interceptor does it mention the script and link tags, and without those, it 
> is useless!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5414) AfterInvocation of BackgroundProcess is not called when an exception occurs when using ExecuteAndWaitInterceptor

2024-06-04 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5414?focusedWorklogId=922074=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922074
 ]

ASF GitHub Bot logged work on WW-5414:
--

Author: ASF GitHub Bot
Created on: 05/Jun/24 05:38
Start Date: 05/Jun/24 05:38
Worklog Time Spent: 10m 
  Work Description: lukaszlenart closed pull request #955: WW-5414 
Simplifies how CspSettings is created
URL: https://github.com/apache/struts/pull/955




Issue Time Tracking
---

Worklog Id: (was: 922074)
Time Spent: 2h 10m  (was: 2h)

> AfterInvocation of BackgroundProcess is not called when an exception occurs 
> when using ExecuteAndWaitInterceptor
> 
>
> Key: WW-5414
> URL: https://issues.apache.org/jira/browse/WW-5414
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Interceptors
>Affects Versions: 2.5.30, 6.3.0
>Reporter: Yukio Suzuki
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h 10m
>  Remaining Estimate: 0h
>
> In my project, we are using Struts2.5.x and recently started using the 
> ExecuteAndWaitInterceptor. We have extended BackgroundProcess and overridden 
> the beforeInvocation and afterInvocation methods to perform certain actions 
> before and after the invocation of an action. However, we are facing a 
> problem where afterInvocation is not called when an exception occurs. Here is 
> the relevant code:
>  
> {code:java}
> final Thread t = new Thread(new Runnable() {
>   public void run() {
>     try {
>       beforeInvocation();
>       result = invocation.invokeActionOnly();
>       afterInvocation();
>     } catch (Exception e) {
>       exception = e;
>     }
>     
>     done = true;
>   }
> });
> {code}
> In the existing code, the beforeInvocation and afterInvocation methods set 
> and clear the context, but it seems unintentional that the context is not 
> cleared when an exception occurs.
> {code:java}
> protected void beforeInvocation() throws Exception {
>     ActionContext.setContext(invocation.getInvocationContext());
> }
> protected void afterInvocation() throws Exception {
>     ActionContext.setContext(null);
> }{code}
> One possible improvement is to modify the code as follows, ensuring that 
> afterInvocation is called even when an exception occurs:
> {code:java}
> beforeInvocation();
> try {
>   result = invocation.invokeActionOnly();
> } finally {
>   afterInvocation();
> }{code}
> Alternatively, if compatibility is a concern, you can add an 
> afterInvocation(Throwable t) method and modify the code as follows:
> {code:java}
> beforeInvocation();
> try {
>   result = invocation.invokeActionOnly();
> } catch (Throwable t) {
>   afterInvocation(t);
>   throw t;
> }
> afterInvocation();{code}
> Please consider these modifications to ensure that afterInvocation is called 
> even when an exception occurs.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5414) AfterInvocation of BackgroundProcess is not called when an exception occurs when using ExecuteAndWaitInterceptor

2024-06-04 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5414?focusedWorklogId=922073=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922073
 ]

ASF GitHub Bot logged work on WW-5414:
--

Author: ASF GitHub Bot
Created on: 05/Jun/24 05:36
Start Date: 05/Jun/24 05:36
Worklog Time Spent: 10m 
  Work Description: lukaszlenart opened a new pull request, #955:
URL: https://github.com/apache/struts/pull/955

   Small refactoring of how `CspSettings` class is created plus additional 
tests.
   
   Refs [WW-5414](https://issues.apache.org/jira/browse/WW-5414)




Issue Time Tracking
---

Worklog Id: (was: 922073)
Time Spent: 2h  (was: 1h 50m)

> AfterInvocation of BackgroundProcess is not called when an exception occurs 
> when using ExecuteAndWaitInterceptor
> 
>
> Key: WW-5414
> URL: https://issues.apache.org/jira/browse/WW-5414
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Interceptors
>Affects Versions: 2.5.30, 6.3.0
>Reporter: Yukio Suzuki
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 2h
>  Remaining Estimate: 0h
>
> In my project, we are using Struts2.5.x and recently started using the 
> ExecuteAndWaitInterceptor. We have extended BackgroundProcess and overridden 
> the beforeInvocation and afterInvocation methods to perform certain actions 
> before and after the invocation of an action. However, we are facing a 
> problem where afterInvocation is not called when an exception occurs. Here is 
> the relevant code:
>  
> {code:java}
> final Thread t = new Thread(new Runnable() {
>   public void run() {
>     try {
>       beforeInvocation();
>       result = invocation.invokeActionOnly();
>       afterInvocation();
>     } catch (Exception e) {
>       exception = e;
>     }
>     
>     done = true;
>   }
> });
> {code}
> In the existing code, the beforeInvocation and afterInvocation methods set 
> and clear the context, but it seems unintentional that the context is not 
> cleared when an exception occurs.
> {code:java}
> protected void beforeInvocation() throws Exception {
>     ActionContext.setContext(invocation.getInvocationContext());
> }
> protected void afterInvocation() throws Exception {
>     ActionContext.setContext(null);
> }{code}
> One possible improvement is to modify the code as follows, ensuring that 
> afterInvocation is called even when an exception occurs:
> {code:java}
> beforeInvocation();
> try {
>   result = invocation.invokeActionOnly();
> } finally {
>   afterInvocation();
> }{code}
> Alternatively, if compatibility is a concern, you can add an 
> afterInvocation(Throwable t) method and modify the code as follows:
> {code:java}
> beforeInvocation();
> try {
>   result = invocation.invokeActionOnly();
> } catch (Throwable t) {
>   afterInvocation(t);
>   throw t;
> }
> afterInvocation();{code}
> Please consider these modifications to ensure that afterInvocation is called 
> even when an exception occurs.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5423) Query Parameters in Multipart Requests not working in v7 M6

2024-06-04 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5423?focusedWorklogId=922070=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922070
 ]

ASF GitHub Bot logged work on WW-5423:
--

Author: ASF GitHub Bot
Created on: 05/Jun/24 05:14
Start Date: 05/Jun/24 05:14
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #954:
URL: https://github.com/apache/struts/pull/954#issuecomment-2148872114

   ## [![Quality Gate 
Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png
 'Quality Gate 
Passed')](https://sonarcloud.io/dashboard?id=apache_struts=954) 
**Quality Gate passed**  
   Issues  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 New 
issues](https://sonarcloud.io/project/issues?id=apache_struts=954=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png
 '') [0 Accepted 
issues](https://sonarcloud.io/project/issues?id=apache_struts=954=WONTFIX)
   
   Measures  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_struts=954=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [100.0% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=954=new_coverage=list)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0.0% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_struts=954=new_duplicated_lines_density=list)
  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=954)
   
   




Issue Time Tracking
---

Worklog Id: (was: 922070)
Time Spent: 0.5h  (was: 20m)

> Query Parameters in Multipart Requests not working in v7 M6
> ---
>
> Key: WW-5423
> URL: https://issues.apache.org/jira/browse/WW-5423
> Project: Struts 2
>  Issue Type: Bug
>Affects Versions: 7.0.0
>Reporter: Philip Crider
>Priority: Major
> Fix For: 7.0.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> One of the changes in [https://github.com/apache/struts/pull/861] broke query 
> parameters in multipart requests. Their values are being lost.
> This is the old implementation, which returns null if the parameter doesn't 
> exist.
> {code:java}
> public String[] getParameterValues(String name) {
> List v = params.get(name);
> if (v != null && !v.isEmpty()) {
> return v.toArray(new String[0]);
> }
> return null;
> } {code}
>  
> And this is the new implementation, which returns an empty array in that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return parameters.getOrDefault(name, Collections.emptyList())
> .toArray(String[]::new);
> }{code}
>  
> This method in MultiPartRequestWrapper is expecting null to be returned in 
> that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return ((multi == null) || (multi.getParameterValues(name) == null)) ? 
> super.getParameterValues(name) : multi.getParameterValues(name);
> }{code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (WW-5413) Multipart misbehavior with commons-io 2.16.0 and 2.16.1

2024-06-04 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5413?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart updated WW-5413:
--
Fix Version/s: 7.0.0
   (was: 6.5.0)

> Multipart misbehavior with commons-io 2.16.0 and 2.16.1
> ---
>
> Key: WW-5413
> URL: https://issues.apache.org/jira/browse/WW-5413
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 6.3.0
>Reporter: Riccardo Proserpio
>Priority: Major
> Fix For: 7.0.0
>
>
> commons-io 2.16.0 has broken the implementation of 
> DeferredFileOutputStream changing the behavior of its superclass 
> ThresholdingOutputStream: IO-854
>  
> The class is used by commons-fileupload DiskFileItem, that is used by Struts 
> to handle multipart uploads. The issue causes each multipart part to be read 
> as empty.
>  
> A fix has been implemented in 2.16.1. However, the fix exposes an issue in 
> how the getFile of JakartaMultiPartRequest uses DiskFileItem, that causes it 
> to mishandle zero length inputs.
>  
> The issue is related to WW-5088 and WW-5146
>  
> Moreover, the fix implemented for this issues seems to be dubious and affects 
> not only file uploads but every field encoded as multipart/form-data: by 
> forcing the diskfileitem threshold to be -1, each and every field was written 
> to the filesystem.
>  
> The behavior of threadshold -1 was underspecified and inconsistent with the 
> commons-io implementation, and has been specified in 2.16.1.
>  
> To really fix the issue, I suggest to avoid specifying -1 on the 
> DiskFileItemFactory and to properly handle the case when the 
> DiskFileItem.isInMemory() returns true in the JakartaMultiPartRequest.getFile 
> method: in this case getStoreLocation() is defined to return null and the 
> bytes should be read from memory instead.
>  
> Avoiding always spilling to disk each and every multipart part should also be 
> a performance win, considering that multipart can also be used to transfer 
> normal form inputs and not only files.
>  
> What do you think?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (WW-5412) Upgrade to Apache Struts Master 15

2024-06-04 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5412?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart resolved WW-5412.
---
Resolution: Fixed

> Upgrade to Apache Struts Master 15
> --
>
> Key: WW-5412
> URL: https://issues.apache.org/jira/browse/WW-5412
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Build Management
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5412) Upgrade to Apache Struts Master 15

2024-06-04 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5412?focusedWorklogId=922068=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922068
 ]

ASF GitHub Bot logged work on WW-5412:
--

Author: ASF GitHub Bot
Created on: 05/Jun/24 05:06
Start Date: 05/Jun/24 05:06
Worklog Time Spent: 10m 
  Work Description: lukaszlenart merged PR #948:
URL: https://github.com/apache/struts/pull/948




Issue Time Tracking
---

Worklog Id: (was: 922068)
Time Spent: 0.5h  (was: 20m)

> Upgrade to Apache Struts Master 15
> --
>
> Key: WW-5412
> URL: https://issues.apache.org/jira/browse/WW-5412
> Project: Struts 2
>  Issue Type: Improvement
>  Components: Build Management
>Reporter: Lukasz Lenart
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5424) ClassCastException with tag "set" when variable name has length=1

2024-06-04 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5424?focusedWorklogId=922067=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922067
 ]

ASF GitHub Bot logged work on WW-5424:
--

Author: ASF GitHub Bot
Created on: 05/Jun/24 05:05
Start Date: 05/Jun/24 05:05
Worklog Time Spent: 10m 
  Work Description: lukaszlenart merged PR #946:
URL: https://github.com/apache/struts/pull/946




Issue Time Tracking
---

Worklog Id: (was: 922067)
Time Spent: 0.5h  (was: 20m)

> ClassCastException with tag "set" when variable name has length=1
> -
>
> Key: WW-5424
> URL: https://issues.apache.org/jira/browse/WW-5424
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Tags
>Affects Versions: 6.4.0
>Reporter: Daniel López
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> I think it is caused by the refactor of WW-5333
> When the tag "set" is used to define a variable whose name is of length 1, a 
> java.lang.ClassCastException (class java.lang.Character cannot be cast to 
> class java.lang.String ) is thrown.
>  
> Test case:
> {code:java}
> // code placeholder
>  a = 
>  b = {code}
> Expected result:
> {code:java}
> // code placeholder
> a = 1
> b = 2{code}
> actual result:
> {code:java}
> a = 1
> b ={code}
> Both "s:set" throws exception when storing the value in page context. Value 
> of a is retrieved as it is successfully saved in default context
> Exception trace
> {code:java}
> // code placeholder
> Error setting value [2] with expression [#attr['b']]
> java.lang.ClassCastException: class java.lang.Character cannot be cast to 
> class java.lang.String (java.lang.Character and java.lang.String are in 
> module java.base of loader 'bootstrap')
>     at org.apache.struts2.dispatcher.AttributeMap.put(AttributeMap.java:46) 
> ~[struts2-core-6.4.0.jar:6.4.0]
>     at 
> com.opensymphony.xwork2.ognl.accessor.XWorkMapPropertyAccessor.setProperty(XWorkMapPropertyAccessor.java:130)
>  ~[struts2-core-6.4.0.jar:6.4.0]
>     at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:3359) ~[ognl-3.3.4.jar:?]
>     at ognl.ASTProperty.setValueBody(ASTProperty.java:134) ~[ognl-3.3.4.jar:?]
>     at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220) 
> ~[ognl-3.3.4.jar:?]
>     at ognl.SimpleNode.setValue(SimpleNode.java:308) ~[ognl-3.3.4.jar:?]
>     at ognl.ASTChain.setValueBody(ASTChain.java:227) ~[ognl-3.3.4.jar:?]
>     at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220) 
> ~[ognl-3.3.4.jar:?]
>     at ognl.SimpleNode.setValue(SimpleNode.java:308) ~[ognl-3.3.4.jar:?]
>     at ognl.Ognl.setValue(Ognl.java:829) ~[ognl-3.3.4.jar:?]
>     at com.opensymphony.xwork2.ognl.OgnlUtil.ognlSet(OgnlUtil.java:585) 
> ~[struts2-core-6.4.0.jar:6.4.0]
>     at com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:522) 
> ~[struts2-core-6.4.0.jar:6.4.0]
>     at 
> com.opensymphony.xwork2.ognl.OgnlValueStack.trySetValue(OgnlValueStack.java:258)
>  [struts2-core-6.4.0.jar:6.4.0]
>     at 
> com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:245) 
> [struts2-core-6.4.0.jar:6.4.0]
>     at org.apache.struts2.components.Set.end(Set.java:113) 
> [struts2-core-6.4.0.jar:6.4.0]
>     at 
> org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:38)
>  [struts2-core-6.4.0.jar:6.4.0]
> {code}
> When name is of length 1, the key is created as Character not String, and it 
> fails when trying to store in a 
> AttributeMap extends AbstractMap
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (WW-5424) ClassCastException with tag "set" when variable name has length=1

2024-06-04 Thread Lukasz Lenart (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5424?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukasz Lenart resolved WW-5424.
---
Resolution: Fixed

> ClassCastException with tag "set" when variable name has length=1
> -
>
> Key: WW-5424
> URL: https://issues.apache.org/jira/browse/WW-5424
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core Tags
>Affects Versions: 6.4.0
>Reporter: Daniel López
>Assignee: Lukasz Lenart
>Priority: Major
> Fix For: 6.5.0
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> I think it is caused by the refactor of WW-5333
> When the tag "set" is used to define a variable whose name is of length 1, a 
> java.lang.ClassCastException (class java.lang.Character cannot be cast to 
> class java.lang.String ) is thrown.
>  
> Test case:
> {code:java}
> // code placeholder
>  a = 
>  b = {code}
> Expected result:
> {code:java}
> // code placeholder
> a = 1
> b = 2{code}
> actual result:
> {code:java}
> a = 1
> b ={code}
> Both "s:set" throws exception when storing the value in page context. Value 
> of a is retrieved as it is successfully saved in default context
> Exception trace
> {code:java}
> // code placeholder
> Error setting value [2] with expression [#attr['b']]
> java.lang.ClassCastException: class java.lang.Character cannot be cast to 
> class java.lang.String (java.lang.Character and java.lang.String are in 
> module java.base of loader 'bootstrap')
>     at org.apache.struts2.dispatcher.AttributeMap.put(AttributeMap.java:46) 
> ~[struts2-core-6.4.0.jar:6.4.0]
>     at 
> com.opensymphony.xwork2.ognl.accessor.XWorkMapPropertyAccessor.setProperty(XWorkMapPropertyAccessor.java:130)
>  ~[struts2-core-6.4.0.jar:6.4.0]
>     at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:3359) ~[ognl-3.3.4.jar:?]
>     at ognl.ASTProperty.setValueBody(ASTProperty.java:134) ~[ognl-3.3.4.jar:?]
>     at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220) 
> ~[ognl-3.3.4.jar:?]
>     at ognl.SimpleNode.setValue(SimpleNode.java:308) ~[ognl-3.3.4.jar:?]
>     at ognl.ASTChain.setValueBody(ASTChain.java:227) ~[ognl-3.3.4.jar:?]
>     at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220) 
> ~[ognl-3.3.4.jar:?]
>     at ognl.SimpleNode.setValue(SimpleNode.java:308) ~[ognl-3.3.4.jar:?]
>     at ognl.Ognl.setValue(Ognl.java:829) ~[ognl-3.3.4.jar:?]
>     at com.opensymphony.xwork2.ognl.OgnlUtil.ognlSet(OgnlUtil.java:585) 
> ~[struts2-core-6.4.0.jar:6.4.0]
>     at com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:522) 
> ~[struts2-core-6.4.0.jar:6.4.0]
>     at 
> com.opensymphony.xwork2.ognl.OgnlValueStack.trySetValue(OgnlValueStack.java:258)
>  [struts2-core-6.4.0.jar:6.4.0]
>     at 
> com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:245) 
> [struts2-core-6.4.0.jar:6.4.0]
>     at org.apache.struts2.components.Set.end(Set.java:113) 
> [struts2-core-6.4.0.jar:6.4.0]
>     at 
> org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:38)
>  [struts2-core-6.4.0.jar:6.4.0]
> {code}
> When name is of length 1, the key is created as Character not String, and it 
> fails when trying to store in a 
> AttributeMap extends AbstractMap
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5423) Query Parameters in Multipart Requests not working in v7 M6

2024-06-04 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5423?focusedWorklogId=921937=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-921937
 ]

ASF GitHub Bot logged work on WW-5423:
--

Author: ASF GitHub Bot
Created on: 04/Jun/24 09:59
Start Date: 04/Jun/24 09:59
Worklog Time Spent: 10m 
  Work Description: sonarcloud[bot] commented on PR #954:
URL: https://github.com/apache/struts/pull/954#issuecomment-2147123378

   ## [![Quality Gate 
Failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-failed-20px.png
 'Quality Gate 
Failed')](https://sonarcloud.io/dashboard?id=apache_struts=954) 
**Quality Gate failed**  
   Failed conditions  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/failed-16px.png
 '') [C Maintainability Rating on New 
Code](https://sonarcloud.io/dashboard?id=apache_struts=954) 
(required ≥ A)  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_struts=954)
   
   ##   
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/light_bulb-16px.png
 '') Catch issues before they fail your Quality Gate with our IDE extension 
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/sonarlint-16px.png
 '') 
[SonarLint](https://www.sonarsource.com/products/sonarlint/features/connected-mode/?referrer=pull-request)
   
   




Issue Time Tracking
---

Worklog Id: (was: 921937)
Time Spent: 20m  (was: 10m)

> Query Parameters in Multipart Requests not working in v7 M6
> ---
>
> Key: WW-5423
> URL: https://issues.apache.org/jira/browse/WW-5423
> Project: Struts 2
>  Issue Type: Bug
>Affects Versions: 7.0.0
>Reporter: Philip Crider
>Priority: Major
> Fix For: 7.0.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> One of the changes in [https://github.com/apache/struts/pull/861] broke query 
> parameters in multipart requests. Their values are being lost.
> This is the old implementation, which returns null if the parameter doesn't 
> exist.
> {code:java}
> public String[] getParameterValues(String name) {
> List v = params.get(name);
> if (v != null && !v.isEmpty()) {
> return v.toArray(new String[0]);
> }
> return null;
> } {code}
>  
> And this is the new implementation, which returns an empty array in that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return parameters.getOrDefault(name, Collections.emptyList())
> .toArray(String[]::new);
> }{code}
>  
> This method in MultiPartRequestWrapper is expecting null to be returned in 
> that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return ((multi == null) || (multi.getParameterValues(name) == null)) ? 
> super.getParameterValues(name) : multi.getParameterValues(name);
> }{code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (WW-5423) Query Parameters in Multipart Requests not working in v7 M6

2024-06-04 Thread Lukasz Lenart (Jira)


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

Lukasz Lenart commented on WW-5423:
---

PR is ready

> Query Parameters in Multipart Requests not working in v7 M6
> ---
>
> Key: WW-5423
> URL: https://issues.apache.org/jira/browse/WW-5423
> Project: Struts 2
>  Issue Type: Bug
>Affects Versions: 7.0.0
>Reporter: Philip Crider
>Priority: Major
> Fix For: 7.0.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> One of the changes in [https://github.com/apache/struts/pull/861] broke query 
> parameters in multipart requests. Their values are being lost.
> This is the old implementation, which returns null if the parameter doesn't 
> exist.
> {code:java}
> public String[] getParameterValues(String name) {
> List v = params.get(name);
> if (v != null && !v.isEmpty()) {
> return v.toArray(new String[0]);
> }
> return null;
> } {code}
>  
> And this is the new implementation, which returns an empty array in that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return parameters.getOrDefault(name, Collections.emptyList())
> .toArray(String[]::new);
> }{code}
>  
> This method in MultiPartRequestWrapper is expecting null to be returned in 
> that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return ((multi == null) || (multi.getParameterValues(name) == null)) ? 
> super.getParameterValues(name) : multi.getParameterValues(name);
> }{code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (WW-5423) Query Parameters in Multipart Requests not working in v7 M6

2024-06-04 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/WW-5423?focusedWorklogId=921934=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-921934
 ]

ASF GitHub Bot logged work on WW-5423:
--

Author: ASF GitHub Bot
Created on: 04/Jun/24 09:52
Start Date: 04/Jun/24 09:52
Worklog Time Spent: 10m 
  Work Description: lukaszlenart opened a new pull request, #954:
URL: https://github.com/apache/struts/pull/954

   
   Fixes [WW-5423](https://issues.apache.org/jira/browse/WW-5423)




Issue Time Tracking
---

Worklog Id: (was: 921934)
Remaining Estimate: 0h
Time Spent: 10m

> Query Parameters in Multipart Requests not working in v7 M6
> ---
>
> Key: WW-5423
> URL: https://issues.apache.org/jira/browse/WW-5423
> Project: Struts 2
>  Issue Type: Bug
>Affects Versions: 7.0.0
>Reporter: Philip Crider
>Priority: Major
> Fix For: 7.0.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> One of the changes in [https://github.com/apache/struts/pull/861] broke query 
> parameters in multipart requests. Their values are being lost.
> This is the old implementation, which returns null if the parameter doesn't 
> exist.
> {code:java}
> public String[] getParameterValues(String name) {
> List v = params.get(name);
> if (v != null && !v.isEmpty()) {
> return v.toArray(new String[0]);
> }
> return null;
> } {code}
>  
> And this is the new implementation, which returns an empty array in that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return parameters.getOrDefault(name, Collections.emptyList())
> .toArray(String[]::new);
> }{code}
>  
> This method in MultiPartRequestWrapper is expecting null to be returned in 
> that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return ((multi == null) || (multi.getParameterValues(name) == null)) ? 
> super.getParameterValues(name) : multi.getParameterValues(name);
> }{code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (WW-5413) Multipart misbehavior with commons-io 2.16.0 and 2.16.1

2024-06-03 Thread Riccardo Proserpio (Jira)


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

Riccardo Proserpio commented on WW-5413:


It might be, yes

> Multipart misbehavior with commons-io 2.16.0 and 2.16.1
> ---
>
> Key: WW-5413
> URL: https://issues.apache.org/jira/browse/WW-5413
> Project: Struts 2
>  Issue Type: Bug
>  Components: Core
>Affects Versions: 6.3.0
>Reporter: Riccardo Proserpio
>Priority: Major
> Fix For: 6.5.0
>
>
> commons-io 2.16.0 has broken the implementation of 
> DeferredFileOutputStream changing the behavior of its superclass 
> ThresholdingOutputStream: IO-854
>  
> The class is used by commons-fileupload DiskFileItem, that is used by Struts 
> to handle multipart uploads. The issue causes each multipart part to be read 
> as empty.
>  
> A fix has been implemented in 2.16.1. However, the fix exposes an issue in 
> how the getFile of JakartaMultiPartRequest uses DiskFileItem, that causes it 
> to mishandle zero length inputs.
>  
> The issue is related to WW-5088 and WW-5146
>  
> Moreover, the fix implemented for this issues seems to be dubious and affects 
> not only file uploads but every field encoded as multipart/form-data: by 
> forcing the diskfileitem threshold to be -1, each and every field was written 
> to the filesystem.
>  
> The behavior of threadshold -1 was underspecified and inconsistent with the 
> commons-io implementation, and has been specified in 2.16.1.
>  
> To really fix the issue, I suggest to avoid specifying -1 on the 
> DiskFileItemFactory and to properly handle the case when the 
> DiskFileItem.isInMemory() returns true in the JakartaMultiPartRequest.getFile 
> method: in this case getStoreLocation() is defined to return null and the 
> bytes should be read from memory instead.
>  
> Avoiding always spilling to disk each and every multipart part should also be 
> a performance win, considering that multipart can also be used to transfer 
> normal form inputs and not only files.
>  
> What do you think?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (WW-5423) Query Parameters in Multipart Requests not working in v7 M6

2024-06-03 Thread Lukasz Lenart (Jira)


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

Lukasz Lenart commented on WW-5423:
---

>From the other side {{HttpServletRequest#getParameterValues(String)}} returns 
>{{null}} if parameter doesn't exist so maybe it's better to keep the old 
>behaviour to be aligned with Servlet spec

> Query Parameters in Multipart Requests not working in v7 M6
> ---
>
> Key: WW-5423
> URL: https://issues.apache.org/jira/browse/WW-5423
> Project: Struts 2
>  Issue Type: Bug
>Affects Versions: 7.0.0
>Reporter: Philip Crider
>Priority: Major
> Fix For: 7.0.0
>
>
> One of the changes in [https://github.com/apache/struts/pull/861] broke query 
> parameters in multipart requests. Their values are being lost.
> This is the old implementation, which returns null if the parameter doesn't 
> exist.
> {code:java}
> public String[] getParameterValues(String name) {
> List v = params.get(name);
> if (v != null && !v.isEmpty()) {
> return v.toArray(new String[0]);
> }
> return null;
> } {code}
>  
> And this is the new implementation, which returns an empty array in that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return parameters.getOrDefault(name, Collections.emptyList())
> .toArray(String[]::new);
> }{code}
>  
> This method in MultiPartRequestWrapper is expecting null to be returned in 
> that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return ((multi == null) || (multi.getParameterValues(name) == null)) ? 
> super.getParameterValues(name) : multi.getParameterValues(name);
> }{code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (WW-5423) Query Parameters in Multipart Requests not working in v7 M6

2024-06-03 Thread Philip Crider (Jira)


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

Philip Crider commented on WW-5423:
---

That seems like a good change to me, and would definitely fix the problem.

> Query Parameters in Multipart Requests not working in v7 M6
> ---
>
> Key: WW-5423
> URL: https://issues.apache.org/jira/browse/WW-5423
> Project: Struts 2
>  Issue Type: Bug
>Affects Versions: 7.0.0
>Reporter: Philip Crider
>Priority: Major
> Fix For: 7.0.0
>
>
> One of the changes in [https://github.com/apache/struts/pull/861] broke query 
> parameters in multipart requests. Their values are being lost.
> This is the old implementation, which returns null if the parameter doesn't 
> exist.
> {code:java}
> public String[] getParameterValues(String name) {
> List v = params.get(name);
> if (v != null && !v.isEmpty()) {
> return v.toArray(new String[0]);
> }
> return null;
> } {code}
>  
> And this is the new implementation, which returns an empty array in that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return parameters.getOrDefault(name, Collections.emptyList())
> .toArray(String[]::new);
> }{code}
>  
> This method in MultiPartRequestWrapper is expecting null to be returned in 
> that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return ((multi == null) || (multi.getParameterValues(name) == null)) ? 
> super.getParameterValues(name) : multi.getParameterValues(name);
> }{code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (WW-5423) Query Parameters in Multipart Requests not working in v7 M6

2024-06-02 Thread Lukasz Lenart (Jira)


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

Lukasz Lenart edited comment on WW-5423 at 6/3/24 5:21 AM:
---

What about such change in {{MultiPartRequestWrapper}}?

{code:java}
public String[] getParameterValues(String name) {
String[] parameterValues = null;
if (multi != null) {
parameterValues = multi.getParameterValues(name);
}
if (parameterValues == null || parameterValues.length == 0) {
parameterValues = super.getParameterValues(name);
}
return parameterValues;
}
{code}



was (Author: lukaszlenart):
What about such change?

{code:java}
public String[] getParameterValues(String name) {
String[] parameterValues = null;
if (multi != null) {
parameterValues = multi.getParameterValues(name);
}
if (parameterValues == null || parameterValues.length == 0) {
parameterValues = super.getParameterValues(name);
}
return parameterValues;
}
{code}


> Query Parameters in Multipart Requests not working in v7 M6
> ---
>
> Key: WW-5423
> URL: https://issues.apache.org/jira/browse/WW-5423
> Project: Struts 2
>  Issue Type: Bug
>Affects Versions: 7.0.0
>Reporter: Philip Crider
>Priority: Major
> Fix For: 7.0.0
>
>
> One of the changes in [https://github.com/apache/struts/pull/861] broke query 
> parameters in multipart requests. Their values are being lost.
> This is the old implementation, which returns null if the parameter doesn't 
> exist.
> {code:java}
> public String[] getParameterValues(String name) {
> List v = params.get(name);
> if (v != null && !v.isEmpty()) {
> return v.toArray(new String[0]);
> }
> return null;
> } {code}
>  
> And this is the new implementation, which returns an empty array in that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return parameters.getOrDefault(name, Collections.emptyList())
> .toArray(String[]::new);
> }{code}
>  
> This method in MultiPartRequestWrapper is expecting null to be returned in 
> that case.
> {code:java}
> public String[] getParameterValues(String name) {
> return ((multi == null) || (multi.getParameterValues(name) == null)) ? 
> super.getParameterValues(name) : multi.getParameterValues(name);
> }{code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


  1   2   3   4   5   6   7   8   9   10   >