Задать вопрос
  • Как создаётся и генерируется json?

    drno-reg
    @drno-reg
    см не кратко
    Пример получения JSON на JSP

    <%@ taglib prefix="json" uri="http://www.atg.com/taglibs/json" %>
    
        <sql:query var="rs" dataSource="jdbc/ORACLE">
        SELECT
        to_char(r.TIME_STAMP, 'dd.mm.yyyy hh24:mi:ss') AS TIME_STAMP,
        r.NAME                       AS COUNTER,
        r.VALUE
        FROM
        profile_new r
        WHERE
        TIME_STAMP > to_date('25.07.2016 02:30:00', 'dd.mm.yyyy hh24:mi:ss')
        and  TIME_STAMP < to_date('25.07.2016 02:35:00', 'dd.mm.yyyy hh24:mi:ss')
        order by time_stamp
        </sql:query>
        <c:set var="json_text" scope="application">
        <json:array name="rows" prettyPrint="false">
        <c:forEach var="row" items="${rs.rows}">
        <json:object>
            <json:property name="TIME_STAMP" value="${row.TIME_STAMP}"/>
            <json:property name="COUNTER" value="${row.COUNTER}"/>
            <json:property name="VALUE" value="${row.VALUE}"/>
        </json:object>
        </c:forEach>
        </json:array>
        </c:set>


    Пример результата
    [{"TIME_STAMP": "2016-07-25 02:30:22", "COUNTER": "COUNT_ALL", "VALUE": 635 }, { "TIME_STAMP": "2016-07-25 02:30:22", "COUNTER": "COUNT_BAD", "VALUE": 1 }, { "TIME_STAMP": "2016-07-25 02:30:22", "COUNTER": "QUALITY", "VALUE": 99.84 }, { "TIME_STAMP": "2016-07-25 02:31:22", "COUNTER": "COUNT_ALL", "VALUE": 642 }, { "TIME_STAMP": "2016-07-25 02:31:22", "COUNTER": "COUNT_BAD", "VALUE": 1 }, { "TIME_STAMP": "2016-07-25 02:31:22", "COUNTER": "QUALITY", "VALUE": 99.84 }]

    Отличное преимущество этой "строки" в том, что она легко подвергается демаршалингу.
    Ответ написан
  • Гуманитарное образование - это приговор?

    drno-reg
    @drno-reg
    см не кратко
    Думаю небольшое патфолио со своими наработками (небольшой информационный ресурс с примерами своих изысканий и достижений уже в программировании) поставили бы на метро таких шутника. Если нет, то все-таки придется потратить время на получение какой-нибудь корочки по программированию. Как вариант еще сертификат.
    Ответ написан
    Комментировать
  • Frontend framework для корпоративного приложения?

    drno-reg
    @drno-reg
    см не кратко
    Фактор платный или free является важным при выборе framework?

    p.s.
    ExtJS,GXT, DevExtreme, Kendo JSP - платные,
    GWT, PrimeFaces - free
    Ответ написан
  • Стоит ли поступать в ВУЗ, если есть опыт работы программистом?

    drno-reg
    @drno-reg
    см не кратко
    Даже Джобс с Гейтсом пытались когда-то окончить ВУЗ, НО так и не смогли получить диплом об окончании высшей школы. НО смогли сделать гораздо больше чем дипломированные выпускники. НО это совершенно не означает, что не нужно получать высшее образование. Если в какой-то момент ты поймешь, что тебе не нужно переворачивать мир ИТ, то корочка диплома о высшем образовании будет возможностью попытаться найти хорошую работу на "дядю".

    p.s. любая учеба - это инвестиции в самого себя, причем эти инвестиции никто не сможет у тебя отнять.
    Ответ написан
    Комментировать
  • Как правильно передать JSON из JSTL в Java Script?

    drno-reg
    @drno-reg Автор вопроса
    см не кратко
    Благодарю за помощь в решении, заработало

    <script type="text/javascript">
        var jsonObj = ${json_text};
                var jsonResult = [];
                jsonResult.push("Вывод JSON="+'<c:out value="${json_text}"/>');
    jsonResult.push("количество строк json="+jsonObj.length);
    result_json.innerHTML = jsonResult.join('<br>');
     </script>
    Ответ написан
    Комментировать
  • Как HR и работодатели относятся к соискателям, у которых есть свой сайт?

    drno-reg
    @drno-reg
    см не кратко
    Если у человека есть свой информационный ресурс, на мой взгляд это хорошо. И если твой непосредственный руководитель видит, что производительность твоя падает у него всегда есть возможность посмотреть реакцию на вопрос: Своим сайтом занимался?!!! :-)
    Ответ написан
    Комментировать
  • Как правильно задать время в sql запросе?

    drno-reg
    @drno-reg
    см не кратко
    как-то так думаю он будет выглядеть

    select h.name AS host_name, i.name AS item_name, i.key_ as item_key, FROM_UNIXTIME(hs.clock) AS last_time, hs.value, hs.logeventid
    from 
      hosts h 
      join items i on h.hostid = i.hostid
      join history_log hs on i.itemid = hs.itemid
    where 
       DATE_FORMAT(FROM_UNIXTIME(hs.clock/1000), '%Y-%m-%d %H:%i:%s') 
    BETWEEN STR_TO_DATE('2016-08-01 15:00:00','%Y-%m-%d %H:%i:%s') 
    AND STR_TO_DATE('2016-08-01 17:00:00','%Y-%m-%d %H:%i:%s') 
    and i.hostid = '10458' and hs.logeventid = '4624' and hs.logeventid = '4625'
    order by last_time, item_name 
    INTO OUTFILE '/tmp/logon_logoff.csv'
    FIELDS TERMINATED BY ','
    ENCLOSED BY '"'
    LINES TERMINATED BY '\n'
    Ответ написан
  • JS Есть ли универсальный метод получения значения объектов на форме?

    drno-reg
    @drno-reg Автор вопроса
    см не кратко
    for (var i = 0; i<form.elements.length; i++) {
                var elem = document.getElementById (form.elements[i]);
                var defValue = elem.value;
                all_elements=all_elements+form.elements[i].name+" значение "+defValue+";";
            }


    не работает
    Ответ написан
  • Java JCIFS возможно ли скопировать (перенести) файлы с samba на windows?

    drno-reg
    @drno-reg Автор вопроса
    см не кратко
    Вариант решения здесь

    пример с samba на windows

    InputStream in = null;
               OutputStream out = null;
               try{
    
                   String SambaURL= "smb://usersamba:1234@192.168.1.110/data/1b.csv";
                   File destinationFolder = new File("C:\\Temp\\IN\\");
                   SimpleDateFormat fmt = new SimpleDateFormat("yyyyMMddHHmmssSSS_");
                   File child = new File (destinationFolder+ "/" + fmt.format(new Date()) +"1b.csv");
                   SmbFile dir = new SmbFile(SambaURL);
                   SmbFile fileToGet=new SmbFile(SambaURL);
                   fileToGet.connect();
    
                   in = new BufferedInputStream(new SmbFileInputStream(fileToGet));
                   out = new BufferedOutputStream(new FileOutputStream(child));
    
                   byte[] buffer = new byte[4096];
                   int len = 0; //Read length
                   while ((len = in.read(buffer, 0, buffer.length)) != -1) {
                             out.write(buffer, 0, len);
                   }
                   out.flush(); //The refresh buffer output stream
               }
               catch (Exception e) {
                   String msg = "The error occurred: " + e.getLocalizedMessage();
                   System.out.println(msg);
               }
               finally {
                   try {
                       if(out != null) {
                           out.close();
                       }
                       if(in != null) {
                           in.close();
                       }
                   }
                   catch (Exception e) {}
               }
    Ответ написан
    Комментировать
  • Мониторинг на Java. Как реализовать?

    drno-reg
    @drno-reg
    см не кратко
    Если есть желание самостоятельно заморочиться, то на java создать scheduler, который бы работал с со списком заданий (список заданий в любой БД), и результат исполнения заданий клал бы в также в БД. Это приложение реализовать как службу windows или unix. Для себя и пользователей сделать простейшие WEB dashboard.

    Либо же посмотреть в сторону Zabix, Zenoss или Nagios...
    Ответ написан
    Комментировать
  • Как правильно сконфигурировать java wrapper?

    drno-reg
    @drno-reg Автор вопроса
    см не кратко
    необходим простейший работающий пример класса с implements WrapperListener

    временно решил вопрос таким образом

    #wrapper.java.mainclass=org.tanukisoftware.wrapper.demo.DemoApp
    #wrapper.java.mainclass=COM.MainTaskRunner
    wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
    # Java Classpath (include wrapper.jar)  Add class path elements as
    #  needed starting from 1
    #wrapper.java.classpath.1=../lib/wrapperdemo.jar
    wrapper.java.classpath.1=C:/New/MainRunner.jar
    wrapper.java.classpath.2=../lib/wrapper.jar
    # Java Library Path (location of Wrapper.DLL or libwrapper.so)
    wrapper.java.library.path.1=../lib
    wrapper.java.library.path.2=C:/New/MainRunner/lib
    
    # Java Bits.  On applicable platforms, tells the JVM to run in 32 or 64-bit mode.
    wrapper.java.additional.auto_bits=TRUE
    
    # Java Additional Parameters
    wrapper.java.additional.1=
    
    # Initial Java Heap Size (in MB)
    #wrapper.java.initmemory=3
    
    # Maximum Java Heap Size (in MB)
    #wrapper.java.maxmemory=64
    
    # Application parameters.  Add parameters as needed starting from 1
    #wrapper.app.parameter.1="Oracle"
    
    
    # The first application parameter is the name of the class whose main
    # method is to be called when the application is launched.  The class
    # name is followed by the number of parameters to be passed to its main
    # method.  Then comes the actual parameters.
    wrapper.app.parameter.1=COM.MainRunner
    wrapper.app.parameter.2="Oracle"


    работающий выглядит так

    # Java Main class.  This class must implement the WrapperListener interface
    #  or guarantee that the WrapperManager class is initialized.  Helper
    #  classes are provided to do this for you.  See the Integration section
    #  of the documentation for details.
    wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
    # Java Classpath (include wrapper.jar)  Add class path elements as
    #  needed starting from 1
    
    wrapper.java.classpath.1=../lib/example.jar
    wrapper.java.classpath.2=../lib/wrapper.jar
    
    # Java Library Path (location of Wrapper.DLL or libwrapper.so)
    wrapper.java.library.path.1=../lib
    wrapper.java.library.path.2=../lib/lib
    
    # Java Bits.  On applicable platforms, tells the JVM to run in 32 or 64-bit mode.
    wrapper.java.additional.auto_bits=TRUE
    
    # Java Additional Parameters
    wrapper.java.additional.1="Oracle"
    
    # Initial Java Heap Size (in MB)
    #wrapper.java.initmemory=3
    
    # Maximum Java Heap Size (in MB)
    #wrapper.java.maxmemory=64
    
    # Application parameters.  Add parameters as needed starting from 1
    wrapper.app.parameter.1=
    Ответ написан
    Комментировать
  • Как правильно раздать права для samba?

    drno-reg
    @drno-reg Автор вопроса
    см не кратко
    all_squash в exports помог при конфигурировании NFS
    Ответ написан
    Комментировать
  • Почему сервлет - фильтр аутентификации на форме ввода имени и пароля срезает CSS, JS, картинки и т.д.?

    drno-reg
    @drno-reg Автор вопроса
    см не кратко
    Проблему удалось решить так

    @WebServlet(
            name = "AuthenticationFilter",
            description = "Аутентификационный фильтр",
            urlPatterns = "/AuthenticationFilter"
    )
    @WebFilter("*.jsp")
    public class AuthenticationFilter implements Filter {
    
        private ServletContext context;
    
        @Override
        public void init(FilterConfig filterConfig) throws ServletException {
            this.context = filterConfig.getServletContext();
            this.context.log("AuthenticationFilter initialized");
        }
    
        @Override
        public void destroy() {
            //close any resources here
        }
    
        public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    
            HttpServletRequest req = (HttpServletRequest) request;
            HttpServletResponse res = (HttpServletResponse) response;
    
            String uri = req.getRequestURI();
            this.context.log("Requested Resource::" + uri);
    
            HttpSession session = req.getSession(false);
            Object user_o = req.getSession().getAttribute("username");
            this.context.log("Фильтр аутентификации, пользователь::" + user_o);
    
            if (user_o == null && !(uri.endsWith("index.jsp") || uri.endsWith("LoginUser"))) {
                this.context.log("Неавторизованный запрос");
                res.sendRedirect("index.jsp");
    
            } else {
                // pass the request along the filter chain
                this.context.log("Авторизованный запрос, сессия:: " + session);
                chain.doFilter(request, response);
            }
            
        }
    
        }
    Ответ написан
    Комментировать
  • Как правильно передать значение из формы INPUT в сервлет?

    drno-reg
    @drno-reg Автор вопроса
    см не кратко
    Без enctype="multipart/form-data" работает, НО решил все-таки попробовать и request.getParts() попробовал применить следующее

    for (Part p: request.getParts())
    {
    TEXT_ALL=TEXT_ALL+p.getName();
    }


    НО получился список наименований элементов типа
    <td><div class="input-group"><input type="text" class="form-control" NAME="TEXT_${ID}" value="${PARAMETER_VALUE}"> <span class="input-group-addon">,%</span> </div></td>


    каким образом получить и их значение?

    каким образом выполнить эти же операции и для
    <td>  <input type="checkbox" NAME="CHECKBOX_${ID}"></td> <td style="width:50%">${SOLUTION}</td>



    Заранее благодарю.
    Ответ написан
    Комментировать
  • Как определить новый ли MacBook?

    drno-reg
    @drno-reg
    см не кратко
    Был опыт приобретения macbook 12
    1. попытка приобретения в официальном DNS: на поверку оказалось более 5 циклов перезарядки и напрочь отсутствовал запах нового )))) в общем типа витринный образец
    2. попытка приобретения на горбушке, попробовал не РСТ. Коробку вскрывали при мне, был 1 цикл перезарядки.
    В общем остановился на варианте 2.
    Ответ написан
    5 комментариев
  • Стоит ли выносить БД на другой сервер?

    drno-reg
    @drno-reg
    см не кратко
    думаю стоит вынести БД на другой сервер.
    Ответ написан
  • Почему срабатывает insert при перезагрузке JSP страницы?

    drno-reg
    @drno-reg Автор вопроса
    см не кратко
    Проблема решена путем перехода на sevlet основу
    Ответ написан
    Комментировать
  • Как соединить MySQL к сервлету?

    drno-reg
    @drno-reg
    см не кратко
    А артифактах попробуй создать папку libs например и прицепить предварительно созданный экземпляр libraries с драйверами mysql
    Ответ написан
    Комментировать
  • Есть ли параметр CSV JDBC драйвера csvjdbc-1.0-29, который отключал бы дописывание .CSV в select?

    drno-reg
    @drno-reg Автор вопроса
    см не кратко
    проблему решил

    props.put("fileExtention","");
    Ответ написан
    Комментировать
  • Как правильно обратиться к webservlet?

    drno-reg
    @drno-reg Автор вопроса
    см не кратко
    Проблему решил, благодарю за содействие.
    Ответ написан
    Комментировать