[
https://issues.apache.org/jira/browse/WW-5524?focusedWorklogId=979323&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-979323
]
ASF GitHub Bot logged work on WW-5524:
--------------------------------------
Author: ASF GitHub Bot
Created on: 18/Aug/25 15:08
Start Date: 18/Aug/25 15:08
Worklog Time Spent: 10m
Work Description: Copilot commented on code in PR #1309:
URL: https://github.com/apache/struts/pull/1309#discussion_r2282688230
##########
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:
The explicit cast to TypeConverter is unnecessary since the method signature
already declares the return type as TypeConverter and converterClass is bounded
by Class<? extends TypeConverter>. Consider removing the cast for cleaner code.
```suggestion
return objectFactory.buildBean(converterClass, extraContext);
```
Issue Time Tracking
-------------------
Worklog Id: (was: 979323)
Remaining Estimate: 0h
Time Spent: 10m
> 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: 10m
> 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)