Как данные могут быть переданы втег в файле тега Struts через атрибуты? - PullRequest
1 голос
/ 14 июня 2010

У меня есть форма с двумя половинками, одна для прикрепления широкого эскиза к активу, а другая для миниатюры стандартного размера.Файл jsp, генерирующий страницу, вызывает thumbnail.tag, который дважды вызывает thumb.tag:

<thumbnail:thumb label="75px Thumbnail" />
<thumbnail:thumb label="Wide Thumbnail" />

thumb.tag, в свою очередь, имеет следующее:

<s:if test="#attr.label == '75px Thumbnail'">
  <thumbnail:standardThumb />
</s:if>
<s:elseif test="#attr.label == 'Wide Thumbnail'">
  <thumbnail:wideThumb />
</s:elseif>

Единственное отличие standardThumb.tag и wideThumb.tag - это имена переменных, например, stdThumbUrl и wideThumbUrl.Я был назначен для рефакторинга этого в один файл и передачи в строку "std" или "wide".Я обнаружил, что это прекрасно работает с обычными тегами HTML.Например, добавлено в thumb.tag:

<thumbnail:standardThumb tst="standard" />

и в standardThumb.tag:

<%@ attribute name="tst" required="true"%>
...
<iframe id="${tst}ThumbImage" ... >

, и это работает как ожидалось.Я не могу найти способ получить "стандарт" в

<s:if test="content.standardThumbUrl != null">

в том же файле.Я пробовал каждую комбинацию% и $ и # и {}, о которой я могу думать, но ничего не помогло.Есть ли какой-то правильный синтаксис, который поможет мне достичь желаемого эффекта?

...