Как получить сообщения регистратора, отображаемые в IDE, с Java на интерфейс Vue

#java #spring #spring-boot #vue.js #slf4j

Вопрос:

Вопрос:

Я хотел бы знать, как я могу получить сообщения регистратора, отображаемые в Java IDE, для интерфейсных веб-приложений, чтобы пользователи могли знать различные сообщения регистратора.

Фон:

Я разрабатываю веб-приложение, используя Vuejs его как внешний интерфейс и Java как серверную службу. У меня есть textarea место, где пользователи могут предоставлять XML данные. Эти данные отправляются на Java серверную часть, где они будут проверены XSD Schema , и с помощью этого добавляются различные другие вещи и соответствующие LOG сообщения Slf4j Log . Кроме того, некоторые данные возвращаются Java Backend Service .

Я могу получить returned Data и Exception от моего Java внутри VUEJS вызова, но Log сообщения отображаются только в моем Java IDE IntelliJ , и я не понимаю, как получить эти данные также в VUEJS вызове.

Я хотел бы Log также отображать сообщения пользователю, чтобы он мог понять, что происходит в бэкэнде.

Я много пытался искать, но не мог понять, возможно ли это или, если возможно, как. Может кто-нибудь, пожалуйста, помочь мне в этом?

Ниже приведен пример кода, в котором используется VuejS и Springboot который вызывает мой Java Backend Service :

 <textarea class="form-control" v-model="xmlEvents" ref="xmlEvents" @input="convertToJSON()" placeholder="XML Data"></textarea>
 

Мой призыв к весенней загрузке:

 methods: {
    convertToJSON() {
        ConverterService.convertToJson(this.xmlEvents)
          .then((response) => {
            if (response.status == 200) {
              this.jsonEvents = JSON.stringify(response.data, undefined, "t");
            }
          })
          .catch((error) => {
            this.jsonEvents = error.response.data.detail;
          });
    } 
}
 

Моя служба:

 import http from "../http-common";

class ConverterService {
  //Method to convert the XML events to JSON
  convertToJson(data) {
    return http.post("/jsonConverter", data);
  }
}

export default new ConverterService();
 

Мое приложение для весенней загрузки:

     @PostMapping("/jsonConverter")
    public String convertToJson(@RequestBody String xmlEvents) throws ConverterException {
        try {
            final InputStream xmlStream = new ByteArrayInputStream(xmlEvents.getBytes(StandardCharsets.UTF_8));
            final ByteArrayOutputStream jsonOutput = new ByteArrayOutputStream();
            new XmlToJsonConverter().convert(xmlStream);
            return new String(jsonOutput.toByteArray());
        } catch (Exception exception) {
            throw new ConverterException(exception.getMessage());
        }
    }
 

Все, что я хотел бы знать, — это как получать Log сообщения, которые отображаются в Console моем IntelliJ IDE вызове в пределах моего VueJS вызова, вместе с ответом, который отправляется на запрос вызова.

Комментарии:

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

2. @Stultuske Спасибо за ответ. Я согласен, но Log сообщения, добавленные в Java приложение, имеют отношение к пользователю, поэтому я хотел бы получить их и показать в интерфейсе. Сообщения журнала связаны с тем, соответствует ли XML недопустимым записям схемы и т.д. Для них нет необходимости создавать исключения, поэтому мы используем сообщения журнала. Я хотел бы показать это в интерфейсе, чтобы пользователи знали об этом. Есть ли способ достичь этого?

3. Почему бы не обрабатывать исключения и не отправлять удобные для пользователя сообщения об ошибках вашему клиенту? журналы не предназначены для совместного использования с клиентами/пользователями.

4. @BATMAN_2008 отображение их во внешнем интерфейсе сильно отличается от отображения их в консоли/IDE

5. @Mo_ — Спасибо за ответ. На самом деле, это не Exceptions совсем Warning так . У меня много Exceptions чего есть в коде, и я могу получить доступ и показать их с помощью Exception Handling approach , но я также хотел бы показать пользователю Warnings , что могло произойти во время выполнения. Они Warnings показаны в Java IDE качестве Log Messages , поэтому я также хотел бы получить к ним доступ Log Messages во время моего Java Backend call и показать их пользователю.