[App Server Error] special characters are not allowed

Hi. This is my first post.
I have recently started using anvil and I am happy with it.
I want to display Japanese on the screen.
This works fine on the anvil editor, but locally it fails to start with an error.

Can you have a solution for this?

The following are the errors.
(base) >anvil-app-server --app CRUDnewsappwalkthrough
Found Anvil App Server JAR in package directory
Database is uninitialised. Setting up Anvil database from scratch…
Setup complete.
[ERROR anvil.app-server.run] Failed to load app %s: %s CRUDnewsappwalkthrough
unacceptable character #FFFD special characters are not allowed
in “”, position 392
at org.yaml.snakeyaml.reader.Reader.checkPrintable(Reader.java:68)
at org.yaml.snakeyaml.reader.Reader.update(Reader.java:163)
at org.yaml.snakeyaml.reader.Reader.peek(Reader.java:122)
at org.yaml.snakeyaml.reader.Reader.peek(Reader.java:111)
at org.yaml.snakeyaml.scanner.ScannerImpl.scanToNextToken(ScannerImpl.java:985)
at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:254)
at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:191)
at org.yaml.snakeyaml.parser.ParserImpl$ParseImplicitDocumentStart.produce(ParserImpl.java:227)
at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:186)
at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:157)
at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:177)
at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:82)
at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:114)
at org.yaml.snakeyaml.Loader.load(Loader.java:51)
at org.yaml.snakeyaml.Yaml.load(Yaml.java:152)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at clojure.lang.Reflector.invokeMatchingMethod(Reflector.java:93)
at clojure.lang.Reflector.invokeInstanceMethod(Reflector.java:28)
at clj_yaml.core$parse_string.invokeStatic(core.clj:78)
at clj_yaml.core$parse_string.invoke(core.clj:73)
at anvil.runtime.read_app_storage$add_subtree_to_yaml$fn__5982.invoke(read_app_storage.clj:79)
at clojure.core.protocols$iter_reduce.invokeStatic(protocols.clj:49)
at clojure.core.protocols$fn__7839.invokeStatic(protocols.clj:75)
at clojure.core.protocols$fn__7839.invoke(protocols.clj:75)
at clojure.core.protocols$fn__7781$G__7776__7794.invoke(protocols.clj:13)
at clojure.core$reduce.invokeStatic(core.clj:6748)
at clojure.core$reduce.invoke(core.clj:6730)
at anvil.runtime.read_app_storage$add_subtree_to_yaml.invokeStatic(read_app_storage.clj:71)
at anvil.runtime.read_app_storage$add_subtree_to_yaml.invoke(read_app_storage.clj:69)
at anvil.runtime.read_app_storage$tree_map_to_yaml.invokeStatic(read_app_storage.clj:194)
at anvil.runtime.read_app_storage$tree_map_to_yaml.invoke(read_app_storage.clj:143)
at anvil.runtime.read_app_storage$get_app_yaml_from_resource_directory.invokeStatic(read_app_storage.clj:203)
at anvil.runtime.read_app_storage$get_app_yaml_from_resource_directory.invoke(read_app_storage.clj:201)
at anvil.app_server.run$load_app.invokeStatic(run.clj:54)
at anvil.app_server.run$load_app.invoke(run.clj:49)
at anvil.app_server.run$load_main_app$fn__1522.invoke(run.clj:96)
at anvil.app_server.run$load_main_app.invokeStatic(run.clj:95)
at anvil.app_server.run$load_main_app.invoke(run.clj:93)
at anvil.app_server.run$_main.invokeStatic(run.clj:429)
at anvil.app_server.run$_main.doInvoke(run.clj:224)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at anvil.app_server.run.main(Unknown Source)

It seems that your app name is in Japanese, please rename it and deploy again.

The name of the app is the same as in the tutorial, so there is no Japanese language in it. (App 2)

App 1: Same as in the tutorial.
https://anvil.works/build#clone:JFAF2HQQ62XVDCY7=7T5Y2EIKUYFHHWF6BTMBK2RR
App 2: Add_article_button.text modified to Japanese
https://anvil.works/build#clone:DWS67WQDYJDTBY25=YPW7I4C76WTU654WPRNKGRJK

I looked into it in detail and found that when I run app 2 on a windows 10 PC, I get an error.
However, on a Mac, App 2 also works fine.

What can I do to solve this problem?

Hi @yamaguchi.ydw,

Other users have had a similar issue with Windows 10 default encoding. The fix posted here may help:

I’ve raised it as an issue on the Anvil App Server repo:

1 Like

Thank you so much.
The problem was solved thanks to this method.
You were very prompt and helpful.

No problem, the real credit should go to @frvi2 for posting the initial solution.

I’m glad you’ve got it working.