Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-24691

[GSS](7.4.z) French translation bug in WLFYEJB0330 message: timer has expired != La minuterie n'a pas expiré

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Minor
    • 7.4.12.CR1, 7.4.12.GA
    • 7.4.10.GA
    • EJB
    • None
    • False
    • None
    • False
    • ?
      1. Add JAVA_OPTS="$JAVA_OPTS -Duser.language=fr" to jboss-eap-7.4/bin/standalone.sh
      2. deploy ejb-timer.war from quickstart
      3. Check the log

    Description

      The French translation of the message with WLFYEJB0330 is the opposite of the original English - the timer HAS expired. This makes associated stack traces confusing if logging is localized.

      Example:

      ERROR [org.jboss.as.controller.management-operation] (ServerService Thread Pool – 223) WFLYCTL0013: The operation ("cancel") has failed - address : ([
      ("deployment" => "example.war"),
      ("subsystem" => "ejb3"),
      ("singleton-bean" => "EJBTimerScheduler"),
      ("service" => "timer-service"),
      ("timer" => "8f95c0d7-f155-43ed-ba7b-da1d1841a1f1")
      ]): javax.ejb.NoSuchObjectLocalException: WFLYEJB0330: La minuterie n'a pas expiré
      at org.jboss.as.ejb3.timerservice.TimerImpl.assertTimerState(TimerImpl.java:461)
      at org.jboss.as.ejb3.timerservice.TimerServiceImpl.cancelTimer(TimerServiceImpl.java:641)
      at org.jboss.as.ejb3.timerservice.TimerImpl.cancel(TimerImpl.java:157)
      [...]
      

      The non-localized source message is the exact opposite:

      /**
       * Creates an exception indicating the Timer has expired
       *
       * @return an \{@link NoSuchObjectLocalException}for the error.
      */
      @Message(id = 330, value = "Timer has expired")
      NoSuchObjectLocalException timerHasExpired();
      

      https://github.com/wildfly/wildfly/blob/14.0.0.Final/ejb3/src/main/java/org/jboss/as/ejb3/logging/EjbLogger.java#L2248

      Trace and code above are from JBoss EAP 7.2.9 / Wildfly 14.0.0, but the issue is unresolved in EAP 7.4:

      # Id: 330
      # Message: Timer %s has expired
      # @param 1: id -
      timerHasExpired=La minuterie %1$s n'a pas expir\u00E9
      

      https://github.com/jbossas/jboss-eap7/blob/7.4.x/ejb3/src/main/resources/org/jboss/as/ejb3/logging/EjbLogger.i18n_fr.properties#L966

      Attachments

        Issue Links

          Activity

            People

              chaowan@redhat.com Chao Wang
              rhn-support-ger-jan Gerhardus Johannes Petrus Maria te Dorsthorst
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: