Запись XML

Этот раздел перенесён из документации Camunda 7 и в дальнейшем будет доработан с учётом особенностей OpenBPM Engine

Формат данных XML поддерживает запись XML в строки (String), потоки вывода (OutputStream) и объекты записи (Writer).

Запись в строку

import static io.openbpm.spin.Spin.XML;
import io.openbpm.spin.xml.SpinXmlElement;

// Создаём XML-элемент
SpinXmlElement element = XML("<root id=\"test\"/>");

String xml = element.toString();

String value = element.attr("id").value();

Запись в OutputStream

import static io.openbpm.spin.Spin.XML;
import io.openbpm.spin.xml.SpinXmlElement;
import io.openbpm.spin.xml.SpinXmlAttribute;

// Создаём XML-элемент
SpinXmlElement element = XML("<root id=\"test\"/>");

try {

  // Определяем поток вывода
  OutputStream outputStream = System.out;

  // Оборачиваем поток вывода в Writer
  OutputStreamWriter outputStreamWriter = new OutputStreamWriter(outputStream);

  // Записываем элемент в Writer
  element.writeToWriter(outputStreamWriter);

  // Получаем атрибут элемента
  SpinXmlAttribute attr = element.attr("id");

  // Записываем значение атрибута в Writer
  attr.writeToWriter(outputStreamWriter);

  // Завершаем поток вывода
  outputStreamWriter.write("\n");

  // Закрываем поток вывода и Writer
  outputStreamWriter.close();

} catch (IOException e) {
  // Обработка исключения при необходимости
}

Запись в Writer

import static io.openbpm.spin.Spin.XML;
import io.openbpm.spin.xml.SpinXmlElement;
import io.openbpm.spin.xml.SpinXmlAttribute;

// Создаём XML-элемент
SpinXmlElement element = XML("<root id=\"test\"/>");

// Создаём StringWriter
StringWriter writer = new StringWriter();

// Записываем элемент в Writer
element.writeToWriter(writer);

// Получаем атрибут элемента
SpinXmlAttribute attr = element.attr("id");

// Записываем значение атрибута в Writer
attr.writeToWriter(writer);

Лицензия и атрибуция

Эта документация была создана на базе материала "Camunda 7 Docs" от Camunda, находится под лицензией Creative Commons Attribution-ShareAlike 3.0 Unported License .

Оригинал документации: https://docs.camunda.org