Nyheder og Jobs

Effective XML: Leveraging JAXB and SDO

Jeg (Jesper) fulgte op på min XML dødsdrift med en session om JAXB og SDO, som på mange måde er sammenlignelige:
Oprindelse og anvendelse:
  • JAXB er spec + referenceimpl med input fra XmlBeans, EMF, TopLink, etc.
  • SDO kommer fra IBM og BEA
  • XML “behandling” skal kunne spille sammen med en lang række teknologier: JPA, JAX-WS, JAX-RS, SCA
  • JAXB 2.0 dækker HELE schema, det var en fejl af 1.0 ikke gjorde
  • SDO er “løsere” og har en “map-agtig” datamodel.
De kan også bruges til lidt forskellige ting:
  • SDO har metadata i sig, JXB bruger Java reflection.
  • SDO har en “open” måde at arbejde på hvor man kan bøje schemaet hvis man har dele som ikke bruger helt samme schema.
  • SDO har også change tracking, som kan bruges til at sende optimale ændringer
På køretidspunktet er der lidt flere forskelle:
  • JAXB runtim er ret kortfattet. JAXB har infoset preservation! Det vidste jeg ikke!
  • SDO runtimes er ikke helt så udskiftelige.
Scenarier:
  • Data Access Service: Brug én klasse til at mappe til både JPA og XML.
  • Det er IKKE painless: Entitieter er bare ikke dokumenter, og omvendt

Der er under Eclipselink hatten både en JAXB runtime med udvidelser (Moxy) og en SDO runtime.

Plus: Dygtig mand, der forklarer ud fra den teknologi, han selv har bygget.

Minus: Når alt hvad man har er en hammer…