You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by mb...@apache.org on 2017/12/13 13:03:03 UTC
svn commit: r1818007 - in
/ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string:
FlexibleStringExpander.java JuelConnector.java UelFunctions.java UelUtil.java
Author: mbrohl
Date: Wed Dec 13 13:03:03 2017
New Revision: 1818007
URL: http://svn.apache.org/viewvc?rev=1818007&view=rev
Log:
Improved: Fixing defects reported by FindBugs, package
org.apache.ofbiz.base.util.string.
(OFBIZ-9700)
Thanks Julian Leichert for reporting and providing the patch.
Modified:
ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/FlexibleStringExpander.java
ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java
ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelFunctions.java
ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelUtil.java
Modified: ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/FlexibleStringExpander.java
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/FlexibleStringExpander.java?rev=1818007&r1=1818006&r2=1818007&view=diff
==============================================================================
--- ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/FlexibleStringExpander.java (original)
+++ ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/FlexibleStringExpander.java Wed Dec 13 13:03:03 2017
@@ -31,6 +31,7 @@ import javax.el.PropertyNotFoundExceptio
import org.apache.ofbiz.base.lang.IsEmpty;
import org.apache.ofbiz.base.lang.SourceMonitored;
import org.apache.ofbiz.base.util.Debug;
+import org.apache.ofbiz.base.util.GeneralException;
import org.apache.ofbiz.base.util.ObjectType;
import org.apache.ofbiz.base.util.ScriptUtil;
import org.apache.ofbiz.base.util.UtilDateTime;
@@ -441,7 +442,8 @@ public abstract class FlexibleStringExpa
buffer.append(ObjectType.simpleTypeConvert(obj, "String", null, timeZone, locale, true));
}
}
- } catch (Exception e) {
+ } catch (GeneralException | RuntimeException e) {
+ Debug.log(e, module);
buffer.append(obj);
}
if (buffer.length() > this.hint) {
Modified: ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java?rev=1818007&r1=1818006&r2=1818007&view=diff
==============================================================================
--- ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java (original)
+++ ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java Wed Dec 13 13:03:03 2017
@@ -78,7 +78,9 @@ public class JuelConnector {
Object base = null;
try {
base = prefix.eval(bindings, context);
- } catch (Exception e) {}
+ } catch (Exception e) {
+ Debug.log(e, module);
+ }
Object property = getProperty(bindings, context);
if (property == null && strict) {
throw new PropertyNotFoundException(LocalMessages.get("error.property.property.notfound", "null", base));
@@ -112,7 +114,9 @@ public class JuelConnector {
Object base = null;
try {
base = prefix.eval(bindings, context);
- } catch (Exception e) {}
+ } catch (Exception e) {
+ Debug.log(e, module);
+ }
Object property = getProperty(bindings, context);
if (property == null && strict) {
throw new PropertyNotFoundException(LocalMessages.get("error.property.property.notfound", "null", base));
@@ -179,9 +183,7 @@ public class JuelConnector {
public Tree build(String expression) throws ELException {
try {
return new ExtendedParser(this, expression).tree();
- } catch (ScanException e) {
- throw new ELException(LocalMessages.get("error.build", expression, e.getMessage()));
- } catch (ParseException e) {
+ } catch (ScanException | ParseException e) {
throw new ELException(LocalMessages.get("error.build", expression, e.getMessage()));
}
}
Modified: ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelFunctions.java
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelFunctions.java?rev=1818007&r1=1818006&r2=1818007&view=diff
==============================================================================
--- ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelFunctions.java (original)
+++ ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelFunctions.java Wed Dec 13 13:03:03 2017
@@ -21,9 +21,12 @@ package org.apache.ofbiz.base.util.strin
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
+import java.io.FileNotFoundException;
import java.io.FileOutputStream;
+import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Method;
+import java.net.MalformedURLException;
import java.net.URL;
import java.sql.Timestamp;
import java.text.DateFormat;
@@ -34,6 +37,9 @@ import java.util.Map;
import java.util.TimeZone;
import javax.el.FunctionMapper;
+import javax.xml.parsers.ParserConfigurationException;
+import javax.xml.transform.TransformerConfigurationException;
+import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.stream.StreamSource;
@@ -42,10 +48,13 @@ import org.apache.ofbiz.base.util.Debug;
import org.apache.ofbiz.base.util.FileUtil;
import org.apache.ofbiz.base.util.UtilDateTime;
import org.apache.ofbiz.base.util.UtilProperties;
+import org.apache.ofbiz.base.util.UtilIO;
import org.apache.ofbiz.base.util.UtilXml;
import org.cyberneko.html.parsers.DOMParser;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
+import org.xml.sax.SAXException;
+import org.xml.sax.SAXNotSupportedException;
/** Implements Unified Expression Language functions.
* <p>Built-in functions are divided into a number of
@@ -166,7 +175,7 @@ public class UelFunctions {
}
protected static class Functions extends FunctionMapper {
- protected final Map<String, Method> functionMap = new HashMap<String, Method>();
+ protected final Map<String, Method> functionMap = new HashMap<>();
public Functions() {
try {
this.functionMap.put("date:second", UtilDateTime.class.getMethod("getSecond", Timestamp.class, TimeZone.class, Locale.class));
@@ -261,7 +270,7 @@ public class UelFunctions {
this.functionMap.put("dom:toHtmlString", UelFunctions.class.getMethod("toHtmlString", Node.class, String.class, boolean.class, int.class));
this.functionMap.put("dom:toXmlString", UelFunctions.class.getMethod("toXmlString", Node.class, String.class, boolean.class, boolean.class, int.class));
this.functionMap.put("dom:writeXmlDocument", UelFunctions.class.getMethod("writeXmlDocument", String.class, Node.class, String.class, boolean.class, boolean.class, int.class));
- } catch (Exception e) {
+ } catch (NoSuchMethodException | NullPointerException | SecurityException e) {
Debug.logError(e, "Error while initializing UelFunctions.Functions instance", module);
}
if (Debug.verboseOn()) Debug.logVerbose("UelFunctions.Functions loaded " + this.functionMap.size() + " functions", module);
@@ -403,14 +412,14 @@ public class UelFunctions {
public static String toLowerCase(String str) {
try {
- return str.toLowerCase();
+ return str.toLowerCase(Locale.getDefault());
} catch (Exception e) {}
return null;
}
public static String toUpperCase(String str) {
try {
- return str.toUpperCase();
+ return str.toUpperCase(Locale.getDefault());
} catch (Exception e) {}
return null;
}
@@ -434,10 +443,14 @@ public class UelFunctions {
}
public static String label(String ressource, String label, Locale locale) {
- if (locale == null) locale = Locale.getDefault();
+ if (locale == null) {
+ locale = Locale.getDefault();
+ }
try {
String resolveLabel = UtilProperties.getMessage(ressource, label, locale);
- if (resolveLabel != null) return resolveLabel;
+ if (resolveLabel != null) {
+ return resolveLabel;
+ }
} catch (Exception e) {}
return label;
}
@@ -447,11 +460,13 @@ public class UelFunctions {
try {
URL url = FlexibleLocation.resolveLocation(str);
if (url != null) {
- InputStream is = url.openStream();
+ try (InputStream is = url.openStream();) {
result = true;
- is.close();
+ }
}
- } catch (Exception e) {}
+ } catch (IOException e) {
+ Debug.log(e, module);
+ }
return result;
}
@@ -467,7 +482,7 @@ public class UelFunctions {
} else {
Debug.logError("Unable to locate HTML document " + str, module);
}
- } catch (Exception e) {
+ } catch (IOException | SAXException e) {
Debug.logError(e, "Error while reading HTML document " + str, module);
}
return document;
@@ -478,13 +493,17 @@ public class UelFunctions {
try {
URL url = FlexibleLocation.resolveLocation(str);
if (url != null) {
- InputStream is = url.openStream();
- document = UtilXml.readXmlDocument(is, str);
- is.close();
+ try (InputStream is = url.openStream();) {
+ document = UtilXml.readXmlDocument(is, str);
+ }
+ catch (SAXException | ParserConfigurationException e) {
+ Debug.logError(e, "Error while reading XML document " + str, module);
+ }
} else {
Debug.logError("Unable to locate XML document " + str, module);
}
- } catch (Exception e) {
+ }
+ catch (IOException e) {
Debug.logError(e, "Error while reading XML document " + str, module);
}
return document;
@@ -494,14 +513,14 @@ public class UelFunctions {
try {
File file = FileUtil.getFile(str);
if (file != null) {
- FileOutputStream os = new FileOutputStream(file);
- UtilXml.writeXmlDocument(node, os, encoding, omitXmlDeclaration, indent, indentAmount);
- os.close();
- return true;
+ try (FileOutputStream os = new FileOutputStream(file);) {
+ UtilXml.writeXmlDocument(node, os, encoding, omitXmlDeclaration, indent, indentAmount);
+ return true;
+ }
} else {
Debug.logError("Unable to create XML document " + str, module);
}
- } catch (Exception e) {
+ } catch (IOException | TransformerException | SecurityException e) {
Debug.logError(e, "Error while writing XML document " + str, module);
}
return false;
@@ -526,25 +545,23 @@ public class UelFunctions {
sb.append("/>\n<xsl:template match=\"@*|node()\">\n");
sb.append("<xsl:copy><xsl:apply-templates select=\"@*|node()\"/></xsl:copy>\n");
sb.append("</xsl:template>\n</xsl:stylesheet>\n");
- ByteArrayInputStream bis = new ByteArrayInputStream(sb.toString().getBytes());
+ ByteArrayInputStream bis = new ByteArrayInputStream(sb.toString().getBytes(UtilIO.getUtf8()));
TransformerFactory transformerFactory = TransformerFactory.newInstance();
- ByteArrayOutputStream os = new ByteArrayOutputStream();
- UtilXml.transformDomDocument(transformerFactory.newTransformer(new StreamSource(bis)), node, os);
- os.close();
- return os.toString();
- } catch (Exception e) {
+ try (ByteArrayOutputStream os = new ByteArrayOutputStream();) {
+ UtilXml.transformDomDocument(transformerFactory.newTransformer(new StreamSource(bis)), node, os);
+ return os.toString();
+ }
+ } catch (IOException | TransformerException e) {
Debug.logError(e, "Error while creating HTML String ", module);
}
return null;
}
public static String toXmlString(Node node, String encoding, boolean omitXmlDeclaration, boolean indent, int indentAmount) {
- try {
- ByteArrayOutputStream os = new ByteArrayOutputStream();
+ try (ByteArrayOutputStream os = new ByteArrayOutputStream();) {
UtilXml.writeXmlDocument(node, os, encoding, omitXmlDeclaration, indent, indentAmount);
- os.close();
return os.toString();
- } catch (Exception e) {
+ } catch (IOException | TransformerException e) {
Debug.logError(e, "Error while creating XML String ", module);
}
return null;
Modified: ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelUtil.java
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelUtil.java?rev=1818007&r1=1818006&r2=1818007&view=diff
==============================================================================
--- ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelUtil.java (original)
+++ ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelUtil.java Wed Dec 13 13:03:03 2017
@@ -48,7 +48,7 @@ import org.apache.ofbiz.base.util.collec
/** Implements the Unified Expression Language (JSR-245). */
public final class UelUtil {
- protected static final String module = UelUtil.class.getName();
+ private static final String module = UelUtil.class.getName();
private static final String localizedMapLocaleKey = LocalizedMap.class.getName() + "_locale".replace(".", "_");
private static final ExpressionFactory exprFactory = JuelConnector.newExpressionFactory();
private static final ELResolver defaultResolver = new ExtendedCompositeResolver() {
@@ -61,13 +61,13 @@ public final class UelUtil {
add(new BeanELResolver(false));
}
};
-
+
private UelUtil () {}
-
+
public static String getLocalizedMapLocaleKey() {
return localizedMapLocaleKey;
}
-
+
/** Evaluates a Unified Expression Language expression and returns the result.
* @param context Evaluation context (variables)
* @param expression UEL expression
@@ -242,7 +242,7 @@ public final class UelUtil {
@Override
public boolean equals(Object obj) {
- if (this == obj) {
+ if (obj instanceof ReadOnlyExpression) {
return true;
}
try {
@@ -268,7 +268,7 @@ public final class UelUtil {
public boolean isLiteralText() {
return false;
}
-
+
}
@SuppressWarnings("serial")
@@ -281,7 +281,7 @@ public final class UelUtil {
}
@Override
public boolean equals(Object obj) {
- if (this == obj) {
+ if (obj instanceof BasicValueExpression) {
return true;
}
try {
Re: svn commit: r1818007 - in
/ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/
base/util/string: FlexibleStringExpander.java JuelConnector.java
UelFunctions.java UelUtil.java
Posted by Nicolas Malin <ni...@nereide.fr>.
Oh I missed your issue Jacques, thanks for catching theses commits and
updating it.
Nicolas
Le 17/12/2017 à 22:40, Jacques Le Roux a écrit :
> Thanks guys, this fixed OFBIZ-10058
>
> Jacques
>
>
> Le 17/12/2017 à 21:06, Michael Brohl a écrit :
>> Hi Nicolas,
>>
>> great, seems I missed the 2nd similar code block. I saw too much code
>> in the recent days... ;-)
>>
>> Thanks for taking care,
>>
>> regards,
>>
>> Michael
>>
>>
>> Am 17.12.17 um 21:02 schrieb Nicolas Malin:
>>> Thanks Michael
>>>
>>> I applied the same correction on the second one at 1818510.
>>>
>>> Thanks for the works !
>>>
>>> Cheers,
>>>
>>> Nicolas
>>>
>>>
>>> Le 17/12/2017 à 19:10, Michael Brohl a écrit :
>>>> Hi Nicolas,
>>>>
>>>> thanks for reporting!
>>>>
>>>> I guess that this is the reason why there was no logging at all. At
>>>> r1818498 I added verbose logging.
>>>>
>>>> Thanks,
>>>>
>>>> Michael
>>>>
>>>>
>>>> Am 17.12.17 um 18:00 schrieb Nicolas Malin:
>>>>> Hello Michael,
>>>>>
>>>>> Le 13/12/2017 à 14:03, mbrohl@apache.org a écrit :
>>>>>> ---
>>>>>> ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java
>>>>>> (original)
>>>>>> +++
>>>>>> ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java
>>>>>> Wed Dec 13 13:03:03 2017
>>>>>> @@ -78,7 +78,9 @@ public class JuelConnector {
>>>>>> Object base = null;
>>>>>> try {
>>>>>> base = prefix.eval(bindings, context);
>>>>>> - } catch (Exception e) {}
>>>>>> + } catch (Exception e) {
>>>>>> + Debug.log(e, module);
>>>>>> + }
>>>>>
>>>>> With this commit, my logs are now massively populate by
>>>>>
>>>>> 2017-12-17 17:32:52,542 |main |JuelConnector |F| null
>>>>> javax.el.PropertyNotFoundException: Cannot resolve identifier
>>>>> 'updateServiceCtx'
>>>>> at
>>>>> de.odysseus.el.tree.impl.ast.AstIdentifier.eval(AstIdentifier.java:93)
>>>>> ~[juel-impl-2.2.7.jar:2.2.7]
>>>>> at
>>>>> org.apache.ofbiz.base.util.string.JuelConnector$ExtendedAstDot.setValue(JuelConnector.java:116)
>>>>> [ofbiz.jar:?]
>>>>> ...
>>>>>
>>>>> I'm alone on this case ?
>>>>> I propose, if you want display the exception, to replace all
>>>>> Debug.log(e, module); by
>>>>> if (Debug.verboseOn()) {Debug.logVerbose("failed to .... by "
>>>>> e.toString(), module); }
>>>>>
>>>>> Like this we can display them without stacktrace when the verbose
>>>>> mode will be enable.
>>>>>
>>>>> Cheers,
>>>>> Nicolas
>>>>
>>>
>>
>
>
Re: svn commit: r1818007 - in
/ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/
base/util/string: FlexibleStringExpander.java JuelConnector.java
UelFunctions.java UelUtil.java
Posted by Jacques Le Roux <ja...@les7arts.com>.
Thanks guys, this fixed OFBIZ-10058
Jacques
Le 17/12/2017 à 21:06, Michael Brohl a écrit :
> Hi Nicolas,
>
> great, seems I missed the 2nd similar code block. I saw too much code in the recent days... ;-)
>
> Thanks for taking care,
>
> regards,
>
> Michael
>
>
> Am 17.12.17 um 21:02 schrieb Nicolas Malin:
>> Thanks Michael
>>
>> I applied the same correction on the second one at 1818510.
>>
>> Thanks for the works !
>>
>> Cheers,
>>
>> Nicolas
>>
>>
>> Le 17/12/2017 à 19:10, Michael Brohl a écrit :
>>> Hi Nicolas,
>>>
>>> thanks for reporting!
>>>
>>> I guess that this is the reason why there was no logging at all. At r1818498 I added verbose logging.
>>>
>>> Thanks,
>>>
>>> Michael
>>>
>>>
>>> Am 17.12.17 um 18:00 schrieb Nicolas Malin:
>>>> Hello Michael,
>>>>
>>>> Le 13/12/2017 à 14:03, mbrohl@apache.org a écrit :
>>>>> --- ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java (original)
>>>>> +++ ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java Wed Dec 13 13:03:03 2017
>>>>> @@ -78,7 +78,9 @@ public class JuelConnector {
>>>>> Object base = null;
>>>>> try {
>>>>> base = prefix.eval(bindings, context);
>>>>> - } catch (Exception e) {}
>>>>> + } catch (Exception e) {
>>>>> + Debug.log(e, module);
>>>>> + }
>>>>
>>>> With this commit, my logs are now massively populate by
>>>>
>>>> 2017-12-17 17:32:52,542 |main |JuelConnector |F| null
>>>> javax.el.PropertyNotFoundException: Cannot resolve identifier 'updateServiceCtx'
>>>> at de.odysseus.el.tree.impl.ast.AstIdentifier.eval(AstIdentifier.java:93) ~[juel-impl-2.2.7.jar:2.2.7]
>>>> at org.apache.ofbiz.base.util.string.JuelConnector$ExtendedAstDot.setValue(JuelConnector.java:116) [ofbiz.jar:?]
>>>> ...
>>>>
>>>> I'm alone on this case ?
>>>> I propose, if you want display the exception, to replace all Debug.log(e, module); by
>>>> if (Debug.verboseOn()) {Debug.logVerbose("failed to .... by " e.toString(), module); }
>>>>
>>>> Like this we can display them without stacktrace when the verbose mode will be enable.
>>>>
>>>> Cheers,
>>>> Nicolas
>>>
>>
>
Re: svn commit: r1818007 - in
/ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string:
FlexibleStringExpander.java JuelConnector.java UelFunctions.java UelUtil.java
Posted by Michael Brohl <mi...@ecomify.de>.
Hi Nicolas,
great, seems I missed the 2nd similar code block. I saw too much code in
the recent days... ;-)
Thanks for taking care,
regards,
Michael
Am 17.12.17 um 21:02 schrieb Nicolas Malin:
> Thanks Michael
>
> I applied the same correction on the second one at 1818510.
>
> Thanks for the works !
>
> Cheers,
>
> Nicolas
>
>
> Le 17/12/2017 à 19:10, Michael Brohl a écrit :
>> Hi Nicolas,
>>
>> thanks for reporting!
>>
>> I guess that this is the reason why there was no logging at all. At
>> r1818498 I added verbose logging.
>>
>> Thanks,
>>
>> Michael
>>
>>
>> Am 17.12.17 um 18:00 schrieb Nicolas Malin:
>>> Hello Michael,
>>>
>>> Le 13/12/2017 à 14:03, mbrohl@apache.org a écrit :
>>>> ---
>>>> ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java
>>>> (original)
>>>> +++
>>>> ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java
>>>> Wed Dec 13 13:03:03 2017
>>>> @@ -78,7 +78,9 @@ public class JuelConnector {
>>>> Object base = null;
>>>> try {
>>>> base = prefix.eval(bindings, context);
>>>> - } catch (Exception e) {}
>>>> + } catch (Exception e) {
>>>> + Debug.log(e, module);
>>>> + }
>>>
>>> With this commit, my logs are now massively populate by
>>>
>>> 2017-12-17 17:32:52,542 |main |JuelConnector |F| null
>>> javax.el.PropertyNotFoundException: Cannot resolve identifier
>>> 'updateServiceCtx'
>>> at
>>> de.odysseus.el.tree.impl.ast.AstIdentifier.eval(AstIdentifier.java:93)
>>> ~[juel-impl-2.2.7.jar:2.2.7]
>>> at
>>> org.apache.ofbiz.base.util.string.JuelConnector$ExtendedAstDot.setValue(JuelConnector.java:116)
>>> [ofbiz.jar:?]
>>> ...
>>>
>>> I'm alone on this case ?
>>> I propose, if you want display the exception, to replace all
>>> Debug.log(e, module); by
>>> if (Debug.verboseOn()) {Debug.logVerbose("failed to .... by "
>>> e.toString(), module); }
>>>
>>> Like this we can display them without stacktrace when the verbose
>>> mode will be enable.
>>>
>>> Cheers,
>>> Nicolas
>>
>
Re: svn commit: r1818007 - in
/ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string:
FlexibleStringExpander.java JuelConnector.java UelFunctions.java UelUtil.java
Posted by Nicolas Malin <ni...@nereide.fr>.
Thanks Michael
I applied the same correction on the second one at 1818510.
Thanks for the works !
Cheers,
Nicolas
Le 17/12/2017 à 19:10, Michael Brohl a écrit :
> Hi Nicolas,
>
> thanks for reporting!
>
> I guess that this is the reason why there was no logging at all. At
> r1818498 I added verbose logging.
>
> Thanks,
>
> Michael
>
>
> Am 17.12.17 um 18:00 schrieb Nicolas Malin:
>> Hello Michael,
>>
>> Le 13/12/2017 à 14:03, mbrohl@apache.org a écrit :
>>> ---
>>> ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java
>>> (original)
>>> +++
>>> ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java
>>> Wed Dec 13 13:03:03 2017
>>> @@ -78,7 +78,9 @@ public class JuelConnector {
>>> Object base = null;
>>> try {
>>> base = prefix.eval(bindings, context);
>>> - } catch (Exception e) {}
>>> + } catch (Exception e) {
>>> + Debug.log(e, module);
>>> + }
>>
>> With this commit, my logs are now massively populate by
>>
>> 2017-12-17 17:32:52,542 |main |JuelConnector |F| null
>> javax.el.PropertyNotFoundException: Cannot resolve identifier
>> 'updateServiceCtx'
>> at
>> de.odysseus.el.tree.impl.ast.AstIdentifier.eval(AstIdentifier.java:93)
>> ~[juel-impl-2.2.7.jar:2.2.7]
>> at
>> org.apache.ofbiz.base.util.string.JuelConnector$ExtendedAstDot.setValue(JuelConnector.java:116)
>> [ofbiz.jar:?]
>> ...
>>
>> I'm alone on this case ?
>> I propose, if you want display the exception, to replace all
>> Debug.log(e, module); by
>> if (Debug.verboseOn()) {Debug.logVerbose("failed to .... by "
>> e.toString(), module); }
>>
>> Like this we can display them without stacktrace when the verbose
>> mode will be enable.
>>
>> Cheers,
>> Nicolas
>
Re: svn commit: r1818007 - in
/ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string:
FlexibleStringExpander.java JuelConnector.java UelFunctions.java UelUtil.java
Posted by Michael Brohl <mi...@ecomify.de>.
Hi Nicolas,
thanks for reporting!
I guess that this is the reason why there was no logging at all. At
r1818498 I added verbose logging.
Thanks,
Michael
Am 17.12.17 um 18:00 schrieb Nicolas Malin:
> Hello Michael,
>
> Le 13/12/2017 à 14:03, mbrohl@apache.org a écrit :
>> ---
>> ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java
>> (original)
>> +++
>> ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java
>> Wed Dec 13 13:03:03 2017
>> @@ -78,7 +78,9 @@ public class JuelConnector {
>> Object base = null;
>> try {
>> base = prefix.eval(bindings, context);
>> - } catch (Exception e) {}
>> + } catch (Exception e) {
>> + Debug.log(e, module);
>> + }
>
> With this commit, my logs are now massively populate by
>
> 2017-12-17 17:32:52,542 |main |JuelConnector |F| null
> javax.el.PropertyNotFoundException: Cannot resolve identifier
> 'updateServiceCtx'
> at
> de.odysseus.el.tree.impl.ast.AstIdentifier.eval(AstIdentifier.java:93)
> ~[juel-impl-2.2.7.jar:2.2.7]
> at
> org.apache.ofbiz.base.util.string.JuelConnector$ExtendedAstDot.setValue(JuelConnector.java:116)
> [ofbiz.jar:?]
> ...
>
> I'm alone on this case ?
> I propose, if you want display the exception, to replace all
> Debug.log(e, module); by
> if (Debug.verboseOn()) {Debug.logVerbose("failed to .... by "
> e.toString(), module); }
>
> Like this we can display them without stacktrace when the verbose mode
> will be enable.
>
> Cheers,
> Nicolas
Re: svn commit: r1818007 - in
/ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string:
FlexibleStringExpander.java JuelConnector.java UelFunctions.java UelUtil.java
Posted by Nicolas Malin <ni...@nereide.fr>.
Hello Michael,
Le 13/12/2017 à 14:03, mbrohl@apache.org a écrit :
> --- ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java (original)
> +++ ofbiz/ofbiz-framework/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/JuelConnector.java Wed Dec 13 13:03:03 2017
> @@ -78,7 +78,9 @@ public class JuelConnector {
> Object base = null;
> try {
> base = prefix.eval(bindings, context);
> - } catch (Exception e) {}
> + } catch (Exception e) {
> + Debug.log(e, module);
> + }
With this commit, my logs are now massively populate by
2017-12-17 17:32:52,542 |main |JuelConnector |F| null
javax.el.PropertyNotFoundException: Cannot resolve identifier
'updateServiceCtx'
at
de.odysseus.el.tree.impl.ast.AstIdentifier.eval(AstIdentifier.java:93)
~[juel-impl-2.2.7.jar:2.2.7]
at
org.apache.ofbiz.base.util.string.JuelConnector$ExtendedAstDot.setValue(JuelConnector.java:116)
[ofbiz.jar:?]
...
I'm alone on this case ?
I propose, if you want display the exception, to replace all
Debug.log(e, module); by
if (Debug.verboseOn()) {Debug.logVerbose("failed to .... by "
e.toString(), module); }
Like this we can display them without stacktrace when the verbose mode
will be enable.
Cheers,
Nicolas