我遇到了与Firebase和Java EE相关的问题.
我正在为我的项目编写一些Java servlet,我第一次使用Firebase因为我想尝试新的东西.
我的实际问题如下:我有一个servlet负责在用户数据库中交换iOS设备令牌.这对于将远程推送通知发送到设备是必需的.我在google教程中完成了这个,但我得到以下异常:
java.lang.IllegalStateException: FirebaseApp name [DEFAULT] already exists!
Run Code Online (Sandbox Code Playgroud)
我访问Firebase数据库的方式是通过Java SDK.
我使用以下代码执行此操作:
连接方法
// gets called by the servlet to configure Firebase
public static void connect() {
try {
// for authentication purpose
Map<String, Object> auth = new HashMap<>();
auth.put("uid", "my-service-account");
// Setting up the FirebaseOptions object
// constant FIREBASE_DATABASE_URL = "url to my database"
// constant FIREBASE_KEY_PATH = "path to my json key"
options = new FirebaseOptions.Builder()
.setDatabaseUrl(FIREBASE_DATABASE_URL)
.setServiceAccount(new FileInputStream(FIREBASE_KEY_PATH))
.setDatabaseAuthVariableOverride(auth)
.build();
FirebaseApp.initializeApp(options);
// calling the method …Run Code Online (Sandbox Code Playgroud)