Java EE Webservice - Как сохранить JSON без базы данных - PullRequest
0 голосов
/ 20 ноября 2018

У меня есть служба REST с простым методом get и post в Java EE.Метод post сохраняет полученный файл json в файл, используя Gson и FileWriter.В моей локальной системе файл сохраняется в C: \ Users ... \ Documents \ Glassfish Domains \ Domain \ config.Метод Get читает этот файл и выдает json.

Когда я тестирую это на своей локальной системе с помощью Postman, все работает нормально, но когда я разверну проект на Ubuntu Server vm с установленным Glassfish, ямогу подключиться, но я получаю http 500 Внутренний код ошибки сервера.Мне удалось выяснить, что ошибки генерируются, когда FileReader / FileWriter пытается что-то сделать.Я полагаю, что доступ к этому каталогу на реальном экземпляре Glassfish ограничен.

Поэтому мой вопрос заключается в том, существует ли путь к файлу, в котором мне разрешено писать файл и читать его впоследствии.Этот файл должен оставаться там (по крайней мере, во время работы приложения) и должен быть одинаковым для каждого запроса (планировщик записывает некоторые данные в файл каждые 24 часа).Если у кого-то есть простая альтернатива, как сохранить json в Java EE без дополнительного экземпляра базы данных, это тоже будет полезно:)

1 Ответ

0 голосов
/ 20 ноября 2018

Если у вас есть доступ к серверу, вы можете создать каталог, используя пользователя сервера glassfish.Настройте этот путь в некотором файле свойств в вашем приложении, а затем используйте это свойство для чтения и записи файла.Таким образом, вы можете настроить разные пути к каталогам в разных средах.

...