[
https://issues.apache.org/struts/browse/WW-3011?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=45718#action_45718
]
Ken Hopkins commented on WW-3011:
---------------------------------
The behavior also seems to be "corrected" by having the action extend
ActionSupport or TextProviderSupport (the key being that it implements
TextProvider interface) so that the action class is the first TextProvider
instance on the value stack (ahead of DefaultTextProvider).
> Struts text tag displays incorrect default value when using the spring plugin
> -----------------------------------------------------------------------------
>
> Key: WW-3011
> URL: https://issues.apache.org/struts/browse/WW-3011
> Project: Struts 2
> Issue Type: Bug
> Components: Documentation, Plugin - Tags, Value Stack
> Affects Versions: 2.1.6
> Environment: JBoss 4.2.3 with JDK 1.6 on Windows XP. Struts 2.1.6.
> Spring 2.5.6.
> Reporter: Ken Hopkins
>
> I first noticed the improper behavior in my own application, but I was able
> to reproduce the behavior by slightly modifying the Struts2 + Spring2 + JPA +
> AJAX tutorial.
> To reproduce the behavior:
> 1st update the Struts2 + Spring2 + JPA + AJAX tutorial to use Struts 2.1.6.
> These changes are minimal, and are mostly just upgrading to the dojo plugin
> from the ajax theme.
> 2nd, once the tutorial is working with 2.1.6, I added a single line to the
> index.jsp file.
> I added the line just before the closing body tag, but you can add it
> anywhere.
> <s:text name="does.not.appear.in.properties.file"><s:text
> name="also.does.not.appear.in.properties.file"/></s:text>
> When I run the jsp page, the text that is displayed is:
> does.not.appear.in.properties.file
> Neither of the keys in the two text tags above are in any resource. As I
> understand the documentation, and as I believe this worked in 2.0.14, the
> proper output should be:
> also.does.not.appear.in.properties.file
> As I understand the documentation, the first text tag should try to look up a
> value for the key "does.not.appear.in.properties.file". The lookup will not
> find a value for that key, so the tag should display the default value that
> is provided in the body of the tag. In this case, the body of the text tag
> is another text tag. This inner text tag should try to look up a value for
> the key "also.does.not.appear.in.properties.file". This lookup does not find
> a value either, but since there is no default value provided in the body of
> the inner text tag, the tag should display the key
> "also.does.not.appear.in.properties.file". This value should then be used as
> the default value for the outer text tag. However, instead of the outer text
> tag displaying this default value, it just displays its key
> "does.not.appear.in.properties.file".
> It doesn't seem to matter if the inner tag's lookup returns a value or not
> (it doesn't seem that the inner tag's lookup is even attempted). I haven't
> checked if providing a default value in the body of the outer text tag (but
> isn't itself a text tag, just some plain text) works properly, though that
> would probably be a helpful test.
> Also, I don't see any indication of the new TextProvider logging in my log
> files as outlined on
> http://cwiki.apache.org/S2WIKI/troubleshooting-guide-migrating-from-struts-20x-to-21x.html
> in the "TextProvider missing keys" section.
> Also, this doesn't seem to happen in the Blank tutorial.
> When I first noticed this issue, it was in my own application, which uses
> freemarker templates instead of jsps.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.