Java XML & JAX*

  • Java Web Services at Sun
    Web services are Web based applications that use open, XML-based standards and transport protocols to exchange data with clients.
  • Java 6, as APIs de XML, Webservices e classloaders [Em Português]
    Por Paulo Silveira, em 2007-12-17, no Blog da Caelum Ensino e Soluções em Java.
  • APIs Java para XML [Em Português]
    Por Gustavo Link Federizzi, UFRGS, Brasil.
  • The J2EE 1.4 Tutorial
    Para Sun Java System Application Server Platform Edition 8.2, por Eric Armstrong et al., Dezembro 2005, Sun Microsystems.
    J2EE 1.4 Tutorial PDF.
    Chapter 2: Understanding XML, Chapter 4: Java API for XML Processing (XAJP), Chapter 5: Simple API for XML (SAX), Chapter 6: Document Object Model (DOM), Chapter 7: Extensible Stylesheet Language Transformations (XSL, XSLT, XPath).
  • JAXP Referece Implementation
    The JAXP Reference Implementation project is part of Project GlassFish and is in the JWSDP subcommunity on Web Services and XML at java.net. This project develops and evolves the code base for the reference implementation of the JAXP specification. The current code base supports JAXP 1.3 and 1.4 and the project will track future versions of the JAXP specifications.
  • XML Parser Benchmarks: Part 1
    Article by Matthias Farwick, Michael Hafner. 2007-05-10. O'Reilly XML.com.
    Tested Event-Driven Parsers: LIBXML2 Stream Pull-Parser + SAX-like 2.6.27 (C), Java 1.5 Default SAX (Java), Woodstox StAX Pull-Parser 3.1.0 (Java), Sun SJSXP StAX Pull-Parser 1.0-b26 [shipped with the Java 6 SDK] (Java), BEA StAX implementation 1.1.2 (Java), Javolution StAX-like implementation 4.0 (Java), Oracle StAX implementation XDK 10.1.0.1 (Java).
    XML Parser Benchmarks: Part 2, 2007-05-16. Tested Object Model Parsers: LIBXML2 Tree 2.6.27 (C), Java 1.5 Default DOM (Java), Apache AXIOM Java 1.1.2, C 0.96 (Java & C), DOM4J 1.6.1 (Java), JDOM 1.0 (Java), Oracle XDK DOM implementation (C).
  • XProc - XML Pipeline Processor
    This project is an XML Pipeline Processor, an implementation of XProc: An XML Pipeline Language defined by the XML Processing Model Working Group at the W3C.
  • Introduction to XML and XML With Java
    Este pequeno tutorial introduz a você os conceitos básicos de XML e DOM/SAX, usando o parser Xerces em Java para gerar e interpretar XML.
  • Kohsuke Kawaguchi's Blog
    Kohsuke Kawaguchi é um engenheiro staff na Sun Microsystems. Ele tem trabalhado em linguagens XML e XML schema desde 2001, em particular RELAX NG, W3C XML Schema, JAXB, e JAXP. Ele também mantém vários projetos em java.net.
  • A simple way to read an XML file in Java
    Por Kiran Pai, Índia, em Developer Fusion. Utiliza JAXP DOM.
  • JAXB for simple Java-XML serialization
    Por Teera, Sun, 2007-09-02. Utiliza JAXB.
  • Qual a relação entre Xerces e JAXP?
    JAXP is a set of interfaces and Xerces is one of JAXP implementations. A Java API for XML Processing (JAXP) permite a aplicações interpretar e transformar documentos XML, usando DOM, SAX e XSLT.
    Xerces, do Projeto XML Apache, é uma ótima e muito usada implementação do padrão JAXP, assim como atualmente é o parser JAXP default. A Sun recomenda que todo processamento de XML em Java deve usar a API JAXP, que por sua vez usa variáveis de ambiente para determinar qual implementação de parser usar.
  • Streaming API for XML (StAX)
    Java Specification Request JSR-173.
  • Apache XML Project
    Apache XML Project objetiva soluções de qualidade comercial baseadas em padrões XML, desenvolvidas de forma aberta e cooperativa, bem como prover feedback às entidades de padronização (como IETF e W3C) sob uma perspectiva de implementação.
    • Xerces: parsers XML em Java e C++ (mais wrappers Perl e COM), provê implementações de APIs XML padrão: Java API for XML Processing (JAXP), Document Object Model (DOM), Simple API for XML (SAX); além da Xerces Native Interface (XNI) interna. Xerces2 Java (Xerces-J), Xerces C++, Xerces Perl (XML::Xerces).
    • Xalan: XSL stylesheet processors in Java & C++. Xalan-Java, Xalan C++.
    • FOP: XSL Formatting Object processor in Java.
    • Batik: Java toolkit for Scalable Vector Graphics (SVG).
    • AxKit, Forrest, Xindice.
  • Simple Framework
    Simple XML configuration framework: um framework de alto desempenho para serialização e configuração XML em Java. Suporta Java SE 5 (requer StAX) e 6. Código aberto e livre sob licença LGPL.
  • Apache Commons - Componentes XML
    Componentes Java reusáveis, integrantes do projeto Apache Commons, para diversos usos que lidam com XML.
    • Betwixt
      Serviços para mapear JavaBeans para documentos XML, e vice versa.
    • Digester
      Utilitário para mapeamento entre XML e objeto Java.
    • JXPath
      Define um interpretador simples para a linguagem de expressão XPath. JXPath aplica expressões XPath a grafos de objetos de toda natureza: JavaBeans, Maps, Servlet contexts, DOM etc., incluindo combinações destes. XPath é pradronizado pelo W3C e usado tanto em XSLT quanto XPointer.
    • SCXML
      Implementação da especificação State Chart XML que visa criar e manter um mecanismo Java SCXML. É capaz de executar uma máquina de estados definida em um documento SCXML, e abstrair as interfaces de ambiente.
    • Jelly
      Mecanismo de roteirização (scripting) e processamento baseado em XML.
    • Configuration
      Leitura de arquivos de configuração/preferências em vários formatos, inclusive XML.
  • Processing XML with Java
    By Elliotte Rusty Harold, 2001-2002. A complete tutorial about writing Java programs that read and write XML documents. This is the most comprehensive and up-to-date book about integrating XML with Java (and vice versa) you can buy. It contains over 1000 pages of detailed information on SAX, DOM, JDOM, JAXP, TrAX, XPath, XSLT, SOAP, and lots of other juicy acronyms.
  • The Castor Project
    Castor is an Open Source data binding framework for Java[tm]. It's the shortest path between Java objects, XML documents and relational tables. Castor provides Java-to-XML binding, Java-to-SQL persistence, and more.
  • Apache Cocoon
    Cocoon é um framework de desenvolvimento web baseado em XML. Apache Lenya é um Sistema de Gerenciamento de Conteúdo (CMS) código-aberto, baseado em Java e construído sobre Cocoon. Eles são baseados em padrões abertos como XML e XSLT.
  • Cocoon Center
    Este site objetiva prover tutoriais, como-fazer'es, guias de boas práticas e outras informações não cobertas pela documentação oficial do Cocoon. Ele é direcionado principalmente para novos usuários do Cocoon, mas se você já está trabalhando com Cocoon há algum tempo pode encontrar alguma informação útil aqui, também.
  • JDOM
    JDOM Project mission is to build a complete, Java-based solution for accessing, manipulating, and outputting XML data from Java code. JDOM é atualmente uma proposta de especificação (JSR) para a Plataforma Java oficial no JCP. Fundadores e gerentes do Projeto JDOM: Jason Hunter (autor de "Java Servlet Programming" e editor de servlets.com) e Brett McLaughlin (autor de "Java and XML" e editor de newInstance.com).
  • dom4j: the flexible XML framework for Java
    dom4j is an easy to use, open source library for working with XML, XPath and XSLT on the Java platform using the Java Collections Framework and with full support for DOM, SAX and JAXP.
    Projeto SourceForge: dom4j.
  • Embedded Java and XML - MinML
    MinML2 is a small footprint namespace aware minimal XML parser with SAX2 support. Open source software available under a BSD style licence.
  • Piccolo XML Parser for Java
    Projeto de software livre por Yuval Oren, em SourceForge.
  • xmltools: Adding Source Highlighting to XHTML
    xmltools é um utilitário simples para apresentar código fonte com destaque de sintaxe usando XHTML. Ele atualmente supporta: Java, C/C++, Prolog, Perl, PHP, Python, flex, ChangeLog, Ruby. Por Kyle F. Downey, Amber Archer Open Source.

Java Web Services (WS) & Sun WSDP

O Sun Java Web Services Developer Pack (WSDP) é um aglomerado de interfaces (APIs) para uso de XML em Java, assim como é o JDBC para acesso a bancos de dados.