[ 
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)

Reply via email to