bw-maven-plugin/src/main/java/fr/fastconnect/factory/tibco/bw/maven/packaging/ApplicationManagement.java
private void initApplication() throws JAXBException {
		jaxbContext = JAXBContext.newInstance(
				com.tibco.xmlns.applicationmanagement.ObjectFactory.class,
				com.tibco.xmlns.applicationmanagement.bw.ObjectFactory.class,
				com.tibco.xmlns.dd.ObjectFactory.class);

		Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
		Object o =  jaxbUnmarshaller.unmarshal(xmlFile);
		try {
			this.application = (ApplicationType) o;
		} catch (ClassCastException e) {
			// strange workaround: sometimes we get an ApplicationType object,
			// sometimes a JAXBElement<ApplicationType> object
			
			@SuppressWarnings("unchecked")
			JAXBElement<ApplicationType> j = (JAXBElement<ApplicationType>) o;
			this.application = j.getValue();
		}
	}
private void initApplication() throws JAXBException {
		jaxbContext = JAXBContext.newInstance(
				com.tibco.xmlns.applicationmanagement.ObjectFactory.class,
				com.tibco.xmlns.applicationmanagement.bw.ObjectFactory.class,
				com.tibco.xmlns.dd.ObjectFactory.class);

		Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
		Object o =  jaxbUnmarshaller.unmarshal(xmlFile);
		try {
			this.application = (ApplicationType) o;
		} catch (ClassCastException e) {
			// strange workaround: sometimes we get an ApplicationType object,
			// sometimes a JAXBElement<ApplicationType> object
			
			@SuppressWarnings("unchecked")
			JAXBElement<ApplicationType> j = (JAXBElement<ApplicationType>) o;
			this.application = j.getValue();
		}
	}
<p>
This will initialize the {@link ApplicationType} object which is a JAXB
representation of the "application" root-element of TIBCO XML Deployment
Descriptor files using the schema with
"http://www.tibco.com/xmlns/ApplicationManagement" namespace.
</p>

@throws JAXBException