Upload catalog translation causes an error
reshmabidikar opened this issue · comments
The upload catalog translation and upload invoice translation code causes the following error:
org.killbill.billing.client.KillBillClientException: Invalid locale format: fr_FR/
The following stack trace is seen in the Kill Bill logs:
Caused by: java.lang.IllegalArgumentException: Invalid locale format: fr_FR/
at org.killbill.billing.util.LocaleUtils.toLocale(LocaleUtils.java:50)
at org.killbill.billing.jaxrs.resources.InvoiceResource.getTemplateResource(InvoiceResource.java:925)
at org.killbill.billing.jaxrs.resources.InvoiceResource.getCatalogTranslation(InvoiceResource.java:782)
at org.killbill.billing.jaxrs.resources.InvoiceResource_$$_jvstc52_0._d36getCatalogTranslation(InvoiceResource_$$_jvstc52_0.java)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.glassfish.hk2.utilities.reflection.ReflectionHelper.invoke(ReflectionHelper.java:1268)
at org.jvnet.hk2.internal.MethodInterceptorHandler$MethodInvocationImpl.proceed(MethodInterceptorHandler.java:164)
at org.killbill.commons.skeleton.metrics.TimedResourceInterceptor.invoke(TimedResourceInterceptor.java:70)
at org.jvnet.hk2.internal.MethodInterceptorHandler.invoke(MethodInterceptorHandler.java:97)
at org.killbill.billing.jaxrs.resources.InvoiceResource_$$_jvstc52_0.getCatalogTranslation(InvoiceResource_$$_jvstc52_0.java)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:52)
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:134)
... 73 common frames omitted
The translation table is uploaded successfully, the error occurs while retrieving the catalog translation by following the location header. This is because there is a trailing /
character added to the location header by this line.