ofbiz-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jacques Le Roux (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (OFBIZ-6249) Complete OFBIZ-6057
Date Sun, 12 Apr 2015 19:23:12 GMT

     [ https://issues.apache.org/jira/browse/OFBIZ-6249?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Jacques Le Roux updated OFBIZ-6249:
-----------------------------------
    Description: 
This is the contiunation of OFBIZ-6057 which have fixed the case below, I simply quote its
description here to get the ideas

{quote}
In order to fix OFBIZ-2120, code was added to the applications/order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl
file at lines 53 through 57, with the offending line being at 5:

https://github.com/apache/ofbiz/blob/trunk/applications/order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl##L56

Here is the commit: https://github.com/apache/ofbiz/commit/27253c4667e87721212fa8955d75c74a0d171c73

This ends up causing the following error:

     [java] freemarker.core.InvalidReferenceException: The following has evaluated to null
or missing:
     [java] ==> null  [in template "component://order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl"
at line 56, column 40]
     [java] 
     [java] ----
     [java] Tip: If the failing expression is known to be legally refer to something that's
null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if
myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the
last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault,
(myOptionalVar.foo)??
     [java] ----
     [java] 
     [java] ----
     [java] FTL stack trace ("~" means nesting-related):
     [java] 	- Failed at: #assign product = null  [in template "component://order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl"
at line 56, column 21]
     [java] 	- Reached through: #list quoteItems as quoteItem  [in template "component://order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl"
at line 52, column 13]

The main reason for this is because there is no concept of "null" in FreeMarker 2.3, as the
following thread explains: http://ehc.ac/p/freemarker/discussion/2346/thread/85da30a4/  Not
sure how to go about fixing this error, the thread suggests setting the variable to the string
"null".
{quote}

There are still other instances of this bug in:
{code}
applications/order/webapp/ordermgr/return/returnItems.ftl:                 <#assign returnItemSubTotal
= null >  <#-- otherwise the last item's might carry over -->
applications/accounting/webapp/accounting/reports/DepositSlip.fo.ftl:                    
           <#assign creditCard = null/>
framework/webtools/webapp/webtools/datafile/viewdatafile.ftl:        <#assign lastRecordName
= null>
{code}
There is no needs to change R12.04 though it uses Freemarker 2.3, exactly 2.3.19, this is
confusing, I guess this issue did not exist in 2.3.19...
But the other null assignments are wrong in trunk and newer branches anyway

  was:
This is the contiunation of OFBIZ-6057, I simply copy its description here

In order to fix OFBIZ-2120, code was added to the applications/order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl
file at lines 53 through 57, with the offending line being at 5:

https://github.com/apache/ofbiz/blob/trunk/applications/order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl##L56

Here is the commit: https://github.com/apache/ofbiz/commit/27253c4667e87721212fa8955d75c74a0d171c73

This ends up causing the following error:

     [java] freemarker.core.InvalidReferenceException: The following has evaluated to null
or missing:
     [java] ==> null  [in template "component://order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl"
at line 56, column 40]
     [java] 
     [java] ----
     [java] Tip: If the failing expression is known to be legally refer to something that's
null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if
myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the
last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault,
(myOptionalVar.foo)??
     [java] ----
     [java] 
     [java] ----
     [java] FTL stack trace ("~" means nesting-related):
     [java] 	- Failed at: #assign product = null  [in template "component://order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl"
at line 56, column 21]
     [java] 	- Reached through: #list quoteItems as quoteItem  [in template "component://order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl"
at line 52, column 13]

The main reason for this is because there is no concept of "null" in FreeMarker 2.3, as the
following thread explains: http://ehc.ac/p/freemarker/discussion/2346/thread/85da30a4/  Not
sure how to go about fixing this error, the thread suggests setting the variable to the string
"null".

There are other instances of this bug as well:

$ grep -r "<#assign" * | grep "= null"
applications/order/webapp/ordermgr/return/returnItems.ftl:                 <#assign returnItemSubTotal
= null >  <#-- otherwise the last item's might carry over -->
applications/order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl:                    <#assign
product = null> <#-- don't drag it along to the next iteration -->
applications/accounting/webapp/accounting/reports/DepositSlip.fo.ftl:                    
           <#assign creditCard = null/>
framework/webtools/webapp/webtools/datafile/viewdatafile.ftl:        <#assign lastRecordName
= null>

There is no needs to change R12.04 though it uses Freemarker 2.3, exactly 2.3.19, this is
confusing... But the other null assignments are wrong in trunk and newer branches anyway


> Complete OFBIZ-6057
> -------------------
>
>                 Key: OFBIZ-6249
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-6249
>             Project: OFBiz
>          Issue Type: Bug
>          Components: accounting, order
>    Affects Versions: Release Branch 13.07, Release Branch 14.12, Trunk
>            Reporter: Jacques Le Roux
>
> This is the contiunation of OFBIZ-6057 which have fixed the case below, I simply quote
its description here to get the ideas
> {quote}
> In order to fix OFBIZ-2120, code was added to the applications/order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl
file at lines 53 through 57, with the offending line being at 5:
> https://github.com/apache/ofbiz/blob/trunk/applications/order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl##L56
> Here is the commit: https://github.com/apache/ofbiz/commit/27253c4667e87721212fa8955d75c74a0d171c73
> This ends up causing the following error:
>      [java] freemarker.core.InvalidReferenceException: The following has evaluated to
null or missing:
>      [java] ==> null  [in template "component://order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl"
at line 56, column 40]
>      [java] 
>      [java] ----
>      [java] Tip: If the failing expression is known to be legally refer to something
that's null or missing, either specify a default value like myOptionalVar!myDefault, or use
<#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only
cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault,
(myOptionalVar.foo)??
>      [java] ----
>      [java] 
>      [java] ----
>      [java] FTL stack trace ("~" means nesting-related):
>      [java] 	- Failed at: #assign product = null  [in template "component://order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl"
at line 56, column 21]
>      [java] 	- Reached through: #list quoteItems as quoteItem  [in template "component://order/webapp/ordermgr/quote/ViewQuoteItemInfo.ftl"
at line 52, column 13]
> The main reason for this is because there is no concept of "null" in FreeMarker 2.3,
as the following thread explains: http://ehc.ac/p/freemarker/discussion/2346/thread/85da30a4/
 Not sure how to go about fixing this error, the thread suggests setting the variable to the
string "null".
> {quote}
> There are still other instances of this bug in:
> {code}
> applications/order/webapp/ordermgr/return/returnItems.ftl:                 <#assign
returnItemSubTotal = null >  <#-- otherwise the last item's might carry over -->
> applications/accounting/webapp/accounting/reports/DepositSlip.fo.ftl:               
                <#assign creditCard = null/>
> framework/webtools/webapp/webtools/datafile/viewdatafile.ftl:        <#assign lastRecordName
= null>
> {code}
> There is no needs to change R12.04 though it uses Freemarker 2.3, exactly 2.3.19, this
is confusing, I guess this issue did not exist in 2.3.19...
> But the other null assignments are wrong in trunk and newer branches anyway



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message