You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by jl...@apache.org on 2012/10/04 11:51:06 UTC
svn commit: r1393972 - in /ofbiz/branches/release10.04: ./
applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java
Author: jleroux
Date: Thu Oct 4 09:51:06 2012
New Revision: 1393972
URL: http://svn.apache.org/viewvc?rev=1393972&view=rev
Log:
"Applied fix from trunk for revision: 1393948"
------------------------------------------------------------------------
r1393948 | jleroux | 2012-10-04 10:07:34 +0200 (jeu., 04 oct. 2012) | 17 lines
A patch from Paul Foxworthy "Recalculate Order causes NumberFormatException" https://issues.apache.org/jira/browse/OFBIZ-5046
On demo site, create a new order by using the URL https://demo-trunk.ofbiz.apache.org/ordermgr/control/orderentry
Enter any Product ID, e.g. GZ-1000
Enter a Quantity, e.g. 1
Click on Add To Order
Now click on Recalculate Order on the title bar of the Create Order screenlet
Check the logs. On the demo site, you can do this with the URL https://demo-trunk.ofbiz.apache.org/webtools/control/LogView
You will see:
Exception: java.lang.NumberFormatException Message: For input string: "i18n" ---- stack trace --------------------------------------------------------------- java.lang.NumberFormatException: For input string: "i18n" java.lang.NumberFormatException.forInputString(NumberFormatException.java:48) java.lang.Integer.parseInt(Integer.java:449) java.lang.Integer.parseInt(Integer.java:499) org.ofbiz.order.shoppingcart.ShoppingCartHelper.modifyCart(ShoppingCartHelper.java:673)
The problem is the suffix _i18n on the input elements. The code in modifycart assumes the last thing in the parameter names is a sequence number.
This problem is not as severe as OFBIZ-5045, because the exception is swallowed immediately and the cart is updated properly. Still, these exceptions slow down OFBiz and add noise to the logs.
------------------------------------------------------------------------
Modified:
ofbiz/branches/release10.04/ (props changed)
ofbiz/branches/release10.04/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java
Propchange: ofbiz/branches/release10.04/
------------------------------------------------------------------------------
Merged /ofbiz/trunk:r1393948
Modified: ofbiz/branches/release10.04/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/release10.04/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java?rev=1393972&r1=1393971&r2=1393972&view=diff
==============================================================================
--- ofbiz/branches/release10.04/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java (original)
+++ ofbiz/branches/release10.04/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java Thu Oct 4 09:51:06 2012
@@ -650,7 +650,8 @@ public class ShoppingCartHelper {
String parameterName = (String) parameterNameIter.next();
int underscorePos = parameterName.lastIndexOf('_');
- if (underscorePos >= 0) {
+ // ignore localized date input elements, just use their counterpart without the _i18n suffix
+ if (underscorePos >= 0 && (!parameterName.endsWith("_i18n"))) {
try {
String indexStr = parameterName.substring(underscorePos + 1);
int index = Integer.parseInt(indexStr);