Перейти до основного вмісту

Публікації

Показано дописи з міткою "java"

Кодування інформації з сервлета до десктоп аплікації у Java

Десктоп аплікація "спілкується" з сервером Tomcat, тобто передає і отримує результат від сервлета. Але при роботі на Windows дані надходять у кодуванні UTF-8, а відображуються спотворено у кодуванні Windows-1251. Для правильного відображення потрібно у стрічці запуску вказати кодування, тобто на кшталт java -Dfile.encoding=UTF-8 -jar hello.jar Пораду знайшов у https://javarevisited.blogspot.com/2012/01/get-set-default-character-encoding.html

Запуск Cisco ASDM в Ubuntu 18.04

В Ubuntu 18.04 перестала виконуватись аплікація для адміністрування Cisco ASA - ASDM. Аплікація запускається через скрипт asdm.sh, що має вигляд javaws https://X.X.X.X/admin/public/asdm.jnlp Тобто аплікація запускається, але після вводу логіну і паролю, завмирає. Якщо відкрити консоль Java, то можна побачити повідомлення про помилку у сертифікатах, щось на зразок java.lang.ClassNotFoundException: com.sun.javaws.security.CertificateHostnameVerifier at net.sourceforge.jnlp.runtime.JNLPClassLoader.loadClass(JNLPClassLoader.java:1640) ....... ....... invoking SGZ Loader.. Cache location = /root/.asdm/cache Exception in thread "SGZ Loader: applet thread" java.lang.NoClassDefFoundError: sun/misc/BASE64Encoder at com.cisco.nm.dice.loader.Loader.getHttpAutorizationProperty(Unknown Source) Виявилось, що проблема у збільшених вимогах до безпеки в Ubuntu 18.04 та у сумісності з новою версією 11 OpenJDK. Можна видалити встановлену за умовчанням OpenJDK версію 11, та встановити версію 8

Проблеми з сертифікатом у Java аплікації

Під час запуску Java аплікації , що використовує захищене з'єднання, отримуємо повідомлення, щось на кшталт "The Connection to This Website is Untrusted".   або "The Certificate Authority that issued this certificate is not trusted". Тобто чомусь проблеми з сертифікатом, або з перевіркою дійсності сертифіката, можливо через те, що закриті якісь службові порти на проксі сервері. Поради додати адресу сайта у довірені у браузері, чи через "Панель керування"-"Java"-"Security", не допомагають, попередження все рівно з'являється. Допомогло "Панель керування" - "Java"- "Advanced Tab", встановити параметр "Perform TLS certificate revocation checks on" у "Do not check (not recommended"). Пораду знайшов у https://support.oneidentity.com/es-es/tpam/kb/210649/warning-when-starting-a-psm-session-the-connection-to-this-website-is-untrusted-

Встановлення Oracle Java в Ubuntu 18.04

Спочатку треба визначити 32x чи 64x бітна  версія Ubuntu встановлена,  за допомогою команди file /sbin/init У відповідь отримаємо щось на зразок /sbin/init: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0x7aa29ded613e503fb09fb75d94026f3256f01e7a Потім перейти на сайт Oracle http://www.java.com/en/download/manual.jsp та завантажити версію для Linux, щось на зразок jre-8u25-linux-i586.tar.gz (32-bit) або jre-8u25-linux-x64.gz (64-bit). Далі всі команди треба виконувати як root. Спочатку необхідно створити теку для розпакування mkdir /usr/local/java Потім розпакувати файли в створену теку cd /usr/local/java tar -xvzf /tmp/jre-8u25-linux-x64.gz Після розпакування треба додати "Java" до шляху, щоб він був знайдений, коли треба запустити java. Треба додати JAVA_HOME в /etc/profile за допомогою vi /etc/profile Далі додати наступне в низ файлу JAVA_HOME=/usr/local/java/jre1.8.0_25 PATH=$PATH: