Hello,
i am trying to publish custom action in custom dialog like the code below,
but how can i publish it IDynamicAction only create the "message" paramater without publishing.
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.documentum.fc.client.DfQuery;
import com.documentum.fc.client.IDfCollection;
import com.documentum.fc.client.IDfSession;
import com.documentum.fc.common.DfException;
import com.emc.common.dctm.utils.DfSessionUtil;
import com.emc.common.java.bundles.MultiResourceBundle;
import com.emc.common.java.xml.XmlNode;
import com.emc.d2.api.config.modules.property.D2PropertyConfig;
import com.emc.d2.api.config.modules.property.ID2PropertyConfig;
import com.emc.d2fs.dctm.dialogs.AbstractDialog;
import com.emc.d2fs.dctm.dialogs.ID2Dialog;
import com.emc.d2fs.dctm.utils.ParameterParser;
import com.emc.d2fs.dctm.web.services.D2fsContext;
import com.emc.d2fs.dctm.web.services.property.D2PropertyService;
public class ConsDialog extends AbstractDialog
implements ID2Dialog
{
private Logger LOGGER = LoggerFactory.getLogger(getClass());
public static String PROPERTY_CONFIG = "property_config";
public ConsDialog()
{
}
public XmlNode buildDialog(D2fsContext context, List attributes)
throws Exception
{
IDfSession session = context.getSession();
ParameterParser parameterParser = context.getParameterParser();
String propertyName = parameterParser.getStringParameter(PROPERTY_CONFIG);
propertyName = "Mevaker_Doc_Cons";
ID2PropertyConfig propertyConfig = D2PropertyConfig.getInstanceByName(session, propertyName);
XmlNode xmlConfigDialog = propertyConfig.getXmlContent();
xmlConfigDialog.setAttribute(ID2PropertyConfig.D2_PROPERTY_CONFIG, propertyName);
XmlNode dialog = super.buildDialog(context, xmlConfigDialog, null);
return dialog;
}
public XmlNode validDialog(D2fsContext context) throws Exception {
IDfSession session = context.getSession();
(new D2PropertyService()).saveProperties(context);
Class actionClass = context.getClassByName("com.emc.d2fs.dctm.ui.dynamicactions.actions.Generic");
IDynamicAction action = (IDynamicAction)actionClass.newInstance();
Map<String, Object> map = new LinkedHashMap<String, Object>();
map.put("eMethod", "sendEmailViaOutlook");
map.put("eMode", "MULTI");
map.put("eService", "EmailViaOutlookAction");
map.put("rAction", "eval(result);");
map.put("rType", "JS");
String result = action.getAction(context, map);
return super.validDialog(context);
}
}