Задать вопрос
  • Почему не работает фильтр запросов в Spring Security?

    azerphoenix
    @azerphoenix Куратор тега Spring
    Java Software Engineer
    Добрый день.
    Что возвращает ADMINISTRATOR.name()?
    Не забудьте про префикс: ROLE_ в названии роли.
    Ответ написан
    Комментировать
  • Ввод и обработка даты в JavaFX и Scene builder?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день.
    Так вот, же причина исключения:
    Caused by: java.time.format.DateTimeParseException: Text '06.12.2021 23:43' could not be parsed at index 2
    . У вас разделителем является "точка", а в форматировании указан "дефис"
    Ответ написан
    1 комментарий
  • Можно ли отправить post запрос в форму?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Буду благодарен если подскажите подобные библиотеки для андроид, что бы можно было отправлять запросы напрямую в поле на сайт

    Добрый день.
    HTTP запросы работают не с клиентской частью (с формой отображаемой в браузере), а с серверной частью. Т.е. при помощи методов http вы общаетесь с сервером.
    Соответственно, откройте форму, о которой идет речь и консоль браузера и посмотрите куда именно шлет post запрос эта форма (на какой эндпоинт). Также посмотрите какие данные она отправляет POST запросом.
    Подсказка:
    fpsqEQ4.png
    Но обратите внимание на то, что помимо данных из формы также есть кукис, которые тоже нужно отправлять.

    Саму либу лучше поменять на что-нибудь другое.
    И вообще, если планируется работать с либой из приложения, то стоит подумать о реализации REST API с авторизацией по jwt.
    Ответ написан
    4 комментария
  • Как скрыть ключ в приложении?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Вам наверное, стоит обратить внимание на Java Cryptography Extension
    Ответ написан
  • Работа с java из docker?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Есть сервер ubuntu с установленным на нем Docker

    Если вы планируете использовать docker compose, то не забудьте установить и его тоже, помимо докера.

    подразумеваю что буду использовать разные контейнеры для бд, и самого сайта, и соответственно docker compose

    Для удобства деплоя можно использовать docker compose, но это можно и сделать без него тоже.

    как работать с удаленным сервером, как деплоить проект

    Вы можете также посмотреть в сторону CI / CD для удобства деплоя. Также можно собирать ваши проекты при помощи скриптов gitlab и т.д.

    Можно ли подключить как то докер к intellij?

    В самом intellij есть плагин докер, который позволяет при разработке быстро деплоить приложения. Но пожалуй, не самая лучшая идея деплоить приложение на prroduction из intellij idea.

    Да и в целом какие есть нормальные гайды и советы)

    Я даже скажу больше - есть отдельные онлайн курсы для java разработчиков по docker
    Вот, например - https://www.udemy.com/course/docker-for-java-devel...
    Хотя, можно и проще (открыть документацию к докер и прочитать ее).
    Ответ написан
  • Spring MVC, как задать кодировку страничек по умолчанию?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день.
    Вообще, это не костыльный способ, а очень даже нормальный.
    Но если вы хотите добавить глобально, то можете расширить класс AbstractHttpMessageConverter
    Вот, похожий вопрос на SO -
    https://stackoverflow.com/questions/5019162/custom...
    Вот, еще аналогичные вопросы:
    https://stackoverflow.com/questions/5649329/utf-8-...
    https://stackoverflow.com/questions/6638284/spring...
    Ответ написан
    Комментировать
  • Maven выдает ошибку при компиляций Spring проекта?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день!
    я добавил самое нужное мне по тип вебсокетов теста и реакт там ничего лишнего нет

    У меня один вопрос - а что за проект вы собираете, в котором вы подключаете и драйвера mysql & postgres. Spring Cloud и кучу других зависимостей. А точно нет лишних зависимостей?

    Вот, например,
    Caused by: java.lang.IllegalStateException: Devtools is not supported yet, please remove the related dependency for now.

    DevTools для данной версии не поддерживается из-за чего выбрасывается исключение.

    Могу смело предположить, что даже, если вы закомментируете зависимость с DevTools, то все равно столкнетесь с кучей других проблем, так как в вашем pom файле, как мне кажется, много всего лишнего. Возможно. я ошибаюсь...
    Ответ написан
  • Как выполнять JPA запросы в левых потоках (ExecutorService)?

    azerphoenix
    @azerphoenix Куратор тега Spring
    Java Software Engineer
    Добрый день.
    А вы не смотрели случайно вот, этот ответ - ссылка
    К слову, ответ дан одним из олимпиадников по Java.
    Ответ написан
  • Ручная авторизация через вызов браузера в коде с сохранением сессии?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день.
    В принципе, в учебных целях можно запустить браузер через selenium в headless режиме. Саму капчу резолвить через 2Captcha и подобные сервисы (интегрируется через API). Т.е. вам нужно будет спарсить страницу испльзуя Selenium. Можно попробовать слать запросы и без Selenium, например, если у них есть внутренний АПИ. Вообще, еще зависит от сайта. Если контент статический, то можно спарсить данные и при помощи jsoup. В общем, надо смотреть что за сайт, так как на некоторых сайтах (серверах) могут быть настроены honeypot и т.д.
    Ну и как отметил коллега, у кукис есть срок действия.
    Ответ написан
    Комментировать
  • Редактирование текста. Как из массива ссылок вырезать нужные фрагменты?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Вам просто нужно выполнить поиск и замену по строке или регулярному выражению.
    Можно обойтись и без ЯП используя только редактор текста Sublime Text или Notepad++.
    Например, в sublime text нажмите на ctrl + h
    в искомое поле введите
    https://www.facebook.com/profile.php?id=
    поле для замены оставьте пустым и нажмите на Replace All.

    Если же цель заключается именно в использовании ЯП, то в Java можно воспользоваться методом replaceAll()
    Так как у вас массив строк, то циклом пройдитесь по массиву и для каждого элемента массива выполните:
    .replaceAll("https://www.facebook.com/profile.php?id=","");
    Ответ написан
  • 3 вопроса по работе с json в java, как решить данную задачу?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    если вы заметили список стран в ListView выходят по порядку как написано а Json file так вот, как сделать так чтобы показывал по алфавиту от А до Я ?

    После десериализации данных, отсортируйте данные

    когда я выбираю из список какую нибудь страну то мне в Editext (TextInputLayout) возвращает весь объект, а мне нужен вывести только названия выбранного страну

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

    как мне получить страну автоматический в поля Выбор стран, когда пользователь вводит код страну в поля где вводится Код страна и наоборот !?

    Если я вас правильно понимаю, то вы имеете ввиду fuzzy search. Т.е. сквозной поиск.
    Ответ написан
  • Как привязать оплату в Android приложении?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Добрый день. Для того, чтобы принимать оплату в андроид приложениях необходимо зарегистрироваться в Google Play Developers и после чего зарегистрироваться в качестве продавца. Когда я регистрировался данная услуга была 25 долларов. После чего вы можете интегрировать системы оплаты в андроид приложениях.
    Но приложение не планируется выкладывать на play market.

    Тогда вы не сможете получать оплату через Play Market и возможно, что нужно будет зарегистрировать ИП.
    Ответ написан
    Комментировать
  • Почему не удается подключиться к удаленной базе данных через Spring Boot JPA?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый вечер!
    No appropriate protocol (protocol is disabled or cipher suites are inappropriate)

    А так пробовали?
    jdbc:mysql://remoteHost:3306/bdname?autoReconnect=true&useSSL=false

    https://stackoverflow.com/questions/67899129/postf...
    А вот, что говорят:
    As far as I am concerned, the cause of the issue is that OpenJdk requires TLSv1.2 or TLSv1.3, starting from version 11.0.11. Update: The change will apply to at least OpenJDK 8u292 onward, OpenJDK 11.0.11 onward, and all versions of OpenJDK 16, following the JRE and JDK Crypto Roadmap published by Oracle
    Ответ написан
    1 комментарий
  • Данные о другом пользователе через instagram api?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    То есть не существует никакого официального способа получить ленту другого пользователя?

    Подозреваю, что да. И как вам уже подсказали вам необходимо спарсить ленту. Например, при помощи selenium. Или же как вариант изучить внутренний АПИ, выполнить запрос и спарсить json, в котором будут необходимые данные.
    Ответ написан
    Комментировать
  • Как сделать аутентификацию без использования html формы?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Хочу сделать аутентификацию, чтобы запрос приходил с фронта(я делаю только бэк).

    По сути вы пишете REST сервис, а соответственно, вам нужно добавить аутентификацию с использованием jwt.
    Вот, пример приложения - https://github.com/hantsy/spring-webmvc-jwt-sample
    Прочитать можно тут:
    https://www.bezkoder.com/spring-boot-security-post...
    Ответ написан
    Комментировать
  • Можно ли обновить таблицу на странице после post запроса средствами js?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Добрый день.
    Давайте уточним несколько моментов.
    Есть таблица в которую данные передаются с помощью thymeleaf, из контроллера на сервере java.

    Правильно ли я понимаю, что речь идет не о таблице БД, а о таблице (тег table) выводимый шаблоном thymeleaf?
    И соответственно, вы делаете POST запрос на сервер, получаете json, а затем хотите этот json вставить в имеющуюся таблицу без обновления самой страницы?
    Если так, то:
    ваши теги Java, Spring, Thymeleaf тут лишние, так как вам необходимо после успешного POST запроса success: полученный json (на клиенте) десериализовать в объекты и добавить их в таблице.
    ajax запрос -
    https://api.jquery.com/jquery.post/
    https://api.jquery.com/jquery.ajax/
    Если вы используете jQuery, то посмотрите на такие функции, как: append(), appendTo()
    https://api.jquery.com/appendto/
    https://api.jquery.com/append/

    Но вообще, я бы рекомендовал сделать следующее - используйте dataTables.
    https://datatables.net/
    Вот, пример POST запроса - https://datatables.net/examples/server_side/post.html
    Ответ написан
    Комментировать
  • Почему не присваивается связь many to many?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день.
    Проблема вот, тут:

    public boolean saveUser(UserDto userDto) {
            User user = userRepository.findByUsername(userDto.getUsername());
            if (user != null) {
                return false;
            }
    
            user.setRoles(Collections.singleton(new Role(1L, "ROLE_USER")));
            user.setUsername(userDto.getUsername());
            user.setPassword(bCryptPasswordEncoder.encode(userDto.getPassword()));
            userRepository.save(user);
    
            return true;
        }


    Попробуйте так:
    public boolean saveUser(UserDto userDto) {
            User userFromDB = userRepository.findByUsername(userDto.getUsername());
            if (userFromDB != null) {
                return false;
            }
            User user = new User();
            user.setUsername(userDto.getUsername());
            user.setPassword(bCryptPasswordEncoder.encode(userDto.getPassword()));
            user.setRoles(Collections.singleton(new Role(1L, "ROLE_USER")));
            userRepository.save(user);
    
            return true;
        }


    Подробнее про ManyToMany
    https://vladmihalcea.com/the-best-way-to-use-the-m...

    У вас даже в idea подсвечивается потенциальная проблема
    61937f32c8b2f268382727.png
    Ответ написан
  • Как оптимально перебрать все возможные комбинации 4х массивов?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день.
    Не знаю, будет ли это полезно вам, но библиотека действительно есть (Apache Commons Math):
    CombinatoricsUtils.combinationsIterator()
    https://commons.apache.org/proper/commons-math/jav...
    Ответ написан
    Комментировать
  • Main не видит другие классы. Что добавить?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день.
    Ну во-первых, зачем вызывать статичный метод sendMsg() через экземпляр класса Jsoner? Вы можете обратиться к методу напрямую через Jsoner.sendMsg()
    Во-вторых,
    location: package неважно
    Важно. Так как название пакета должно соответствовать naming convention. Рекомендую открыть этот проект в Intellij IDEA и скорее всего она будет ругаться. Вполне возможно, что в названии директории есть недопустимые символы (например, тире или дефис).
    В-третьих,
    java -cp "$(printf %s: lib/*.jar)" ./src/неважно/Main.java

    Вот, ответ на ваш вопрос - https://stackoverflow.com/questions/219585/includi...
    Ответ написан
  • Какие лучшие курсы java 2021?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Скажу так: курсы нужны не для того, чтобы получать новые знания, а для того, чтобы более опытный разработчик мог указать вам на ваши ошибки. Также курсы полезны тем, что когда вы изучаете сами, то это может быть не систематично, другое дело, если вам приходится 2-3 раза в неделю посещать курсы (онлайн или оффлайн - не важно).
    Соответственно, можно даже не проходить курсы, а найти ментора (есть даже платные услуги менторов). За основу берите:
    1) учебники
    2) полезные статьи на habr, baeldung, medium и др
    3) туториалы на youtube, udemy, coursera и т.д. ( не бросайтесь тапками =) ). Это помогает быстро освоить что-либо, увидеть в работе фреймворк или еще что, но для получения академических знаний (см. пункт 1)
    Ответ написан