web.xml と app-engine-web.xml の代わりに app.yaml を使用するように切り替えようとしています。ドキュメントに忠実に従おうとしましたが、エラーが表示さappconfig.cmd update <my-war-directory>
れます
Reading application configuration data...
Bad configuration: Line 18, column 13: Error setting property 'handlers' on class: com.google.apphosting.utils.config.AppYaml
Caused by: Line 18, column 13: Error setting property 'handlers' on class: com.google.apphosting.utils.config.AppYaml
Please see the logs [C:\Users\<blah blah>\appcfg3710135744474388957.log] for further information.
示されたログ ファイルに、次の行を含むスタック ダンプが表示されます。
com.google.appengine.repackaged.net.sourceforge.yamlbeans.tokenizer.Tokenizer$TokenizerException: Line 18, column 13: Found a mapping value where it is not allowed.
ここに私のファイルがあります(手動で行番号が追加されています):
1 application: my-app
2 version: 1
3 runtime: java
4 threadsafe: true
5
6 public_root: /static
7
8 static_files:
9 - include: /**
10
11 welcome_files:
12 - index.html
13
14 system_properties:
15 java.util.logging.config.file: WEB-INF/logging.properties
16
17 handlers:
18 - url: /user/*
19 servlet: org.restlet.ext.servlet.ServerServlet
20 name: user
21 init_params:
22 org.restlet.application: com.my-app.server.resource.user.UserApplication
23 org.restlet.clients: HTTP HTTPS
Web でいくつかの YAML バリデーターを試してみたところ、実際には、13 列目が「サーブレット」の後の「:」文字を指している 19 行目について不平を言っていると思います。しかし、この使用法はhttps://developers.google.com/appengine/docs/java/configyaml/appconfig_yaml#Required_Elementsのドキュメントと完全に一致しているように見えます
私は愚かなことをしていると確信していますが、困惑しています。