// next, try to use Struts forward to determine state
else if (mForward != null)
{
ServletContext ctx = RollerContext.getServletContext();
ModuleConfig mConfig = RequestUtils.getModuleConfig(req, ctx);
ActionMapping amapping = (ActionMapping)req.getAttribute(Globals.MAPPING_KEY);
List fconfigs = new ArrayList();
fconfigs.add(mConfig.findForwardConfig(mForward));
if (mSubforwards != null) {
String[] subforwards = mSubforwards.split(",");
for (int i=0; i<subforwards.length; i++) {
fconfigs.add(mConfig.findForwardConfig(subforwards[i]));
}
}
for (Iterator iter = fconfigs.iterator(); iter.hasNext();) {
ForwardConfig fconfig = (ForwardConfig)iter.next();
String fwdPath = fconfig.getPath();
int end = fwdPath.indexOf(".do");
fwdPath = (end == -1) ? fwdPath : fwdPath.substring(0, end);
if (fwdPath.equals(amapping.getPath()))
{
selected = true;
break;
}
}