首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Google App Engine (JAVA)中读取文件

如何在Google App Engine (JAVA)中读取文件
EN

Stack Overflow用户
提问于 2016-07-23 21:22:09
回答 1查看 958关注 0票数 1

我必须授权我的服务器到Firebase以获得Firebase SDK。但不幸的是,我无法读取credentials.json文件。我已经将service.json文件放到了WEB-INF文件夹中。

我已经将其添加到我的appengine-web.xml文件中:

代码语言:javascript
复制
<resource-files>
    <include path="/service.json"/>
</resource-files>

我试着用下面的代码来读取文件:

代码语言:javascript
复制
FirebaseOptions options = new FirebaseOptions.Builder().setServiceAccount(ServletServletContext.class.getResourceAsStream("/WEB-INF/service.json"))

但当我尝试读取该文件时,我得到了一个NullPointerException。

这是我的整个班级:

代码语言:javascript
复制
@Api(
  name = "myApi",
version = "v1",
namespace = @ApiNamespace(
ownerDomain = "backend",
ownerName = "backend",
packagePath=""
  )
)
public class MyEndpoint {

private static final Logger log = Logger.getLogger(MyEndpoint.class.getName());
private String uid;

@ApiMethod(name = "signup")
public MyBean signup(@Named("token")String token)
{
    uid = "empty";
    uid = "init";

    log.info(new File(getClass().getResource("/WEB-INF/service.json").toString()).exists()+"");

    FirebaseOptions options = new FirebaseOptions.Builder()
                .setServiceAccount(getClass().getResourceAsStream("/WEB-INF/service.json"))
                .setDatabaseUrl("url")
                .build();

    FirebaseApp.initializeApp(options);
    uid = "initialized";

    log.severe("initialized");
    FirebaseAuth.getInstance().verifyIdToken(token)
            .addOnSuccessListener(new OnSuccessListener<FirebaseToken>() {

                    @Override
                    public void onSuccess(FirebaseToken decodedToken) {uid = decodedToken.getUid();
                    }
            });

    MyBean b = new MyBean();
    if(!uid.equals(""))
        b.setData(uid);
    // else
    // b.setData("failed");

    return b;
}

}

提前感谢您的帮助。

EN

回答 1

Stack Overflow用户

发布于 2016-07-24 01:51:10

您可以使用

代码语言:javascript
复制
this.getClass().getResourceAsStream("/WEB-INF/service.json");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38542262

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档