0

私はこの人とまったく同じ問題を抱えています:

https://groups.google.com/forum/#!topic/google-appengine-java/4y90M9NlWsA

しかし、応答がなく、インターネット上で役立つものは他にありません。なぜこれが起こるのか誰にも分かりますか?

    RemoteApiOptions options = new RemoteApiOptions()
        .server("localhost", 8888)
        .credentials("blah@blah.blah", "");
    RemoteApiInstaller installer = new RemoteApiInstaller();
    installer.install(options);

スタックトレースは次のとおりです。

Exception in thread "main" java.io.IOException: unexpected response from remote api: {rtok: null, app_id: MyCorrectAppId}

at com.google.appengine.tools.remoteapi.RemoteApiInstaller.getAppIdFromServer(RemoteApiInstaller.java:326)
at com.google.appengine.tools.remoteapi.RemoteApiInstaller.loginImpl(RemoteApiInstaller.java:278)
at com.google.appengine.tools.remoteapi.RemoteApiInstaller.login(RemoteApiInstaller.java:239)
at com.google.appengine.tools.remoteapi.RemoteApiInstaller.install(RemoteApiInstaller.java:106)
at uk.blah.blah.MyClass.main(MyClass.java:114)
4

2 に答える 2

1

メソッドのコードによると、応答本文にプロパティが見つからない場合にRemoteApiInstaller.getAppIdFromServer例外unexpected response from remote apiがスローされる可能性があります。app_idそして、あなたの場合、 PAIR_REGEXPMyCorrectAppIdパターンと一致しない可能性が高いようです。つまり、数字、小文字の文字、チルダ、アンダースコア、またはマイナス記号以外の文字が含まれています。

于 2013-11-05T12:40:10.943 に答える
1

appengine-web.xml<application>内の要素を に設定していることに気付きました。それが問題です。Eugene が正しく指摘したように、ID は のようにすべて小文字にする必要があります。Dan Sanderson の本Programming Google App Engineを引用します。MyCorrectAppIdmycorrectappid

アプリケーション ID はドメイン名で使用されるため、ID には小文字、数字、またはハイフンのみを含めることができ、32 文字未満にする必要があります。さらに、Google はすべての Gmail ユーザー名を、対応する Gmail ユーザーのみが登録できるアプリケーション ID として予約しています。

Eclipse で作業している場合は、新しい Web アプリケーション プロジェクトを設定するときに、そのことを覚えておく必要があります ([新しい Web アプリケーション プロジェクト] ダイアログの下部にオプションがあり、空白のままにする代わりに ID を指定できます)。 .

ここに画像の説明を入力

スタンドアロン環境の場合、ID を空白のままにしておけば、おそらく問題ないと思います (デフォルトで "no_app_id" になります)。

それが役立つことを願っています!

于 2013-11-05T12:08:29.880 に答える