[
https://issues.apache.org/jira/browse/WW-3748?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13219260#comment-13219260
]
David Mansfield commented on WW-3748:
-------------------------------------
That is exactly what the default ObjectFactory.buildBean(String, Map, boolean)
does, so the logic shouldn't be duplicated in Bean.java, IMHO. But if a
subclass overrides (as SpringObjectFactory does) it can to the right thing WRT
bean ids.
To summarize, if SpringObjectFactory is not used, the change suggested in the
description changes nothing AFAIK. This is easy to verify looking at
ObjectFactory.java
If SpringObjectFactory is used, and the string passed is NOT a bean-id, the
change suggested changes nothing. This is somewhat more difficult, but can be
verified looking at SpringObjectFactory.java.
If SpringObjectFactory is used, and the string passed IS a bean-id, and not a
class-name, the code would not be working today, but would be working after the
fix.
> s:bean doesn't allow creation of beans from a spring object factory using the
> bean's id
> ---------------------------------------------------------------------------------------
>
> Key: WW-3748
> URL: https://issues.apache.org/jira/browse/WW-3748
> Project: Struts 2
> Issue Type: Bug
> Components: Core Actions
> Affects Versions: 2.3.1.1
> Environment: linux, jdk 1.6
> Reporter: David Mansfield
> Priority: Minor
> Fix For: 2.3.2
>
> Original Estimate: 1h
> Remaining Estimate: 1h
>
> on core/src/main/java/org/apache/struts2/components/Bean.java line 128:
> bean =
> objectFactory.buildBean(ClassLoaderUtil.loadClass(beanName, getClass()),
> stack.getContext());
> Shouldn't this be:
> bean = objectFactory.buildBean(beanName, stack.getContext(),
> false);
> The factory knows how to get a Class from a String as well as anyone, but the
> "name" is not necessarily a class name when the bean is the id of a spring
> bean.
> This affects s:bean tag.
> AFAICT all versions are affected (just checked svn trunk).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira