WW-3994 Uses constructor injections instead property injections to avoid NPE

git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/trunk@1458543 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Lukasz Lenart
2013-03-19 22:11:59 +00:00
parent e091eb41f3
commit aaa27dc380
2 changed files with 12 additions and 25 deletions
@@ -21,18 +21,16 @@
package org.apache.struts2.dispatcher.mapper;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.StrutsConstants;
import com.opensymphony.xwork2.config.ConfigurationManager;
import com.opensymphony.xwork2.inject.Container;
import com.opensymphony.xwork2.inject.Inject;
import com.opensymphony.xwork2.util.logging.Logger;
import com.opensymphony.xwork2.util.logging.LoggerFactory;
import org.apache.struts2.StrutsConstants;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
/**
* <!-- START SNIPPET: description -->
@@ -88,12 +86,11 @@ public class CompositeActionMapper implements ActionMapper {
protected Container container;
protected List<ActionMapper> actionMappers = new ArrayList<ActionMapper>();
@Inject
public void setContainer(Container container) {
public CompositeActionMapper(@Inject Container container) {
this.container = container;
}
@Inject(StrutsConstants.STRUTS_MAPPER_COMPOSITE)
public void setActionMappers(String list) {
if (list != null) {
@@ -21,23 +21,14 @@
package org.apache.struts2.dispatcher.mapper;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.StrutsConstants;
import org.springframework.mock.web.MockHttpServletRequest;
import com.mockobjects.dynamic.C;
import com.mockobjects.dynamic.Mock;
import com.opensymphony.xwork2.config.ConfigurationManager;
import com.opensymphony.xwork2.inject.Container;
import com.opensymphony.xwork2.inject.Scope.Strategy;
import junit.framework.TestCase;
import org.springframework.mock.web.MockHttpServletRequest;
import javax.servlet.http.HttpServletRequest;
/**
*
@@ -49,9 +40,8 @@ public class CompositeActionMapperTest extends TestCase {
Mock mockContainer;
public void setUp() throws Exception {
compositeActionMapper = new CompositeActionMapper();
mockContainer = new Mock(Container.class);
compositeActionMapper.setContainer((Container)mockContainer.proxy());
compositeActionMapper = new CompositeActionMapper((Container)mockContainer.proxy());
}