Size: a a a

2021 March 29

w

wystan_hugh in pro.jvm
Так, начались митинги и я выключил телегу, всем спасибо за советы! Сейчас уточню вопрос. Я бы хотел простой файлик, чтобы его легко могли редактировать наши переводчики. А кодогенерацию, чтобы было удобно импортировать в другие джава-проекты, там типа enum ErrorCode будет. Про отдельный сервис думал, но вроде бы это оверкилл.
источник

AK

Alexander Komarov in pro.jvm
wystan_hugh
Так, начались митинги и я выключил телегу, всем спасибо за советы! Сейчас уточню вопрос. Я бы хотел простой файлик, чтобы его легко могли редактировать наши переводчики. А кодогенерацию, чтобы было удобно импортировать в другие джава-проекты, там типа enum ErrorCode будет. Про отдельный сервис думал, но вроде бы это оверкилл.
(если что - я шутил)
источник

AK

Alexander Komarov in pro.jvm
так-то плейн-джява, плюс языковые бандлы выглядит лучше всео
источник

w

wystan_hugh in pro.jvm
Бизнес-проблема в том, что у нас очень много микросервисов и в них активно что-то девелопят, мобилки не успевают на своей стороне коды добавлять (у них релиз каждые две недели). То есть ошибка может быть что-то типа duplicated iban (iban is already added to your account), а пользователь звонит в саппорт и говорит, ну я же вчера все добавлял, все было нормально. Поэтому думаю упростить жизнь гребцов и переводчиков.
источник

w

wystan_hugh in pro.jvm
Anton Chistyakov
< disclaimer > много букв, читать на свой страх.  </disclaimer>

Унифицировать всё по всему - как задача одному человеку звучит как подозрительный подход, конечно. В промышленном коде. Если проект учебный или маленький для самозанятого - почему нет.
Этой инфы не хватает.
А так подходов море:
 - если просто код ошибки и перевод её - имхо можно глянуть и  java.util.Properties(load/getProperty)или i18n бандлы. Ключ - код, значение - текст ошибки. Можно отдать tech writer-ам. Формат файла текстовый, как и хотели. В коде - один класс exception-а, с кодом ошибки. В нужный момент запрашивается перевод ( Properties - один язык, i18n - много).
 Раз уж модель : ошибка/код-ошибки/перевод.
 - если нужна иерархия exception-ов, генеримая классом - надо генерить чем-то своим(afaik). Но, совместимость между иерархиями по разным версиям текстового файла + совместимость с кодом, который использовал предыдущую иерархию - это хорошая интересная задача. )
 - если учёбное задание - лучше спросить преподавателя или ментора ;)
 ------
 - да, ансамблирование всякое(микросервис, генерящий по коду ошибки перевод) - тоже хорошая тема, но для промышленного распределённого проекта. Для маленького - как писали коллеги - enum ( если только dev-ы ), property-file или i18n ( если пользователь видит ) и доступ через фасад.
Да, спасибо. Наверное i18n bundle еще проще. Надо просто расшарить как зависимость один текстовый файлик между проектами.
источник

П

Павел in pro.jvm
Что-то я запутался. Когда мы пишем spring boot приложение, то храним шаблоны в папке
/src/main/resources/templates
А статические css js в папке
src/main/resources/static

В то же время есть приложения со структурой
src/main/resources/application.properties
src/main/webapp/index.html

Где почитать собрано, как это все развивалось? Когда какая структура используется. Потому что если взять sparkjava framework у него корень ресурсов
src/main/resources/ и шаблоны тоже должны там лежать

Тоесть в одних приложениях ресурсы лежат в src/main/resources в других в src/main/webapp

В чем разница
источник

ch

central hardware in pro.jvm
Павел
Что-то я запутался. Когда мы пишем spring boot приложение, то храним шаблоны в папке
/src/main/resources/templates
А статические css js в папке
src/main/resources/static

В то же время есть приложения со структурой
src/main/resources/application.properties
src/main/webapp/index.html

Где почитать собрано, как это все развивалось? Когда какая структура используется. Потому что если взять sparkjava framework у него корень ресурсов
src/main/resources/ и шаблоны тоже должны там лежать

Тоесть в одних приложениях ресурсы лежат в src/main/resources в других в src/main/webapp

В чем разница
статику в reverse proxy
источник

B1

Burevesnik 1960 in pro.jvm
Привет, возможно кто-то сталкивался с такой проблемой
в проекте исполюзую webclient  для интеграции с другим ресурсом, есть шанс 1 к 15 что выпадет ошибка
reactor.netty.http.client.PrematureCloseException: Connection prematurely closed BEFORE response
 Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:

Проблема в том, что локально никогда ошибка не упадет, а на стейдже может =/
источник

TS

Timur Shaidullin in pro.jvm
В doOnErorr ошибки отлавливаешь? Возможно там будет что-то полезное
источник

w

wystan_hugh in pro.jvm
Burevesnik 1960
Привет, возможно кто-то сталкивался с такой проблемой
в проекте исполюзую webclient  для интеграции с другим ресурсом, есть шанс 1 к 15 что выпадет ошибка
reactor.netty.http.client.PrematureCloseException: Connection prematurely closed BEFORE response
 Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:

Проблема в том, что локально никогда ошибка не упадет, а на стейдже может =/
ее легко воспроизвести. просто по таймауту клиент оборвите.
источник

w

wystan_hugh in pro.jvm
У нас есть отдельный тест, где клиент отваливается через 2 секунды, а бекенд вызывает операцию которая длится 5 секунд. По дефолту реактор на случайном флетмапе просто обрывает вычисление, поэтому я его оборочиваю в отдельное Mono
источник

G

Geron in pro.jvm
Всем привет
Подскажите плиз
Я сейчас понял что иногда забываю теорию о java, но знаю как все там устроено, то есть по коду если смотреть то все норм понятно но если на тестах есть вопросы то это вызывает трудности
источник

.

... in pro.jvm
а подсказать что? и кажись @javastart лучше
источник

PK

Patchouli 💜 Knowledg... in pro.jvm
в целом книжек для подготовки к OCA\OCP должно хватить для core
источник

WT

Waldemar Tsiamruk in pro.jvm
есть еще вариант https://habr.com/ru/post/439432/
источник

NT

Nikolay Tsoy in pro.jvm
источник

u

user576 in pro.jvm
А на счёт JSP. Почему в JSP нельзя обращаться к статическому полю моего класса:
<%= ua.nure.akimenko.Lb3.Application.STORED_STR %>
?
org.apache.jasper.JasperException: Unable to compile class for JSP:
источник

PG

Pavel Glukhov in pro.jvm
user576
А на счёт JSP. Почему в JSP нельзя обращаться к статическому полю моего класса:
<%= ua.nure.akimenko.Lb3.Application.STORED_STR %>
?
org.apache.jasper.JasperException: Unable to compile class for JSP:
в иморт класс добавили?

<%@page import="ua.nure.akimenko.Lb3.Application" %>
источник

u

user576 in pro.jvm
Да
источник

AK

Aleksandr Kabanov in pro.jvm
Если дата в формате дд.мм.гггг лежит в varchar в бд оракл, ее можно в LocalDate сразу смапить как-то? Или нужно в String сначала?
источник