struts-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Greg Huber (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (WW-4088) Supressing empty parameters on <s:a> tag
Date Sun, 05 Jan 2014 10:22:52 GMT

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

Greg Huber commented on WW-4088:
--------------------------------

Lukasz,

Sorry, but I have noticed that my patch does not handle integers correctly, alas, we need
to do another change :(

It does kind of the same check, but this works with integers/doubles.

<code>
Object value = findValue(this.value);
if (suppressEmptyParameters) {
  if (value != null && !value.toString().isEmpty()) {
    component.addParameter(name, value);
  }
} else {
  component.addParameter(name, value);
}
</code> 

existing code:
<code>
if (suppressEmptyParameters) {
  String potentialValue = (String) value;
  if (potentialValue != null && potentialValue.length() > 0) {
      component.addParameter(name, value);
  }
} else {
  component.addParameter(name, value);
}
</code>

Do you want me to create another issue?

Cheers Greg

> Supressing empty parameters on <s:a> tag 
> -----------------------------------------
>
>                 Key: WW-4088
>                 URL: https://issues.apache.org/jira/browse/WW-4088
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: Plugin - Java Templates, Plugin - Tags
>    Affects Versions: 2.3.14.2
>         Environment: Tomcat/Centos
>            Reporter: Greg Huber
>            Assignee: Lukasz Lenart
>            Priority: Minor
>             Fix For: 2.3.16
>
>         Attachments: paramtag_patch.txt, patch.txt
>
>
> Hello,
> When using the s:a anchor tag you can get parameters with empty values ie ?foo= for null
values. 
> It would be good if there was a way to filter these out, similar to the struts.xml <param
name="suppressEmptyParameters">true</param>. The <s:if> tags in the body are
ignored.  I either have to do it in programatically or use jstl :(
> ie possibly do something similar :
> from:
> {code:xml}
> <s:a action="eventAdd" accesskey="a">
> <s:text name="title.heading.eventadd" />
> <c:if test="${not empty bean.searchString}">
>  <s:param name="bean.searchString" value="%{bean.searchString}" />
> </c:if>
> <c:if test="${not empty bean.filter}">
>  <s:param name="bean.filter" value="%{bean.filter}" />
> </c:if>
> <s:param name="bean.pageNum" value="%{pager.pageNumber}" />
> </s:a>
> {code}
> To:
> {code:xml}
> <s:a action="eventAdd" accesskey="a">
> <s:text name="title.heading.eventadd" />
> <s:param name="bean.searchString" value="%{bean.searchString}" />
> <s:param name="bean.filter" value="%{bean.filter}" />
> <s:param name="bean.pageNum" value="%{pager.pageNumber}" />
> <s:param name="suppressEmptyParameters" value="true"/>
> </s:a>
> {code}
> (Ref WW-3920)
> Cheers Greg



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Mime
View raw message