[
https://issues.apache.org/jira/browse/WW-5524?focusedWorklogId=979586&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-979586
]
ASF GitHub Bot logged work on WW-5524:
--------------------------------------
Author: ASF GitHub Bot
Created on: 19/Aug/25 22:09
Start Date: 19/Aug/25 22:09
Worklog Time Spent: 10m
Work Description: MFAshby commented on code in PR #1309:
URL: https://github.com/apache/struts/pull/1309#discussion_r2286441992
##########
core/src/main/java/org/apache/struts2/factory/StrutsConverterFactory.java:
##########
@@ -18,31 +18,30 @@
*/
package org.apache.struts2.factory;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import org.apache.struts2.ObjectFactory;
import org.apache.struts2.conversion.TypeConverter;
-import org.apache.struts2.inject.Container;
import org.apache.struts2.inject.Inject;
-import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.LogManager;
import java.util.Map;
/**
* Default implementation
*/
public class StrutsConverterFactory implements ConverterFactory {
-
private static final Logger LOG =
LogManager.getLogger(StrutsConverterFactory.class);
- private Container container;
+ private ObjectFactory objectFactory;
@Inject
- public void setContainer(Container container) {
- this.container = container;
+ public void setObjectFactory(ObjectFactory objectFactory) {
+ this.objectFactory = objectFactory;
}
+ @Override
public TypeConverter buildConverter(Class<? extends TypeConverter>
converterClass, Map<String, Object> extraContext) throws Exception {
LOG.debug("Creating converter of type [{}]",
converterClass.getCanonicalName());
- return container.inject(converterClass);
+ return (TypeConverter)objectFactory.buildBean(converterClass,
extraContext);
Review Comment:
This is incorrect, copilot. `objectFactory.buildBean` declares it's return
type as `Object` so the cast is fully necessary for the code to compile.
Issue Time Tracking
-------------------
Worklog Id: (was: 979586)
Time Spent: 0.5h (was: 20m)
> Dependency injection not working in custom StrutsTypeConverter(s)
> -----------------------------------------------------------------
>
> Key: WW-5524
> URL: https://issues.apache.org/jira/browse/WW-5524
> Project: Struts 2
> Issue Type: Bug
> Components: Core
> Affects Versions: 6.0.0, 6.0.3, 6.1.1, 6.2.0, 6.1.2.1, 6.3.0, 6.4.0,
> 6.6.0, 6.6.1, 6.7.0
> Reporter: John Wilson
> Priority: Major
> Fix For: 6.8.0, 7.1.0
>
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> Dependency injection via annotations (such as @PersistenceContext,
> @Autowired) are no longer working within custom StrutsTypeConverter(s) since
> version 6.0.0.
> This relates to the changes done in WW-4996
--
This message was sent by Atlassian Jira
(v8.20.10#820010)