Author: jleroux
Date: Thu Jun 3 04:22:21 2010 New Revision: 950868 URL: http://svn.apache.org/viewvc?rev=950868&view=rev Log: "Applied fix from trunk for revision: 950866 " (with some handwork: conflict in data/DataResourceWorker.java) ------------------------------------------------------------------------ r950866 | jleroux | 2010-06-03 06:11:32 +0200 (jeu. 03 juin 2010) | 3 lignes A patch from Sumit Pandit "Issue in rendering Freemarker Template from String." (https://issues.apache.org/jira/browse/OFBIZ-3782) - OFBIZ-3782 With the help of Bob Morley (it was more a cache issue than what Sumit thought) ------------------------------------------------------------------------ Modified: ofbiz/branches/release09.04/ (props changed) ofbiz/branches/release09.04/applications/content/ofbiz-component.xml ofbiz/branches/release09.04/applications/content/servicedef/services_data.xml ofbiz/branches/release09.04/applications/content/src/org/ofbiz/content/data/DataResourceWorker.java ofbiz/branches/release09.04/applications/content/src/org/ofbiz/content/data/DataServices.java ofbiz/branches/release09.04/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java Propchange: ofbiz/branches/release09.04/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Thu Jun 3 04:22:21 2010 @@ -1 +1 @@ -/ofbiz/trunk:765933,766011,766015,766293,766307,766316,766325,766462,766522,766800,767060,767072,767093,767098-767099,767102,767123,767125,767127,767279,767287,767671,767688,767694,767822,767845,768358,768490,768550,768675,768686,768705,768811,768815,768960,769030,769500,770272,770308,770997,771073,771477,772401,772464-772465,773076,773557,773628,773659,773697,774014,774632,774661,774995,775292,775667,776227,776594,776620,776922,777004,777020,777768,777792,777893,777947,778078,778094,778107,778273,778278,778280,778364,778374,778402,778576,778594,778628,779020,779477,779496,779639,779834,779856,779866,779873,780111,780138,780180,780199,780203,780906,780945,781201,781534,781549,781669,781680,781694,782663,783257,783266,783833,783913,783917,785123,785764,785967,786778,787126,787435-787436,787442,787520,788965,788983,788987,789329,789337,789506,789548,796769,799185,800461,800846,801023,802346,804364,805307,806127,806377,806914,808786-808787,808792,809141,810370,810438,810465,810 807,810809,810814,810832,810836,810878,810917,811020,811280,811297,811419,811528,811708,811714,811716,811793,811838,811860,811865,811870,812159,812182,812192,812456,812540,812724,813126,813131,813283,813672,813702,814168,814205,814251,814349,814531,814576,814681,814731,815158,815165,815350,815687,815977,816255,816863,818030,818049,818150,818494,818500,818716,818976,819275-819276,819282,819337,821263,821270,822659,823877-823878,823883,823888,823892,824511,825181-825182,826253,827730,828971,829085,829376,829412,829416,829527,830091,830112,830366,830528,830677,830874,830880,831238,831801,832361,832698,832776,832908,833324,833686,833703,834825,835161,835357,835585,836015,881194,881713,882072,882326,882918,883933,884023,884529,884546,884758,885122,885702,887916,888111,888559,888587,889666,890050,890107,890245,891378,891620,896649,899188,899833,900024,900026,900050,900217,900273,901628,907342-907343,910460,912587,915332,916252,916703,916925,917435,922042,923828,927870,928037,92816 6,928171,928180,928470,928477,929582,933157,935494,936817,941047,941431,941440,942884,943168,944895,945118,948017 +/ofbiz/trunk:765933,766011,766015,766293,766307,766316,766325,766462,766522,766800,767060,767072,767093,767098-767099,767102,767123,767125,767127,767279,767287,767671,767688,767694,767822,767845,768358,768490,768550,768675,768686,768705,768811,768815,768960,769030,769500,770272,770308,770997,771073,771477,772401,772464-772465,773076,773557,773628,773659,773697,774014,774632,774661,774995,775292,775667,776227,776594,776620,776922,777004,777020,777768,777792,777893,777947,778078,778094,778107,778273,778278,778280,778364,778374,778402,778576,778594,778628,779020,779477,779496,779639,779834,779856,779866,779873,780111,780138,780180,780199,780203,780906,780945,781201,781534,781549,781669,781680,781694,782663,783257,783266,783833,783913,783917,785123,785764,785967,786778,787126,787435-787436,787442,787520,788965,788983,788987,789329,789337,789506,789548,796769,799185,800461,800846,801023,802346,804364,805307,806127,806377,806914,808786-808787,808792,809141,810370,810438,810465,810 807,810809,810814,810832,810836,810878,810917,811020,811280,811297,811419,811528,811708,811714,811716,811793,811838,811860,811865,811870,812159,812182,812192,812456,812540,812724,813126,813131,813283,813672,813702,814168,814205,814251,814349,814531,814576,814681,814731,815158,815165,815350,815687,815977,816255,816863,818030,818049,818150,818494,818500,818716,818976,819275-819276,819282,819337,821263,821270,822659,823877-823878,823883,823888,823892,824511,825181-825182,826253,827730,828971,829085,829376,829412,829416,829527,830091,830112,830366,830528,830677,830874,830880,831238,831801,832361,832698,832776,832908,833324,833686,833703,834825,835161,835357,835585,836015,881194,881713,882072,882326,882918,883933,884023,884529,884546,884758,885122,885702,887916,888111,888559,888587,889666,890050,890107,890245,891378,891620,896649,899188,899833,900024,900026,900050,900217,900273,901628,907342-907343,910460,912587,915332,916252,916703,916925,917435,922042,923828,927870,928037,92816 6,928171,928180,928470,928477,929582,933157,935494,936817,941047,941431,941440,942884,943168,944895,945118,948017,950866 Modified: ofbiz/branches/release09.04/applications/content/ofbiz-component.xml URL: http://svn.apache.org/viewvc/ofbiz/branches/release09.04/applications/content/ofbiz-component.xml?rev=950868&r1=950867&r2=950868&view=diff ============================================================================== --- ofbiz/branches/release09.04/applications/content/ofbiz-component.xml (original) +++ ofbiz/branches/release09.04/applications/content/ofbiz-component.xml Thu Jun 3 04:22:21 2010 @@ -29,6 +29,7 @@ under the License. <classpath type="jar" location="lib/uno/*"/> <classpath type="jar" location="build/lib/*"/> <entity-resource type="model" reader-name="main" loader="main" location="entitydef/entitymodel.xml"/> + <entity-resource type="eca" reader-name="main" loader="main" location="entitydef/eecas.xml"/> <entity-resource type="data" reader-name="seed" loader="main" location="data/ContentTypeData.xml"/> <entity-resource type="data" reader-name="seed" loader="main" location="data/ContentOperationData.xml"/> <entity-resource type="data" reader-name="seed" loader="main" location="data/MimeTypeData.xml"/> Modified: ofbiz/branches/release09.04/applications/content/servicedef/services_data.xml URL: http://svn.apache.org/viewvc/ofbiz/branches/release09.04/applications/content/servicedef/services_data.xml?rev=950868&r1=950867&r2=950868&view=diff ============================================================================== --- ofbiz/branches/release09.04/applications/content/servicedef/services_data.xml (original) +++ ofbiz/branches/release09.04/applications/content/servicedef/services_data.xml Thu Jun 3 04:22:21 2010 @@ -252,4 +252,11 @@ <attribute mode="IN" name="rootDir" optional="true" type="String"/> </service> --> + + <!-- Cleared associated DataResource rendered cache from UtilCache. --> + <service name="clearAssociatedRenderCache" engine="java" auth="true" default-entity-name="DataResource" + location="org.ofbiz.content.data.DataServices" invoke="clearAssociatedRenderCache"> + <auto-attributes include="pk" mode="IN" /> + </service> + </services> \ No newline at end of file Modified: ofbiz/branches/release09.04/applications/content/src/org/ofbiz/content/data/DataResourceWorker.java URL: http://svn.apache.org/viewvc/ofbiz/branches/release09.04/applications/content/src/org/ofbiz/content/data/DataResourceWorker.java?rev=950868&r1=950867&r2=950868&view=diff ============================================================================== --- ofbiz/branches/release09.04/applications/content/src/org/ofbiz/content/data/DataResourceWorker.java (original) +++ ofbiz/branches/release09.04/applications/content/src/org/ofbiz/content/data/DataResourceWorker.java Thu Jun 3 04:22:21 2010 @@ -578,6 +578,20 @@ public class DataResourceWorker impleme // ------------------------------------- public static String renderDataResourceAsText(GenericDelegator delegator, String dataResourceId, Map templateContext, + public static void clearAssociatedRenderCache(Delegator delegator, String dataResourceId) throws GeneralException { + if (dataResourceId == null) { + throw new GeneralException("Cannot clear dataResource related cache for a null dataResourceId"); + } + + GenericValue dataResource = delegator.findByPrimaryKeyCache("DataResource", UtilMisc.toMap("dataResourceId", dataResourceId)); + if (dataResource != null) { + String dataTemplateTypeId = dataResource.getString("dataTemplateTypeId"); + if ("FTL".equals(dataTemplateTypeId)) { + FreeMarkerWorker.clearTemplateFromCache("DataResource:" + dataResourceId); + } + } + } + Locale locale, String targetMimeTypeId, boolean cache) throws GeneralException, IOException { Writer writer = new StringWriter(); renderDataResourceAsText(delegator, dataResourceId, writer, templateContext, locale, targetMimeTypeId, cache); Modified: ofbiz/branches/release09.04/applications/content/src/org/ofbiz/content/data/DataServices.java URL: http://svn.apache.org/viewvc/ofbiz/branches/release09.04/applications/content/src/org/ofbiz/content/data/DataServices.java?rev=950868&r1=950867&r2=950868&view=diff ============================================================================== --- ofbiz/branches/release09.04/applications/content/src/org/ofbiz/content/data/DataServices.java (original) +++ ofbiz/branches/release09.04/applications/content/src/org/ofbiz/content/data/DataServices.java Thu Jun 3 04:22:21 2010 @@ -54,6 +54,19 @@ public class DataServices { public static final String module = DataServices.class.getName(); + public static Map<String, Object> clearAssociatedRenderCache(DispatchContext dctx, Map<String, Object> context) { + Delegator delegator = dctx.getDelegator(); + String dataResourceId = (String) context.get("dataResourceId"); + try { + DataResourceWorker.clearAssociatedRenderCache(delegator, dataResourceId); + } catch (GeneralException e) { + String errMsg = "Unable to clear associated render cache with dataResourceId=" + dataResourceId; + Debug.logError(e, errMsg, module); + return ServiceUtil.returnError(errMsg); + } + return ServiceUtil.returnSuccess(); + } + /** * A top-level service for creating a DataResource and ElectronicText together. */ Modified: ofbiz/branches/release09.04/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java URL: http://svn.apache.org/viewvc/ofbiz/branches/release09.04/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java?rev=950868&r1=950867&r2=950868&view=diff ============================================================================== --- ofbiz/branches/release09.04/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java (original) +++ ofbiz/branches/release09.04/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java Thu Jun 3 04:22:21 2010 @@ -172,6 +172,12 @@ public class FreeMarkerWorker { renderTemplate(template, context, outWriter); } + public static void clearTemplateFromCache(String templateLocation) { + synchronized (cachedTemplates) { + cachedTemplates.remove(templateLocation); + } + } + public static Environment renderTemplateFromString(String templateString, String templateLocation, Map<String, Object> context, Appendable outWriter) throws TemplateException, IOException { Template template = cachedTemplates.get(templateLocation); if (template == null) { @@ -185,7 +191,6 @@ public class FreeMarkerWorker { } } } - return renderTemplate(template, context, outWriter); } |
Free forum by Nabble | Edit this page |