forum.bitel.ru
http://forum.bitel.ru/

Добавить страницу в личный кабинет
http://forum.bitel.ru/viewtopic.php?f=22&t=12633
Страница 1 из 1

Автор:  LёLik [ 21 сен 2017, 21:19 ]
Заголовок сообщения:  Добавить страницу в личный кабинет

Здравствуйте.

Возникла необходимость добавить в ЛК страницу с графиком загрузки для пользователя. Сам график есть в другой системе, а вот как впихнуть его в ЛК непонятно.

Меню в "Редактор web-меню" я создал и к договору его привязал.

Как теперь добавить туда свою страницу и впихнуть на неё графики по ссылкам из параметров договора?

--
Информация о версии:

Клиент: вер. 6.2.851 / 10.01.2017 13:18:27
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_121
Сервер: вер. 6.2.1156 / 03.02.2017 20:54:09
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_121

bill: вер. 6.2.98 / 25.01.2017 18:40:43
card: вер. 6.2.39 / 26.05.2016 14:50:45
inet: вер. 6.2.708 / 03.02.2017 20:57:53
npay: вер. 6.2.198 / 03.02.2017 21:00:04
reports: вер. 6.2.214 / 08.01.2017 16:19:19

Автор:  Arcad77 [ 22 сен 2017, 02:06 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

LёLik писал(а):
Сам график есть в другой системе, а вот как впихнуть его в ЛК непонятно.
Чем собираете графики?

Разработчики!
Вопрос задали в тему, очень важная и актуальная тема!

Автор:  zavndw [ 22 сен 2017, 10:15 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

Надо править шаблон страницы, в нем размещять код графика. Если это сторонняя система то какой нить import html в помощь

Автор:  LёLik [ 22 сен 2017, 11:51 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

Arcad77 писал(а):
LёLik писал(а):
Сам график есть в другой системе, а вот как впихнуть его в ЛК непонятно.
Чем собираете графики?

Разработчики!
Вопрос задали в тему, очень важная и актуальная тема!


Сейчас собираем cacti, переходим на zabbix

Как я понял:
- надо написать динамический класс(не нашел подходящего примера)
- прописать в конфигурации dynservice:<модуль>.<интерфейс_сервиса>=<дин.класс>
- добавить выше описанное в редактор web-меню (action)
- как-то скормить это xslt шаблону.

Если бы кто-нибудь подсказал как это делается на практике, был бы очень благодарен.

Автор:  Arcad77 [ 22 сен 2017, 12:43 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

Я пока ни чем не собираю но очень нужно реализовать!

Пока есть графики с портов которые генерирует МикроТик самостоятельно, единственный недостаток на порту может быть больше 1 клиента.

А MRTG, zabbix и другие проги смогут различать на общем порту разных клиентов?
Главный интерес графиков это демонстрация активности клиента, его реальной скорости доступа и загрузки канала.
Остальная наработка по трафику и так красиво отображается в ЛК7.1

Автор:  LёLik [ 22 сен 2017, 13:30 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

Arcad77 писал(а):
Я пока ни чем не собираю но очень нужно реализовать!

Пока есть графики с портов которые генерирует МикроТик самостоятельно, единственный недостаток на порту может быть больше 1 клиента.

А MRTG, zabbix и другие проги смогут различать на общем порту разных клиентов?
Главный интерес графиков это демонстрация активности клиента, его реальной скорости доступа и загрузки канала.
Остальная наработка по трафику и так красиво отображается в ЛК7.1


Насколько я понимаю нет, все эти рисовалки графиков получают по SNMP количество полученных/переданных байт и на основании этого рисуют графики, получается - один порт, один график.

Автор:  LёLik [ 22 сен 2017, 23:30 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

Создал и скомпилировал класс:
Код:
package ru.companyname;

import ru.bitel.bgbilling.kernel.container.web.action.AbstractAction;

public class GetGraph
   extends AbstractAction
{
}


В конфигурации:
dynaction:contract.ActionGetGraph=ru.companyname.GetGraph

Создал в "Редактор web-меню" пункт "Графики"
Код:
action: ActionGetGraph
moduleId: 0
moduleName: contract
moduleTitle: Ядро
title: Графики


./webroot/WEB-INF/jspf/contract/body.jsp
Код:
<c:when test="${action eq 'GetGraph'}"><%@ include file="graphs.jsp"%></c:when>


./webroot/WEB-INF/jspf/contract/graphs.jsp
Код:
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ include file="/WEB-INF/jspf/include/taglibs.jsp"%>
Hello World


В логах:
==> ./log/server.log <==
09-22/20:13:27 WARN [http-bio-0.0.0.0-8080-exec-3] CommonExecutor - action = contract.ActionGetGraph - not found!

ЧЯДН

Автор:  Arcad77 [ 23 сен 2017, 12:30 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

Прежде чем импортировать графики в ЛК
Нужно сперва экспортировать параметры подключения абонента в систему мониторинга.
Пока весь народ не определится кто нам график рисовать будет (MRTG, zabbix ...)
Разработчики замарачиватся не будут! Времени нет!

Автор:  LёLik [ 23 сен 2017, 15:27 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

Графики я сам добавлю и пример выложу. Помогите с добавлением страницы в ЛК

Автор:  Arcad77 [ 23 сен 2017, 15:41 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

LёLik писал(а):
Графики я сам добавлю и пример выложу. Помогите с добавлением страницы в ЛК

Zabbix server ставите?
Ресурсов много требует?

Автор:  LёLik [ 23 сен 2017, 23:33 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

Ошибка 09-22/20:13:27 WARN [http-bio-0.0.0.0-8080-exec-3] CommonExecutor - action = contract.ActionGetGraph - not found!
была из за неправильного параметра конфигурации, правильно так:

dynaction:contract.web.ActionGetGraph=ru.companyname.GetGraph

Теперь здорово бы пригодился пример динамического класса ибо
Код:
==> ./log/server.error.log <==
server 09-23/19:14:58 ERROR [http-bio-0.0.0.0-8080-exec-14] ActionHandler - Exception in ru.companyname.GetGraph:execute
server 09-23/19:14:58 ERROR [http-bio-0.0.0.0-8080-exec-14] CommonExecutor - Операция execute не найдена
ru.bitel.bgbilling.common.BGException: Операция execute не найдена
   at ru.bitel.bgbilling.kernel.container.web.action.ActionHandler.handle(ActionHandler.java:83)
   at bitel.billing.server.WebExecuter.executeAction(WebExecuter.java:463)
   at bitel.billing.server.WebExecuter.doPost(WebExecuter.java:215)
   at bitel.billing.server.WebExecuter.doGet(WebExecuter.java:79)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
   at ru.bitel.common.server.filters.MultipartFilter.doFilter(MultipartFilter.java:53)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
   at ru.bitel.common.server.filters.XSSFilter.doFilter(XSSFilter.java:95)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
   at ru.bitel.common.server.filters.BGAuthFilter.doFilter(BGAuthFilter.java:278)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
   at ru.bitel.common.server.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:54)
   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:504)
   at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
   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:421)
   at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
   at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
   at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
   at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
   at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoSuchMethodException: ru.companyname.GetGraph.execute()
   at java.lang.Class.getMethod(Class.java:1786)
   at ru.bitel.bgbilling.kernel.container.managed.ManagedBeanInfo.getMethod(ManagedBeanInfo.java:124)
   at ru.bitel.bgbilling.kernel.container.web.action.ActionHandler.handleImpl(ActionHandler.java:128)
   at ru.bitel.bgbilling.kernel.container.web.action.ActionHandler.handle(ActionHandler.java:73)
   ... 34 more


Если писать что-то типа
Код:
package ru.companyname;

import ru.bitel.bgbilling.kernel.container.web.action.AbstractAction;

public class GetGraph
   extends AbstractAction
{
   public void execute()
   {
      setResultParam("test","test");
   }
}


Оно пытается отрисовать через XSL

Нужен пример action для jsp

Автор:  skn [ 24 сен 2017, 13:04 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

В запросе указать ct=jsp или в коде акшена

Автор:  LёLik [ 25 сен 2017, 21:34 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

skn писал(а):
В запросе указать ct=jsp или в коде акшена

Спасибо, буду дальше разбираться.

Автор:  Arcad77 [ 05 окт 2017, 04:03 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

Господа что нибудь получилось?

Автор:  Arcad77 [ 21 окт 2017, 21:51 ]
Заголовок сообщения:  Re: Добавить страницу в личный кабинет

Кто нибудь прокомментируйте что за параметры для zabbix
Код:
return "browse:" + deviceConfig.get( "monitor.url", "http://zabbix.intranet.provider.ru/latest.php?hostid=$monitorHostId" )
                    .replaceAll( "\\$monitorHostId", deviceConfig.get( "monitor.hostId", "" ) );

как их нормально поженить?

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/