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

Lenny Primak commented on LANG-1786:
------------------------------------

{code:java}
at java.util.TimeZone.getTimeZone(TimeZone.java:549)
at 
org.apache.commons.lang3.time.FastDateParser$TimeZoneStrategy.<init>(FastDateParser.java:531)
at 
org.apache.commons.lang3.time.FastDateParser.lambda$getLocaleSpecificStrategy$2(FastDateParser.java:883)
at 
org.apache.commons.lang3.time.FastDateParser$$Lambda/0x000007f001394d78.apply(Unknown
 Source:-1)
at 
java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1724)
at 
org.apache.commons.lang3.time.FastDateParser.getLocaleSpecificStrategy(FastDateParser.java:882)
at 
org.apache.commons.lang3.time.FastDateParser.getStrategy(FastDateParser.java:953)
at 
org.apache.commons.lang3.time.FastDateParser.access$500(FastDateParser.java:82)
at 
org.apache.commons.lang3.time.FastDateParser$StrategyParser.letterPattern(FastDateParser.java:450)
at 
org.apache.commons.lang3.time.FastDateParser$StrategyParser.getNextStrategy(FastDateParser.java:436)
at org.apache.commons.lang3.time.FastDateParser.init(FastDateParser.java:984)
at org.apache.commons.lang3.time.FastDateParser.<init>(FastDateParser.java:833)
at org.apache.commons.lang3.time.FastDateFormat.<init>(FastDateFormat.java:398)
at org.apache.commons.lang3.time.FastDateFormat.<init>(FastDateFormat.java:383)
at 
org.apache.commons.lang3.time.FastDateFormat$1.createInstance(FastDateFormat.java:107)
at 
org.apache.commons.lang3.time.FastDateFormat$1.createInstance(FastDateFormat.java:104)
at 
org.apache.commons.lang3.time.AbstractFormatCache.lambda$getInstance$1(AbstractFormatCache.java:223)
at 
org.apache.commons.lang3.time.AbstractFormatCache$$Lambda/0x000007f001389570.apply(Unknown
 Source:-1)
at 
java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1724)
at 
org.apache.commons.lang3.time.AbstractFormatCache.getInstance(AbstractFormatCache.java:223)
at 
org.apache.commons.lang3.time.FastDateFormat.getInstance(FastDateFormat.java:272)
at 
org.apache.commons.lang3.time.DateFormatUtils.<clinit>(DateFormatUtils.java:198)
at 
org.apache.rat.report.claim.impl.xml.SimpleXmlClaimReporter.startReport(SimpleXmlClaimReporter.java:131)
at 
org.apache.rat.report.claim.util.ClaimReporterMultiplexer.startReport(ClaimReporterMultiplexer.java:54)
at org.apache.rat.Reporter.report(Reporter.java:99)
at org.apache.rat.Reporter.report(Reporter.java:72)
at org.apache.rat.mp.RatCheckMojo.execute(RatCheckMojo.java:123)
at 
org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:146)
at 
org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2(MojoExecutor.java:339)
at 
org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:310)
at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:214)
at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:179)
at org.apache.maven.lifecycle.internal.MojoExecutor$1.run(MojoExecutor.java:168)
at 
org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute(DefaultMojosExecutionStrategy.java:39)
at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:165)
at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:110)
at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:76)
at 
org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:61)
at 
org.apache.maven.lifecycle.internal.DefaultLifecycleStarter.execute(DefaultLifecycleStarter.java:123)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:310)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:225)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:149)
at 
org.apache.maven.cling.invoker.mvn.MavenInvoker.doExecute(MavenInvoker.java:449)
at org.apache.maven.cling.invoker.mvn.MavenInvoker.execute(MavenInvoker.java:97)
at org.apache.maven.cling.invoker.mvn.MavenInvoker.execute(MavenInvoker.java:81)
at org.apache.maven.cling.invoker.LookupInvoker.doInvoke(LookupInvoker.java:165)
at org.apache.maven.cling.invoker.LookupInvoker.invoke(LookupInvoker.java:135)
at org.apache.maven.cling.ClingSupport.run(ClingSupport.java:76)
at org.apache.maven.cling.MavenCling.main(MavenCling.java:51)
at 
java.lang.invoke.DirectMethodHandle$Holder.invokeStatic(DirectMethodHandle$Holder:-1)
at java.lang.invoke.LambdaForm$MH/0x000007f001045000.invoke(LambdaForm$MH:-1)
at 
java.lang.invoke.LambdaForm$MH/0x000007f001045400.invokeExact_MT(LambdaForm$MH:-1)
at 
jdk.internal.reflect.DirectMethodHandleAccessor.invokeImpl(DirectMethodHandleAccessor.java:156)
at 
jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.lang.reflect.Method.invoke(Method.java:565)
at 
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:255)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:201)
at 
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:361)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:314)
 {code}

> A lot of warnings on the console when using FastDateFormat with JDK25
> ---------------------------------------------------------------------
>
>                 Key: LANG-1786
>                 URL: https://issues.apache.org/jira/browse/LANG-1786
>             Project: Commons Lang
>          Issue Type: Improvement
>          Components: lang.time.*
>    Affects Versions: 3.19.0
>            Reporter: Daniel Migowski
>            Priority: Major
>             Fix For: Patch Needed
>
>
> When using an instance of FastDateFormat with e.g.
> {code:java}
> FastDateFormat.getInstance( "yyyy-MM-dd'T'HH:mm:ssZ" );{code}
> the timezone database of the commons.lang package iterates throught all 
> timezones and adds them to the local database. This sadly calls
> {code:java}
> java.util.TimeZone.getTimeZone(String){code}
> with a bunch of timezone strings that are considered deprecated with the new 
> JDK25 (or something between 18 and 25, didn't check that), and each of these 
> timezone strings leads to a message like
> {noformat}
> WARNING: Use of the three-letter time zone ID "ACT" is deprecated and it will 
> be removed in a future release{noformat}
> printed directly from the getTimeZone function to system.err!
> This is actually really annoying. The timezone strings which are deprecated 
> can be found in 
> {code:java}
> java.time.ZoneId.SHORT_IDS.{code}
> My suggestion is to check in 
> {code:java}
> org.apache.commons.lang3.time.FastDateParser.TimeZoneStrategy.TimeZoneStrategy{code}
> if the JDK version 25 is running and then to filter the values from SHORT_IDS 
> to be recognized. SHORT_IDS should be copied into commons.lang to make this 
> still work with older JDKs.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to