1

私は自分のアプリケーションエンジンサーバーでOAuthを使用しています。むしろ単純で、単純なパラメータの1つとしてUserを追加します。しかし、私はコンパイルエラーを取得します。appengineはユーザーを追加のパラメータとして認識します

複数のエンティティパラメータ。場合にのみ、私はそれだけでは動作しません

public MyBean sayHiUser(@Named("name") String name, User user) 

フォームのメソッドのためにそれが正常に動作

@ApiMethod(path = "updateDocument", name = "updateDocument", httpMethod = ApiMethod.HttpMethod.POST) 
public void updateDocument(User user, MyDocument input){ 
    ... 
} 

...メソッドごとに単一のエンティティ のパラメータがあることができますMyDocumentのようなカスタムオブジェクトがあります。

+0

のようなメソッドを持って、それが最後のパラメータである必要がありだろうか?たぶん私は間違っていますが、私は似たようなことを思い出します... – Matt

+0

私はそれを試みました。それではありませんでした。 –

答えて

2

あなたのユーザーは、タイプがimport com.google.appengine.api.users.Userではないと感じました。

ドキュメントには、「メソッドごとに1つのエンティティパラメータしかない」と記載されています(https://cloud.google.com/appengine/docs/java/endpoints/parameter-and-return-types参照)。

ただし、「パラメータまたは注入型以外のすべての型はエンティティ型とみなされます」、com.google.appengine.api.users.User型は「注入型」です。したがって、通常は問題はありません。ユーザーはこのタイプではありません。

は個人的に、私は完璧にうまく動作

public Customer insert(final User user, Customer customer, ... 

+0

私は 'import com.google.api.server.spi.auth.common.User;'を使うと考えていましたか? https://github.com/GoogleCloudPlatform/appengine-endpoints-helloworld-java-maven/blob/master/src/main/java/com/example/helloworld/YourFirstAPI.java –

+0

を参照してください。 Googleのドキュメントと例。ただし、com.google.api.server.spi.auth.common.Userを使用すると、受信したリクエストに本文がない場合にのみ、コンパイルできます。 Googleの問題登録簿に問題があり、https://code.google.com/p/googleappengine/issues/detail?id=13197と明らかにGoogleが現在分析中であることが確認されています。このテーマに関するその他の興味深い読書はhttp://stackoverflow.com/questions/28445840/how-can-i-pass-custom-information-from-an-app-engine-authenticator-to-the-endpoi and ...です。 –

+0

http://stackoverflow.com/questions/35351830/how-to-retrieve-custom-user-object-in-gae-endpoints Google Endpointの開発者がバグだと言っている箇所。 –

関連する問題