Struts 2アクションクラスのjUnitを作成する必要があります.しかし、アクションクラスはParameterAware
パラメーターマップを受け取るインターセプターを実装してHashMap
おり、アクションクラスはこのハッシュマップからすべてのリクエストパラメーターを取得します
アクション クラス:
public class BrokerAction extends ActionSupport implements ServletRequestAware, ServletResponseAware,SessionAware,
ParameterAware {
/** The parameters. */
private Map parameters;
@Override
public void setParameters(final Map param) {
this.parameters = param;
}
public String getParameterValue(final String param) {
final Object varr = getParameters().get(param);
if (varr == null) {
return null;
}
return ((String[]) varr)[0];
}
public String getBrokerDetails()throws PactException{
String id = getParameterValue("id");
}
Junit からのデータをリクエストに入れると、パラメータ マップに反映されません
ジュニット:
@Test
public void testGetActionProxy() throws Exception {
request.setAttribute("id", "23");
ActionProxy proxy = getActionProxy("/getBrokerDetails");
BrokerAction brokerAction = (BrokerAction) proxy.getAction();
brokerAction.getBrokerDetails();
}
リクエストデータがパラメータマップにどのように反映されるかを助けてください