Author: deepak
Date: Sat Feb 20 08:55:27 2016
New Revision: 1731346
URL:
http://svn.apache.org/viewvc?rev=1731346&view=revLog:
(OFBIZ-6287) Replace html widget rendering with Macro widget rendering in BirtEmailServices.java file.
Modified:
ofbiz/trunk/specialpurpose/birt/src/org/ofbiz/birt/email/BirtEmailServices.java
Modified: ofbiz/trunk/specialpurpose/birt/src/org/ofbiz/birt/email/BirtEmailServices.java
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/birt/src/org/ofbiz/birt/email/BirtEmailServices.java?rev=1731346&r1=1731345&r2=1731346&view=diff==============================================================================
--- ofbiz/trunk/specialpurpose/birt/src/org/ofbiz/birt/email/BirtEmailServices.java (original)
+++ ofbiz/trunk/specialpurpose/birt/src/org/ofbiz/birt/email/BirtEmailServices.java Sat Feb 20 08:55:27 2016
@@ -46,20 +46,22 @@ import org.ofbiz.birt.BirtFactory;
import org.ofbiz.birt.BirtWorker;
import org.ofbiz.common.email.NotificationServices;
import org.ofbiz.entity.Delegator;
+import org.ofbiz.entity.util.EntityUtilProperties;
import org.ofbiz.security.Security;
import org.ofbiz.service.DispatchContext;
import org.ofbiz.service.LocalDispatcher;
import org.ofbiz.service.ServiceUtil;
import org.ofbiz.widget.renderer.ScreenRenderer;
-import org.ofbiz.widget.renderer.html.HtmlScreenRenderer;
+import org.ofbiz.widget.renderer.ScreenStringRenderer;
+import org.ofbiz.widget.renderer.macro.MacroScreenRenderer;
import org.xml.sax.SAXException;
+import freemarker.template.TemplateException;
+
public class BirtEmailServices {
public static final String module = BirtEmailServices.class.getName();
- protected static final HtmlScreenRenderer htmlScreenRenderer = new HtmlScreenRenderer();
-
/**
* send birt mail
*
@@ -105,7 +107,20 @@ public class BirtEmailServices {
MapStack<String> screenContext = MapStack.create();
screenContext.put("locale", locale);
- ScreenRenderer screens = new ScreenRenderer(bodyWriter, screenContext, htmlScreenRenderer);
+ ScreenStringRenderer screenStringRenderer = null;
+ try {
+ screenStringRenderer = new MacroScreenRenderer(EntityUtilProperties.getPropertyValue("widget", "screen.name", delegator),
+ EntityUtilProperties.getPropertyValue("widget", "screen.screenrenderer", delegator));
+ } catch (TemplateException e) {
+ String errMsg = "Error rendering screen for email: " + e.toString();
+ Debug.logError(e, errMsg, module);
+ return ServiceUtil.returnError(errMsg);
+ } catch (IOException e) {
+ String errMsg = "Error rendering screen for email: " + e.toString();
+ Debug.logError(e, errMsg, module);
+ return ServiceUtil.returnError(errMsg);
+ }
+ ScreenRenderer screens = new ScreenRenderer(bodyWriter, screenContext, screenStringRenderer);
screens.populateContextForService(ctx, bodyParameters);
screenContext.putAll(bodyParameters);