choojoykin #3441 4 июня 2019 (изменено) Кто может помочь?Вот смотрите, у меня есть xsd схемка, по которой я генерирую жаба классыЕсли я просто беру и из консоли вызываю xjc myXsdSchema.xsd - то для поля isDeleted типа Boolean (не boolean) генерируется геттер isIsDeleted, но мне кроме геттеров и сеттеров нужно еще equals и hashcode У меня есть таск в gradle, где я генерирую код классов по xsd схеме, все отлично генерит, геттеры, сеттеры, equals и хешкод, все классно НОВот конкретно геттер для isDeleted типа Boolean - генерируется как getIsDeleted (что правильно по спецификации javabeans) А мне нужно сделать, чтобы он генерился isIsDeleted, потому что этот метод вызывает 50+ классов, которые написали в 2016-17 годах Есть какие то вариации это проделать? Я погуглил, там челы советуют на жабу 6 перейти, потому что баг с генерацией xjc для поля типа Boolean был именно в ней, но так я не могу сделатьСделать простой тип boolean в xsd схемке я тоже не могугугли биндининги и подключай их https://www.baeldung.com/jaxbhttps://docs.oracle.com/javase/tutorial/jaxb/intro/custom.htmlhttp://sqltech.cl/doc/oas11gR1/web.1111/e13758/data_types.htm биндинг потом суешь аргументом в генерацию еще от помидора: для логирования у нас используется logback. мне нравится больше, чем log4net. но обычно либы для логирования очень похожив своих методах лучше не использовать чекед эксепшены. я раньше думал, что это хорошо и по этому поводу идут споры. сейчас я вижу, что они усложняют код, а особой пользы не несутобычно для бизнес-исключений используют свое, наследованное от рантайм эксепшена у нас это ClsErrorExceptionпо-хорошему, его можно ещё оптимизировать - переопределить некоторые методы, чтобы не хранилась лишняя информация. так как в случае бизнес ошибок обычно стектрейс не нужен шо скажите за чекед эксепшоны? юзал и юзаю sl4jна новых проектах по проще - logback чекед эксепшоны - норм тема, если не игнорить их как долбаеба так да, заворачиваю в свою ошибку от рантайматот же спринг все ошибки кидает в рантайм Изменено 4 июня 2019 пользователем choojoykin ни мало ни много, а много и мало Поделиться сообщением Ссылка на сообщение
Matriarch #3442 4 июня 2019 Я когда на продоте пишу вопрос, нахожу ответ сам в течении 15 минут, магия ебучая.Вот прям только нашел, затолкал в xjc аргумент -nv и всё, сгенерилось как надо, причем я тупо для теста первый попавшийся аргумент добавил У вас лучшая аура, почти как у моего ментора, только он нос сует в мой код, я сразу понимаю, в каком месте у меня хуйня Kant понравилось это Поделиться сообщением Ссылка на сообщение
Just.Doit #3443 4 июня 2019 (изменено) шо скажите за чекед эксепшоны? они не нужныдля компайл тайм менеджмента ошибок надо юзать ФП подходы (функция возвращает не просто результат а Either<ErrorType, ResultType>, в Go вроде слышал что так на уровне языка принято)вообще использовать эксепшны это не лучшее решение. но в джаве приходится мириться с экосистемой/легаси и отсталостью языка. хотя возможно есть ломбоки всякие чтобы можно было писать лаконичный код с ошибками в качестве резалта и юзать всякие Either. вообще им стоит сделать опциональным падение компиляции по несоответствию сигнатуры чекед эксепшнов Изменено 4 июня 2019 пользователем Just.Doit очень крутые котейкиКому-то пизды дал - нужно сделать скрин обязательно. (с) Solo Поделиться сообщением Ссылка на сообщение
choojoykin #3444 4 июня 2019 Я когда на продоте пишу вопрос, нахожу ответ сам в течении 15 минут, магия ебучая.Вот прям только нашел, затолкал в xjc аргумент -nv и всё, сгенерилось как надо, причем я тупо для теста первый попавшийся аргумент добавил У вас лучшая аура, почти как у моего ментора, только он нос сует в мой код, я сразу понимаю, в каком месте у меня хуйня -nv Do not perform strict validation of the input schema or schemas. By default, xjc performs strict validation of the source schema before processing. Note that this does not mean the binding compiler will not perform any validation; it simply means that it will perform less-strict validation. coolstorybob шо скажите за чекед эксепшоны? они не нужныдля компайл тайм менеджмента ошибок надо юзать ФП подходы (функция возвращает не просто результат а Either<ErrorType, ResultType>, в Go вроде слышал что так на уровне языка принято)вообще использовать эксепшны это не лучшее решение. но в джаве приходится мириться с экосистемой/легаси и отсталостью языка. хотя возможно есть ломбоки всякие чтобы можно было писать лаконичный код с ошибками в качестве резалта и юзать всякие Either. есть vavr.io для этогофп джава с эйзерами и траями и шлюхами Just.Doit понравилось это ни мало ни много, а много и мало Поделиться сообщением Ссылка на сообщение
sonac #3445 4 июня 2019 для компайл тайм менеджмента ошибок надо юзать ФП подходы (функция возвращает не просто результат а Either<ErrorType, ResultType> thisтоже настоял на этом и теперь у нас просто в рамках кода при ошибке шлется ивент в кафку в топик ошибок и есть сервис которые консьюмит этот топик, разбирается что и как и потом сообщает куда надо. супер удобно, не нужно (ладно, стало нужно гораздо реже) сидеть и курить стектрейсы и все такое. Поделиться сообщением Ссылка на сообщение
FeelYourDestiny #3447 4 июня 2019 Я когда на продоте пишу вопрос, нахожу ответ сам в течении 15 минут, магия ебучая.Вот прям только нашел, затолкал в xjc аргумент -nv и всё, сгенерилось как надо, причем я тупо для теста первый попавшийся аргумент добавил У вас лучшая аура, почти как у моего ментора, только он нос сует в мой код, я сразу понимаю, в каком месте у меня хуйня просто он знает куда свой нос нужно совать Поделиться сообщением Ссылка на сообщение
Just.Doit #3448 4 июня 2019 (изменено) есть vavr.io для этого фп джава с эйзерами и траями и шлюхами крутяк, спасибов след раз когда буду переписывать жава код обязательно это втащубля посмотрел vavr подробнее - это божественнолучшее из дефолта скалы втащили в джовкуогоньвозможно на джаве теперь и не так херово писать как я думал я думаю это мастхев либа Изменено 4 июня 2019 пользователем Just.Doit очень крутые котейкиКому-то пизды дал - нужно сделать скрин обязательно. (с) Solo Поделиться сообщением Ссылка на сообщение
fessnik #3449 4 июня 2019 (изменено) еще от помидора: Приглашай уже сюда своего помидора, пообщаемся Изменено 4 июня 2019 пользователем fessnik Поделиться сообщением Ссылка на сообщение
Matriarch #3450 4 июня 2019 Пиздец у меня всё стало еще хужеЯ удалил тег -nv и просто ради теста сначала поменял жабку на 6 потом вернул на 8Ошибка больше не воспроизводиться, напрочь. Сейчас жаба стоит 8 но всё генериться как нужно и без -nvПроблема вот в чем, мне теперь говорят "ну ищи чо было, так же не может быть, что всё само сделалось пиздато" Поделиться сообщением Ссылка на сообщение
choojoykin #3451 4 июня 2019 Пиздец у меня всё стало еще хужеЯ удалил тег -nv и просто ради теста сначала поменял жабку на 6 потом вернул на 8Ошибка больше не воспроизводиться, напрочь. Сейчас жаба стоит 8 но всё генериться как нужно и без -nv Проблема вот в чем, мне теперь говорят "ну ищи чо было, так же не может быть, что всё само сделалось пиздато" пересобрать проект не пробовал? coolstorybob ни мало ни много, а много и мало Поделиться сообщением Ссылка на сообщение
Ramil #3452 4 июня 2019 еще от помидора: Приглашай уже сюда своего помидора, пообщаемся javascript:void(0); Поделиться сообщением Ссылка на сообщение
Matriarch #3453 4 июня 2019 Пиздец у меня всё стало еще хужеЯ удалил тег -nv и просто ради теста сначала поменял жабку на 6 потом вернул на 8Ошибка больше не воспроизводиться, напрочь. Сейчас жаба стоит 8 но всё генериться как нужно и без -nv Проблема вот в чем, мне теперь говорят "ну ищи чо было, так же не может быть, что всё само сделалось пиздато" пересобрать проект не пробовал? coolstorybob пробовал, нихуя Поделиться сообщением Ссылка на сообщение
Just.Doit #3454 4 июня 2019 (изменено) Пиздец у меня всё стало еще хужеЯ удалил тег -nv и просто ради теста сначала поменял жабку на 6 потом вернул на 8Ошибка больше не воспроизводиться, напрочь. Сейчас жаба стоит 8 но всё генериться как нужно и без -nv Проблема вот в чем, мне теперь говорят "ну ищи чо было, так же не может быть, что всё само сделалось пиздато" и правильно говорятнужно понять что это за хуйня собери на чистом окружении проект (мавен репозиторий локальный чистый, с нуля выкаченные исходники) вообще у тебя цель не чтобы у тебя собиралось или не собиралосьа чтобы соибралось на билд машине и на конкретном боевом сервере работало как надоесли это не вопсроизводится на целевом стенде, то проблемы нет, точнее это можно списать на проблему твоего личного локального окружения Изменено 4 июня 2019 пользователем Just.Doit очень крутые котейкиКому-то пизды дал - нужно сделать скрин обязательно. (с) Solo Поделиться сообщением Ссылка на сообщение
Index #3455 4 июня 2019 шо скажите за чекед эксепшоны?Скажу в лучшем случае @SneakyThrowsВ худшем Try.of(()->{}).get() Поделиться сообщением Ссылка на сообщение
Matriarch #3456 4 июня 2019 Пиздец у меня всё стало еще хужеЯ удалил тег -nv и просто ради теста сначала поменял жабку на 6 потом вернул на 8Ошибка больше не воспроизводиться, напрочь. Сейчас жаба стоит 8 но всё генериться как нужно и без -nv Проблема вот в чем, мне теперь говорят "ну ищи чо было, так же не может быть, что всё само сделалось пиздато" и правильно говорятнужно понять что это за хуйня собери на чистом окружении проект (мавен репозиторий локальный чистый, с нуля выкаченные исходники) вообще у тебя цель не чтобы у тебя собиралось или не собиралосьа чтобы соибралось на билд машине и на конкретном боевом сервере работало как надоесли это не вопсроизводится на целевом стенде, то проблемы нет, точнее это можно списать на проблему твоего личного локального окружения я ща снес всё, что gradle скачал себе в локальный репозиторий за 3 дня последних и еще раз запустил таск на генерациюнихуя все зависимости скачались и всё сгенерировалось как мне надоне воспроизводиться и всё тутну мне сказали завтра коммитнем и посмотрим на других тачках))))забавная хуйня Поделиться сообщением Ссылка на сообщение
choojoykin #3457 4 июня 2019 Пиздец у меня всё стало еще хужеЯ удалил тег -nv и просто ради теста сначала поменял жабку на 6 потом вернул на 8Ошибка больше не воспроизводиться, напрочь. Сейчас жаба стоит 8 но всё генериться как нужно и без -nv Проблема вот в чем, мне теперь говорят "ну ищи чо было, так же не может быть, что всё само сделалось пиздато" и правильно говорятнужно понять что это за хуйня собери на чистом окружении проект (мавен репозиторий локальный чистый, с нуля выкаченные исходники) вообще у тебя цель не чтобы у тебя собиралось или не собиралосьа чтобы соибралось на билд машине и на конкретном боевом сервере работало как надоесли это не вопсроизводится на целевом стенде, то проблемы нет, точнее это можно списать на проблему твоего личного локального окружения я ща снес всё, что gradle скачал себе в локальный репозиторий за 3 дня последних и еще раз запустил таск на генерациюнихуя все зависимости скачались и всё сгенерировалось как мне надоне воспроизводиться и всё тутну мне сказали завтра коммитнем и посмотрим на других тачках))))забавная хуйня посмотрим на других тачках в продакшене agaaga Arzanis понравилось это ни мало ни много, а много и мало Поделиться сообщением Ссылка на сообщение
Matriarch #3458 4 июня 2019 (изменено) Не, этот таск гредла ваще не запустится никогда в продеДо этого это был таск в анте и его не выполняли с 2016 года, какой-то челик, между прочим, подправил в классах, которые он генерировал, в 2017 году строчку руками (неправильно)А мне потом искать неделю пришлось, почему это 300 юзеров не получили права на папки пойду хуярить книжки, спасибо за консультации, вы лучшие! Изменено 4 июня 2019 пользователем Matriarch Поделиться сообщением Ссылка на сообщение
choojoykin #3459 4 июня 2019 есть vavr.io для этого фп джава с эйзерами и траями и шлюхами крутяк, спасибов след раз когда буду переписывать жава код обязательно это втащубля посмотрел vavr подробнее - это божественнолучшее из дефолта скалы втащили в джовкуогоньвозможно на джаве теперь и не так херово писать как я думал я думаю это мастхев либа а лайк не поставил pepehands Just.Doit и Pep_See понравилось это ни мало ни много, а много и мало Поделиться сообщением Ссылка на сообщение
Pep_See #3460 4 июня 2019 есть vavr.io для этого фп джава с эйзерами и траями и шлюхами крутяк, спасибов след раз когда буду переписывать жава код обязательно это втащу бля посмотрел vavr подробнее - это божественнолучшее из дефолта скалы втащили в джовкуогоньвозможно на джаве теперь и не так херово писать как я думал я думаю это мастхев либа а лайк не поставил pepehandsДержи, интересная хуйня этот vavr.io Just.Doit понравилось это pepehands Поделиться сообщением Ссылка на сообщение