Каталог Поиск 0 Сравнить 0 Закладки 0 Корзина Войти
Каталог
105082, Москва, ул. Фридриха Энгельса, 75с21, БЦ Бауманский ИТКОЛ
Пн - Пт: с 09-00 до 18-00 Сб: с 10-00 до 18-00 Вс: выходной
Страницы: 1
RSS
4.6.3 Печать ваучера, UniFi Network
 
Здравствуйте, когда я пытаюсь распечатать неиспользованный ваучер, получаю белую страницу без какой-либо информации. Есть идеи, в чем может быть проблема?
 
После обновления до версии 4.8.14 на Raspberry Pi с Debian 8 (Jessie) мы столкнулись с ещё одной проблемой. Благодаря большой помощи Amber, решение было найдено: нужно было обновить Java-библиотеку Snappy с версии 1.0.5 до 1.1.2. Это делается так: скачиваем snappy-java-1.1.2.jar с http://central.maven.org/maven2/org/xerial/snappy/snappy-java/1.1.2/ и заменяем /usr/lib/unifi/lib/snappy-java-1.0.5.jar на обновлённую версию. ВАЖНО: программное обеспечение контроллера ищет КОНКРЕТНОЕ ИМЯ ФАЙЛА, поэтому snappy-java-1.1.2.jar нужно переименовать в snappy-java-1.0.5.jar, иначе ваши точки доступа так и останутся в состоянии «adopting», а при подключении по ssh к точкам и выполнении команды «info» вы увидите «Status:      Server Reject (http://unifi:8080/inform)». После этого всё успешно заработало.
 
Привет, @Astarath, можешь написать на amber.wong@ubnt.com
 
Привет, Эмбер!  

Довольно много вроде есть — вот самый свежий.  

ПРАВКА: не могу прикрепить файл, хотя ошибок никаких не выдает. Он весит 95К, так что, наверное, если бы я попытался вставить его напрямую, наткнулся бы на ограничение по размеру поста.  

Есть какой-то конкретный раздел, который тебе нужен, или могу отправить тебе его на почту/личным сообщением?
 
Привет, @Astarath, можешь проверить наличие файлов hs_err_pid? Возможно, проблема в snappy, но хочу убедиться.
 
Я перезапускал сервис unifi — никакой пользы. Перезапускал сначала mongodb, потом unifi — всё по-прежнему. Перезагружал Pi — без изменений. Удалял mongodb и unifi, потом ставил заново — тоже ничего не меняется.
 
Привет, @Astarath, правильно, предупреждение лаунчера о невозможности загрузить ubnt_webrtc_jni можно игнорировать. Ты пробовал остановить и заново запустить контроллер или перезагрузить rpi?
 
Привет, @Astarath,

Если вы обновились с контроллера v4.7.6 до последнего v4.8.14 — мы добавили облачную функцию, которая пока не поддерживается на архитектуре Linux/ARMv6 (например, rpi1) и может вызвать проблемы с запуском контроллера. Если это про вас, попробуйте удалить нативную библиотеку WebRTC командой: sudo rm /usr/lib/unifi/lib/native/Linux/armhf/libubnt_webrtc_jni.so
 
У меня стоит Debian Jessie на Raspberry Pi, и из 16 ГБ свободно 8 ГБ.
 
Привет, @Astarath, какую версию ОС ты используешь и достаточно ли свободного места на твоём компьютере?
 
Я выполнил команды «apt-get update» и «apt-get install unifi». Но теперь, хотя процесс java работает, он не слушает никакие порты:  
root@lock:/var/log/unifi# netstat -анп | grep tcp | grep LISTEN  
tcp        0      0 127.0.0.1:27117         0.0.0.0:*               LISTEN      3440/mongod  
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      730/apache2  
tcp        0      0 0.0.0.0:49              0.0.0.0:*               LISTEN      509/tac_plus  
tcp        0      0 10.12.13.252:53         0.0.0.0:*               LISTEN      426/named  
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      426/named  
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      422/sshd  
tcp        0      0 0.0.0.0:3128            0.0.0.0:*               LISTEN      559/(squid)  
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN      775/master  
tcp        0      0 127.0.0.1:953           0.0.0.0:*               LISTEN      426/named  
tcp6       0      0 :::53                   :::*                    LISTEN      426/named  
tcp6       0      0 :::22                   :::*                    LISTEN      422/sshd  

Судя по всему, Mongodb постоянно перезапускается, а в /var/log/unifi/server.log последние несколько строк выглядят так:  
[2016-03-15 11:33:54,222] <localhost-startStop-2> ERROR WebappClassLoader - Веб-приложение [] все еще обрабатывает запрос, который еще не завершился. Это очень вероятно приведёт к утечке памяти. Время, отведённое на завершение запросов, можно настроить с помощью атрибута unloadDelay стандартной реализации Context.
[2016-03-15 11:33:54,232] <localhost-startStop-2> ERROR WebappClassLoader - Веб-приложение [] всё ещё обрабатывает незавершённый запрос. Скорее всего, это вызовет утечку памяти. Можно контролировать время завершения запросов с помощью атрибута unloadDelay в стандартном Context.
[2016-03-15 11:33:54,239] <localhost-startStop-2> ERROR WebappClassLoader - Веб-приложение [] продолжает обрабатывать запрос, который ещё не закончен. Это, скорее всего, приведёт к утечке памяти. Управлять временем завершения можно через unloadDelay в стандартном Context.
[2016-03-15 11:33:54,246] <localhost-startStop-2> ERROR WebappClassLoader - Веб-приложение [] всё ещё занят обработкой незаконченного запроса, что очень вероятно приведёт к утечке памяти. Время, отведённое на завершение запроса, регулируется атрибутом unloadDelay стандартного Context.
[2016-03-15 11:33:54,252] <localhost-startStop-2> ERROR WebappClassLoader - Веб-приложение [] по-прежнему обрабатывает незавершённый запрос. Это почти точно приведёт к утечке памяти. Управление временем завершения — через unloadDelay стандартного Context.
[2016-03-15 11:33:54,258] <localhost-startStop-2> ERROR WebappClassLoader - Веб-приложение [] всё ещё обрабатывает запрос, который не завершён. Высока вероятность утечки памяти. Время ожидания можно задать через unloadDelay стандартного Context.
[2016-03-15 13:01:47,541] <localhost-startStop-1> ERROR WebappClassLoader - Веб-приложение [] всё ещё обрабатывает незаконченный запрос, что очень вероятно приведёт к утечке памяти. Вы можете задать время завершения запроса с помощью unloadDelay стандартного Context.
[2016-03-15 13:01:47,562] <localhost-startStop-1> ERROR WebappClassLoader - Веб-приложение [] всё ещё обрабатывает незавершённый запрос. Это очень вероятно вызовет утечку памяти. Время ожидания регулируется атрибутом unloadDelay стандартного Context.
[2016-03-15 13:50:11,759] <db-server> ERROR system - [exec] error, rc=100
 
У меня такая же проблема с пустой страницей при попытке распечатать ваучеры в версии 4.7.6. Я проверил, что необходимые файлы существуют:

root@lock:/var/lib/unifi/sites/default/portal/bundle# ls -alFh  
total 20K  
drwxr-xr-x 2 root root 4.0K Mar 14 22:06 ./  
drwxr-xr-x 5 root root 4.0K Mar 13 23:58 ../  
-rw-r--r-- 1 root root 1.8K Mar 13 23:58 messages.properties  
-rw-r--r-- 1 root root 1.8K Mar 13 23:58 voucher.css  
-rw-r--r-- 1 root root 1.2K Mar 13 23:58 voucher.html  

Сам портал работает нормально, ваучер можно ввести, он срабатывает, проблема только с их печатью. Странно, что мне удалось распечатать ваучеры один раз, но без каких-либо изменений в конфигурации с тех пор ничего напечатать не получается (если не считать генерацию новых ваучеров, можно это считать изменением конфигурации).

ПРИМЕЧАНИЕ: Сообщение об ошибке из server.log выглядит так:

[2016-03-15 10:48:45,127] <480> ERROR [jsp] - Servlet.service() для сервлета jsp вызвал исключение
java.lang.ClassFormatError: Truncated class file  
       at java.lang.ClassLoader.defineClass1(Native Method)  
       at java.lang.ClassLoader.defineClass(ClassLoader.java:800)  
       at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)  
       at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)  
       at java.net.URLClassLoader.access$100(URLClassLoader.java:71)  
       at java.net.URLClassLoader$1.run(URLClassLoader.java:361)  
       at java.net.URLClassLoader$1.run(URLClassLoader.java:355)  
       at java.security.AccessController.doPrivileged(Native Method)  
       at java.net.URLClassLoader.findClass(URLClassLoader.java:354)  
       at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:132)  
       at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:63)  
       at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:121)  
       at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:172)  
       at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:376)  
       at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)  
       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)  
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)  
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)  
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)  
       at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748)  
       at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:486)  
       at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:411)  
       at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:338)  
       at com.ubnt.ace.view.PrintServlet.service(Unknown Source)  
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)  
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)  
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)  
       at com.ubnt.ace.view.ClickjackFilter.doFilter(Unknown Source)  
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)  
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)  
       at com.ubnt.ace.view.AuthFilter.doFilter(Unknown Source)  
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)  
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)  
       at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)  
       at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)  
       at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)  
       at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)  
       at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)  
       at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)  
       at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)  
       at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)  
       at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)  
       at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)  
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)  
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)  
       at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)  
       at java.lang.Thread.run(Thread.java:745)
 
Спасибо за помощь, я приступлю к работе!
 
Привет, спасибо за предоставленную резервную копию контроллера. Похоже, что у вас отсутствуют файлы voucher.css и voucher.html (они должны находиться в папке /data/sites/<site_id>/portal/bundle/). Если создать новый сайт и включить кастомизацию портала, вы сможете скопировать эти файлы на уже существующие сайты.
 
Да, безусловно!
 
Привет, извиняюсь за путаницу, я просто распечатывал свои собственные ваучеры, используя свой контроллер. Можешь отправить резервную копию своего контроллера на amber[dot]wong[at]ubnt[dot]com, чтобы я мог посмотреть?
 
В Chrome у меня версия 48.0.2564.109 m. Firefox тоже обновлён до последней версии. Я пробовал на нескольких компьютерах. Ошибок при попытке печати не возникает. Прикладываю скриншот того, что появляется в Chrome, когда я пытаюсь распечатать. Когда вы говорите, что у вас получается напечатать 300 ваучеров, это в нашем аккаунте? Или просто когда вы создаёте их сами?
 
Привет, я могу сделать «Печать партии» для 300 ваучеров и «Печать всех неиспользованных ваучеров» для 600 ваучеров (хотя загрузка ваучеров занимает некоторое время) в Chrome, Firefox, Safari и IE. Какой браузер/версию используешь ты, и появляется ли какая-либо ошибка в консоли при попытке распечатать ваучеры?
 
Да, мы используем одноразовые ваучеры на 3 часа, поэтому я создаю сразу по 300 штук или даже больше, и даже после создания каждой партии ни один из вариантов печати не работает. Это случалось и до, и после обновления версий контроллера.
 
Привет, @Astarath, похоже, файл класса повредился. Можешь попробовать переустановить контроллер (можно ту же версию, что у тебя сейчас) поверх существующей?
Страницы: 1
Читают тему (гостей: 1)