Каков наилучший способ создания отладочной веб-страницы для вычислений в Java? - PullRequest
0 голосов
/ 07 июня 2010

Я занимаюсь разработкой веб-сайта, который использует некоторые сложные вычисления (связанные с НЛП). Мой клиент хочет иметь «отладочные» веб-страницы для некоторых из этих вычислений, где он может запускать их с произвольным вводом и видеть все промежуточные результаты, которые появляются во время вычислений.

Перед этим запросом все вычисления были заключены в бины, а промежуточные результаты были записаны в общий журнал.

Каков наилучший способ собрать все эти результаты на уровне Java, чтобы отобразить их как веб-страницу?

Ответы [ 2 ]

0 голосов
/ 02 июля 2010

Наконец, я пришел к следующему решению: использовать необязательный ThreadLocal<Map> в вычислении для хранения промежуточных значений. В итоге это выглядит примерно так:

public class ComplexComputation {
    public static final ThreadLocal<Map<String, Object>> DATA 
        = new ThreadLocal<Map<String, Object>>();

    public Result compute(Inputs inputs) {
        // ... do something ...
        if (DATA.get() != null) { DATA.get().put("intermediate", intermediate); }
        // ... do something ...
        return result;
    }
}

public void computationDebuggingCaller() {
    ComplexComputation.DATA.set(new HashMap<String, Object>());
    new ComplexComputation().compute(...);
    Object intermediate = ComplexComputation.DATA.get().get("intermediate");
}
0 голосов
/ 07 июня 2010

Я бы порекомендовал встроить контейнер сервлетов (Apache Tomcat или Jetty, мне больше нравится Tomcat) и создать набор сервлетов JSP / JSF для веб-интерфейса. Это решение позволит вам использовать все корпоративные технологии Java (например, JAAS) с вашим веб-интерфейсом и избежать повторного изобретения колеса.

Я бы оценил усилия по созданию такого решения с tomcat до 1 дня интенсивного копирования / вставки. После того, как скелет начинает дышать, сами веб-страницы можно создавать в визуальном инструменте Eclipse с помощью нескольких перетаскиваний мышью.

Соответствующие ссылки как вставлять кота 6 встраиваемая пристань Eclipse JSF Tools

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...