Module org.jooq

Class MiniJAXB

java.lang.Object
org.jooq.util.jaxb.tools.MiniJAXB

@Internal public final class MiniJAXB extends Object
This class allows for mashalling / unmarshalling XML content to jOOQ configuration objects.

With jOOQ 3.12, the JAXB dependency has been removed in favour of this home grown solution. Due to the modularisation that happened with JDK 9+ and the removal of JAXB from the JDK 11+, it is unreasonable to leave the burden of properly configuring transitive JAXB dependency to jOOQ users.

Author:
Lukas Eder
  • Constructor Details

    • MiniJAXB

      public MiniJAXB()
  • Method Details

    • marshal

      public static String marshal(XMLAppendable object)
    • marshal

      public static void marshal(XMLAppendable object, OutputStream out)
    • marshal

      public static void marshal(XMLAppendable object, Writer out)
    • unmarshal

      public static <T extends XMLAppendable> T unmarshal(Reader reader, Class<T> type)
    • unmarshal

      public static <T extends XMLAppendable> T unmarshal(InputStream in, Class<T> type)
    • unmarshal

      public static <T extends XMLAppendable> T unmarshal(String xml, Class<T> type)
    • unmarshal

      public static <T extends XMLAppendable> T unmarshal(File xml, Class<T> type)
    • append

      public static <T> T append(T first, T second)
      Appends a second JAXB annotated object to a first one using Maven's combine.children="append" semantics.
      Returns:
      The modified first argument.