Forum Controls
Spotlight Features

The Rich Engineering Heritage Behind Dependency Injection

Andrew McVeigh takes us on a tour of the rich heritage behind dependency injection, what it represents, and tells us why its here to stay.

NetBeans 6: Matisse Updates

NetBeans 6 delivers great updates to the Matisse GUI builder. Spend a few minutes with Roman Strobl and get an expert briefing on what's new and what has changed.

Introduction to Groovy Part 3

In this, the third and final installation of Andres' Introduction to Groovy series, you learn about how Groovy handles variable numbers of arguments, named parameters, currying, and more about Groovy operators. Including, some new operators.

Easier Custom Components with Swing Fuse

Swing Fuse (actually just Fuse), is a framework designed to make it easier to create your own custom desktop components. In this article, Daniel Spiewak shows you how to get started and provides sample source code you can download.

Benchmark Analysis: Guice vs Spring

Willam Louth shows how he uses JXInsight Probes to investigate probable performance issues with code bases that he is not familiar with. He also highlights possible pitfalls in creating a benchmark, as well as in the analysis of results.
Replies: 4 - Pages: 1  
Threads: [ Previous | Next ]
  Click to reply to this thread Reply

JAXB Exam

At 11:56 AM on Jan 30, 2008, benediktSattler wrote:

Hello!

Today I looked at the XML exam section and wondered that there is no exam which covers JAXB. I think this would be a quite useful exam.
What are you thinking?

best regards
Benedikt Sattler
1 . At 4:00 AM on Jan 31, 2008, Amzad Basha wrote:
  Click to reply to this thread Reply

Re: JAXB Exam

Yes Benedikt.

Are you starting the preparation of wiki page of objectives? Once there is a wiki page, I may try to help you out.

thanks,
Amzad Basha.
2 . At 4:50 AM on Jan 31, 2008, benediktSattler wrote:
  Click to reply to this thread Reply

Re: JAXB Exam

Okay I will define the objectives.
I will do this in the next days, because I have many work.
best regards
3 . At 5:59 AM on Feb 15, 2008, benediktSattler wrote:
  Click to reply to this thread Reply

Re: JAXB Exam

Here is the first draft for the JAXB Exam.


JAXB 2.0 (25)
-----------

This exam is focused on the version 2.0 of the JAXB API.
This exam assumes that the exam taker has a good knowledge of
XML-Schemas and the XML- Technology. Most of the questions uses
Schemas, but there are not questions which covers schema details.
This is addressed in another exam.
Note that there are no questions about specific implementations.
Note that minimal XPath knowledge is required to define extern bindingdeclarations, but there should be no XPath specific questions on the exam.
There are only questions about features which are describes in the specifitcation
produced by:

General (1)
-----------
Describe the Schema-Compiler
Describe the Schema-Generator
Identify the two ways of unmarshalling: Structural and Flexible
Describe what a Binder Component can do.

Design (2)
----------
Describe the three ways of mapping schemas to the data model of an application.
out to in, meet in the middle, in to out
Identify the disadvantages and advantages of each of these ways.
Identify the advantages and disadvantages of flexible mapping of a xml document.
Identify the advantages and disadvantages of separating the xml processing layer from the business layer.

JAXB API Contents
-----------
Describe the responsibilites of the JAXBContext
Write code that instantiates and uses a JAXBContext correctly.
Identify the fact that a JAXBContext is very expensive to create and therefore threadsafe.

JAXBIntrospector (1)
Use the methods of the class to introspect JAXBObjects and be aware of
the impact of using a JAXBElement.

ObjectFactory (1)
Use the class ObjectFactory to create objects which currently resides in the table of the JAXBContext.
Identify the fact that the class ObjectFactory is created by the Schemacompiler.


Marshaller (2)
Write code that sets properties on the Marshaller
Obtain a Marshaller Component.
Write code that marshalls POJOS to XML files.
Write code that marshalls POJOS to other XML API's
Use the class JAXBElement to marshal objects which are not toplevel objects in the JAXBContext.

Unmarshaller (2)
Obtain a Unmarshaller Component programatically.
Write code to read POJOS from a XML file.
Write code to read POJOS from other XML API's
Write code to read POJOS from an URL object.
Use the JAXBElement to unmarshall objects from an XML file that uses type substituation.
Unmarshall POJOs that are not XMLRootElements
Unmarshall only parts of a xml document to POJOS.
Identify the behaviour of the Unmarshaller if it uses flexible marshalling.


Validation (2)
--------------
Use a Schema on both the Marshaller and the Unmarshaller component.
Write code that uses the class ValidationEvent to detect errors and failures.
Write code that defines own ValidationEventHandler components.
Identify the fact that a FATAL_ERROR should always lead to the cancelation of the processing process.
Write code that uses the Class ValidationEventCollector to collect events.

Callbacks (1)
-------------
Write code that inherits from the classes Unmarshaller.Listener and Marshaller.Listener
Write code that defines Listeners in the POJO classes that should be represented as XML.


Binder (1)
--------
Identify the abilities of the Binder Component.
Write code that uses the Binder Component to
* updateXML and updateJAXB
* marshall and unmarshalls both XMLRootElements and other Elements.
* uses the method getXMLNode and getJAXBNode

JAXBElement (1)
Use the methods
*isNil
*isGlobalScope
*isTypeSubstituated
*getName
*getScope
*getDeclaredType
to examine XML content representation at runtime.


XML-Scheme to Java (6)
----------------------------
Identify the two types of scheme bindingconfigurations :
* inline
* extern
and their advantages and disadvantages#
Identify the four scopes: global, scheme, element, component,
Identify which bindingdeclaration takes precedence if there are defined more than one on different scopes.

Write code that uses the methods of the class javax.xml.bind.DataTypeConverter
for converting types with the javaType bindingdeclaration.
Write code that defines own methods for the attributes parse/print of the javaType bindingdeclaration


use the bindingdeclarations:

jaxb:collectionType
jaxb:package
jaxb:class
jaxb:property
jaxb:javadoc
fixedAttributeAsConstantProperty
choiceContentProperty
typeSafeEnumBase
typeSafeEnumMemberName
enableJavaNamingConventions
generateElementClass
generateValueClass
localScoping
factoryMethod
elementName
generateElementProperty
baseType
javaType
typeSafeEnumClass
typeName


Java to Scheme (5)
------------------------

Use the following annotations to define mapping to a scheme from a JavaType.
XmlElement
XmlAttribute
XmlValue
XmlTransient
XmlAccessorOrder
XmlAccessorType
XmlElementRef
XmlRootElement
XmlType
XmlEnum
XmlEnumValue
XmlAnyAttribute
XmlAnyElement
XmlID
XmlIDREF
4 . At 1:13 PM on Feb 15, 2008, John Rizzo wrote:
  Click to reply to this thread Reply

Re: JAXB Exam

Sounds very good to me Benedikt.
Good Job !
JavaBlackBelt.com

thread.rss_message