
Mikhail
24.05.2018
13:22:53
проблема в том, что на эмуляторе андройда все работает
проблемы только на реальных устройствах
на Андройд 4.4 вылетает нахер вообще

Денис
24.05.2018
13:23:09
И ответ не похож на кучу говна?

Google

Mikhail
24.05.2018
13:23:19

Денис
24.05.2018
13:23:21
Если сам джейсон глянуть
Окей

Mikhail
24.05.2018
13:23:41
на андройд 6 - падает тихо, без ничего, ответа нет, идет таймаут

Денис
24.05.2018
13:23:44
Гугол похожих историй не рассказывает?

Mikhail
24.05.2018
13:23:52
на андройд 7 - падает громко, с ООМ и в ответе идет 500
я не смог нагуглить
начальство пытается взгреть тех, кто это писал и имеет исходники)

Денис
24.05.2018
13:24:15
Прикольно
Хороший план)

Mikhail
24.05.2018
13:24:25
ну
это сторонняя контора, нам не подчиняется)
поэтому формально хер мы с ними что сделаем

Google

Dmitriy
24.05.2018
13:25:12

Mikhail
24.05.2018
13:25:59

Dmitriy
24.05.2018
13:26:03
поэтому даже загрузка картинки в 5мб целиком в озу выкидывает такое

Mikhail
24.05.2018
13:26:20
Failed to allocate a 3798611100 byte allocation with 7417981 free bytes and 234MB until OOM
да, это больше 3 гигов
значит это просто так память утекает
а можно в андройде джаве выставить system property?
у них там уровень логирования можно через проперти на дебаг выставить

Anton
24.05.2018
13:33:52
https://www.youtube.com/watch?v=U5x7M42IoDc&feature=youtu.be
всем Java!

Роман
24.05.2018
13:35:19
Любители поджавкать

Mikhail
24.05.2018
13:35:39

Anton
24.05.2018
13:35:58
что там ещё будет - не знаю

Denis
24.05.2018
14:24:26
А вот скажите, у меня есть ЗИП архив, я из него вытаскиваю несколько entity в виде стримов, пихаю их в массив и отдаю наружу. Делаю там с ними всякое и забываю про них. В какой момент эти стримы закроются? Как GC на душу положит или никогда?

Vasili
24.05.2018
14:27:51
если там ZipinputStream то по идее никогда, надо самому закрыть
в файловых стримах есть finalize на закрытие, в зиповых нет

Denis
24.05.2018
14:28:42
Он самый. Жопа, блин.
Я сначала делал через try, но он все закрывает сразу при выходе из функции.

Vasili
24.05.2018
14:29:17
если только не конструкия вида new ZipInputStream(new FileInputstream(..))

Google

Vasili
24.05.2018
14:29:57
ну, так если надо наружу, можно вычитать в буфер, закрыть и отдать буфер наружу
отдавать потоки вовне вообще так себе идея

Mikhail
24.05.2018
14:30:17

Denis
24.05.2018
14:30:23

Vasili
24.05.2018
14:32:08
отдавать данные наружу кусками

Mikhail
24.05.2018
14:32:25

Denis
24.05.2018
14:32:47
А если стрим полностью вычитан, он сам закроется?
Хотя тогда можно будет отрефакторить :)

Vasili
24.05.2018
14:34:07

Mikhail
24.05.2018
14:34:27

Denis
24.05.2018
14:34:59

Vasili
24.05.2018
14:36:12
кажется, настало время reactive подходов)

Denis
24.05.2018
14:37:54
Да я сдохну все это переписывать :)

Роман
24.05.2018
14:38:51
думаю ты абсолютно прав

Denis
24.05.2018
14:39:45
Ну у меня кода не сказать что дофига. Но там хитрая логика и я не умею в реактивщину

Google

Роман
24.05.2018
14:40:44
тогда упрости логику

Vasili
24.05.2018
14:40:56
тогда если позволяет место на фс и небольшая нагрузка на i/o , можно перекачивать данные в уникальные файлы под запрос и открывать стримы на них
но это такой костыль, что будем считать, что я этого не говорил

Роман
24.05.2018
14:41:04
или разбей на "понятные" блоки, чтобы было легко модифицировать

Denis
24.05.2018
14:41:07
Не могу, это бизнес-логика :(

Роман
24.05.2018
14:41:13
и переходи к реактиву

Denis
24.05.2018
14:41:27

Роман
24.05.2018
14:41:44
проще распарсить на стринги и в бд залить
она всё умеют

Denis
24.05.2018
14:41:59
У меня нет бд :)

Роман
24.05.2018
14:42:23
скачай postgresql скажем если ee'шное приложение
иначе какой-нибудь h2/sqlite
смотря какая задача
имхо сейчас кучу проблем решает база данных
тем более они довольно таки быстры

Denis
24.05.2018
14:43:31
Задача залезть на сервер и провалидировать пачку файлов по куче параметров
Точнее файл мой закидывают на сервер, а он там уже делает всякое

Роман
24.05.2018
14:44:05
а ну тут тогда бд нафиг не нужна
если только не для кэша что и на json'не можно запилить

Vyacheslav
24.05.2018
15:05:50
привет. Как выполнить программную авторизацию в SpringBoot2? Необходимо для фронта на реакте.
поиск юзера, сверку пароля я сделал. необходимо в самом спринге заавторизоваться

Google

Роман
24.05.2018
15:06:50
нужен вроде Spring Security

Vyacheslav
24.05.2018
15:08:44
вроде нашел вот что https://stackoverflow.com/questions/7900994/programmatically-log-in-a-user-using-spring-security
и это http://www.baeldung.com/manually-set-user-authentication-spring-security

Vladimir
24.05.2018
15:13:27
А кто подскажет, как можно корректно задать префикс для RestController и не задать для обычного Controller, через конфиги это возможно?

Kool
24.05.2018
15:13:57

Vladimir
24.05.2018
15:14:33

valera
24.05.2018
15:14:51
Привет)

Kool
24.05.2018
15:15:16

valera
24.05.2018
15:15:26
Написал первую прогу, ребят как, норм?

Vladimir
24.05.2018
15:15:52
почему?
Я верил до последнего, что подобные моменты можно разруливать через конфиг, но не нашел

Kool
24.05.2018
15:16:07
аннотации = конфиг

Vladimir
24.05.2018
15:16:14
вроде java start есть

Kool
24.05.2018
15:16:36
restcontroller и controller это всего лишь аннотации

valera
24.05.2018
15:16:37
Всм?

Kool
24.05.2018
15:16:40
ты не можешь их настроить
ты можешь их использоваться для "настройки"
сделай BaseController и от него наследуйся
а ещё лучше сделай апи и реализации )