You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by "Joseph Witt (JIRA)" <ji...@apache.org> on 2015/01/07 07:28:34 UTC

[jira] [Comment Edited] (NIFI-225) Maven installation fails

    [ https://issues.apache.org/jira/browse/NIFI-225?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14267319#comment-14267319 ] 

Joseph Witt edited comment on NIFI-225 at 1/7/15 6:27 AM:
----------------------------------------------------------

Problem appears to be due to lack of specification of Locale.  Some of our date format Strings used for testing and otherwise are created and understood using the style of Locale.ENGLISH.  But, the Locale in the case of the reporter is likely something else.  If for example you run this sample program:  

{code}
                    final SimpleDateFormat sdf = new SimpleDateFormat(DATE_TO_STRING_FORMAT, Locale.ITALY);

                    try {
                        final Date date = sdf.parse("Fri Apr 04 12:00:45 CEST 2014");
                        final Date date2 = sdf.parse("Tue Jan 06 17:12:13 CET 2015");
                        System.out.println(date.toString() + "\n" + date2.toString());
                    } catch (final ParseException pe) {
                        pe.printStackTrace();
                    }
{code}

Then the stackstrace will occur due to the date being unparseable for that locale.  But if you simply change to:

{code}
                    final SimpleDateFormat sdf = new SimpleDateFormat(DATE_TO_STRING_FORMAT, Locale.ENGLISH);

                    try {
                        final Date date = sdf.parse("Fri Apr 04 12:00:45 CEST 2014");
                        final Date date2 = sdf.parse("Tue Jan 06 17:12:13 CET 2015");
                        System.out.println(date.toString() + "\n" + date2.toString());
                    } catch (final ParseException pe) {
                        pe.printStackTrace();
                    }
{code}

Then it runs perfectly well.  Our code at present doens't specify the locale and thus the system default would be picked up.

For date values we provide in tests we can establish the locale.  For date values provided elsewhere we need to evaluate.  We need to check other parts of the app too such as the core and all processors.


was (Author: joewitt):
Problem appears to be due to lack of specification of Locale.  Some of our date format Strings used for testing and otherwise are created and understood using the style of Locale.ENGLISH.  But, the Locale in the case of the reporter is likely something else.  If for example you run this sample program:  

<code>
                    final SimpleDateFormat sdf = new SimpleDateFormat(DATE_TO_STRING_FORMAT, Locale.ITALY);

                    try {
                        final Date date = sdf.parse("Fri Apr 04 12:00:45 CEST 2014");
                        final Date date2 = sdf.parse("Tue Jan 06 17:12:13 CET 2015");
                        System.out.println(date.toString() + "\n" + date2.toString());
                    } catch (final ParseException pe) {
                        pe.printStackTrace();
                    }
</code>

Then the stackstrace will occur due to the date being unparseable for that locale.  But if you simply change to:

<code>
                    final SimpleDateFormat sdf = new SimpleDateFormat(DATE_TO_STRING_FORMAT, Locale.ENGLISH);

                    try {
                        final Date date = sdf.parse("Fri Apr 04 12:00:45 CEST 2014");
                        final Date date2 = sdf.parse("Tue Jan 06 17:12:13 CET 2015");
                        System.out.println(date.toString() + "\n" + date2.toString());
                    } catch (final ParseException pe) {
                        pe.printStackTrace();
                    }
</code>

Then it runs perfectly well.  Our code at present doens't specify the locale and thus the system default would be picked up.

> Maven installation fails
> ------------------------
>
>                 Key: NIFI-225
>                 URL: https://issues.apache.org/jira/browse/NIFI-225
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Tools and Build
>    Affects Versions: 0.0.1
>         Environment: Ubuntu 14.04 64bit, Maven 3.2.5, Java sdk 1.7.0
>            Reporter: Leonardo
>            Assignee: Joseph Witt
>            Priority: Critical
>             Fix For: 0.0.1
>
>
> Hi,
> following the build steps, I'm having an issue at point 4, "Build the entire code base. In the root dir of the source tree run 'mvn -T C1.0 clean install' "
> The error is the following:
> [ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.18:test (default-test) on project nifi-expression-language: There are test failures.
> [ERROR] 
> [ERROR] Please refer to /home/lbiagioli/Downloads/incubator-nifi-develop/commons/nifi-expression-language/target/surefire-reports for the individual test results.
> [ERROR] -> [Help 1]
> [ERROR] 
> [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
> [ERROR] Re-run Maven using the -X switch to enable full debug logging.
> [ERROR] 
> [ERROR] For more information about the errors and possible solutions, please read the following articles:
> [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
> [ERROR] 
> [ERROR] After correcting the problems, you can resume the build with the command
> [ERROR]   mvn <goals> -rf :nifi-expression-language
> [INFO] 
> [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ standard-services-api-nar ---
> Checking the file org.apache.nifi.attribute.expression.language.TestQuery.txt in the path /incubator-nifi-develop/commons/nifi-expression-language/target/surefire-reports 
> I can read the following:
> -------------------------------------------------------------------------------
> Test set: org.apache.nifi.attribute.expression.language.TestQuery
> -------------------------------------------------------------------------------
> Tests run: 70, Failures: 0, Errors: 2, Skipped: 1, Time elapsed: 1.402 sec <<< FAILURE! - in org.apache.nifi.attribute.expression.language.TestQuery
> testImplicitConversions(org.apache.nifi.attribute.expression.language.TestQuery)  Time elapsed: 0.038 sec  <<< ERROR!
> org.apache.nifi.attribute.expression.language.exception.AttributeExpressionLanguageException: Could not parse input as date
> 	at java.text.DateFormat.parse(DateFormat.java:357)
> 	at org.apache.nifi.attribute.expression.language.evaluation.cast.DateCastEvaluator.evaluate(DateCastEvaluator.java:72)
> 	at org.apache.nifi.attribute.expression.language.evaluation.functions.FormatEvaluator.evaluate(FormatEvaluator.java:41)
> 	at org.apache.nifi.attribute.expression.language.Query.evaluate(Query.java:639)
> 	at org.apache.nifi.attribute.expression.language.Query.evaluateExpression(Query.java:342)
> 	at org.apache.nifi.attribute.expression.language.StandardPreparedQuery.evaluateExpressions(StandardPreparedQuery.java:53)
> 	at org.apache.nifi.attribute.expression.language.Query.evaluateExpressions(Query.java:365)
> 	at org.apache.nifi.attribute.expression.language.TestQuery.verifyEquals(TestQuery.java:1063)
> 	at org.apache.nifi.attribute.expression.language.TestQuery.testImplicitConversions(TestQuery.java:519)
> implicitDateConversion(org.apache.nifi.attribute.expression.language.TestQuery)  Time elapsed: 0.002 sec  <<< ERROR!
> org.apache.nifi.attribute.expression.language.exception.AttributeExpressionLanguageException: Could not parse input as date
> 	at java.text.DateFormat.parse(DateFormat.java:357)
> 	at org.apache.nifi.attribute.expression.language.evaluation.cast.DateCastEvaluator.evaluate(DateCastEvaluator.java:72)
> 	at org.apache.nifi.attribute.expression.language.evaluation.functions.FormatEvaluator.evaluate(FormatEvaluator.java:41)
> 	at org.apache.nifi.attribute.expression.language.Query.evaluate(Query.java:639)
> 	at org.apache.nifi.attribute.expression.language.TestQuery.implicitDateConversion(TestQuery.java:211)
> Is there a way to fix this?
> Thank you,
> Leonardo



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