Multi language JS transformations not working - MAP does recognize language setting

  • Platform information:
    • Hardware: Raspberry Pi 4B/8GB/64BG
    • OS: what OS is used and which version
    • Java Runtime Environment: OpenJDK Runtime Environment Temurin-21.0.12+8 (build 21.0.12+8-LTS)
    • openHAB version: 5.2.1 - Release Build
  • Item JS transformation does not check for available language variants.
  • I do have two versions of JS transformation with the same ID. One is in English (:en) the other in German (:de). If I configure the transformation including the language suffix :en or :de the correct transformation is used, e.g. JS(config:js:d7656de369:de):% or JS(config:js:d7656de369:en):%s. When I use the transformation without the language suffix JS(config:js:d7656de369):%s the system does not check for available language options and logs an error.
  • 2026-08-19 22:36:10.466 [WARN ] [rest.core.item.EnrichedItemDTOMapper] - Failed transforming the state '5' on item 'PV1_Inverter_State2' with pattern 'JS(config:js:d7656de369):%s': Could not get script for UID 'config:js:d7656de369'.
    

Interestingly the same is working correctly for MAP transformations. I could not find any reference in the documentation. Might be that’s the gap. However, I do think that the language option in the UI transformation screen only makes sense if the system automatically determines the appropriate language based on regional setting, and also use an appropriate fallback.

Many thanks for your feedback.

Regards,
Michael

if MAP honors :en/:de but the JS transform with the same id ignores the language variants, in my experience the JS transformation service just doesnt do the same locale pickup as MAP. might need separate transformation uids per language, or handle the locale inside one script. not 100% sure on 5.2 though, probably worth a github issue if its supposed to mirror MAP.