Search in sources :

Example 6 with ParamValue$JAXB.writeParamValue

use of org.apache.openejb.jee.ParamValue$JAXB.writeParamValue in project tomee by apache.

the class ConfigurationFactory method toHandlerChainInfo.

public static List<HandlerChainInfo> toHandlerChainInfo(final HandlerChains chains) {
    final List<HandlerChainInfo> handlerChains = new ArrayList<HandlerChainInfo>();
    if (chains == null) {
        return handlerChains;
    }
    for (final HandlerChain handlerChain : chains.getHandlerChain()) {
        final HandlerChainInfo handlerChainInfo = new HandlerChainInfo();
        handlerChainInfo.serviceNamePattern = handlerChain.getServiceNamePattern();
        handlerChainInfo.portNamePattern = handlerChain.getPortNamePattern();
        handlerChainInfo.protocolBindings.addAll(handlerChain.getProtocolBindings());
        for (final Handler handler : handlerChain.getHandler()) {
            final HandlerInfo handlerInfo = new HandlerInfo();
            handlerInfo.handlerName = handler.getHandlerName();
            handlerInfo.handlerClass = handler.getHandlerClass();
            handlerInfo.soapHeaders.addAll(handler.getSoapHeader());
            handlerInfo.soapRoles.addAll(handler.getSoapRole());
            for (final ParamValue param : handler.getInitParam()) {
                handlerInfo.initParams.setProperty(param.getParamName(), param.getParamValue());
            }
            handlerChainInfo.handlers.add(handlerInfo);
        }
        handlerChains.add(handlerChainInfo);
    }
    return handlerChains;
}
Also used : HandlerChain(org.apache.openejb.jee.HandlerChain) HandlerChainInfo(org.apache.openejb.assembler.classic.HandlerChainInfo) ArrayList(java.util.ArrayList) Handler(org.apache.openejb.jee.Handler) ParamValue(org.apache.openejb.jee.ParamValue) HandlerInfo(org.apache.openejb.assembler.classic.HandlerInfo)

Example 7 with ParamValue$JAXB.writeParamValue

use of org.apache.openejb.jee.ParamValue$JAXB.writeParamValue in project tomee by apache.

the class Filter$JAXB method _write.

public static final void _write(final XoXMLStreamWriter writer, final Filter filter, RuntimeContext context) throws Exception {
    if (filter == null) {
        writer.writeXsiNil();
        return;
    }
    if (context == null) {
        context = new RuntimeContext();
    }
    final String prefix = writer.getUniquePrefix("http://java.sun.com/xml/ns/javaee");
    if (Filter.class != filter.getClass()) {
        context.unexpectedSubclass(writer, filter, Filter.class);
        return;
    }
    context.beforeMarshal(filter, LifecycleCallback.NONE);
    // ATTRIBUTE: id
    final String idRaw = filter.id;
    if (idRaw != null) {
        String id = null;
        try {
            id = Adapters.collapsedStringAdapterAdapter.marshal(idRaw);
        } catch (final Exception e) {
            context.xmlAdapterError(filter, "id", CollapsedStringAdapter.class, String.class, String.class, e);
        }
        writer.writeAttribute("", "", "id", id);
    }
    // ELEMENT: descriptions
    Text[] descriptions = null;
    try {
        descriptions = filter.getDescriptions();
    } catch (final Exception e) {
        context.getterError(filter, "descriptions", Filter.class, "getDescriptions", e);
    }
    if (descriptions != null) {
        for (final Text descriptionsItem : descriptions) {
            if (descriptionsItem != null) {
                writer.writeStartElement(prefix, "description", "http://java.sun.com/xml/ns/javaee");
                writeText(writer, descriptionsItem, context);
                writer.writeEndElement();
            } else {
                context.unexpectedNullValue(filter, "descriptions");
            }
        }
    }
    // ELEMENT: displayNames
    Text[] displayNames = null;
    try {
        displayNames = filter.getDisplayNames();
    } catch (final Exception e) {
        context.getterError(filter, "displayNames", Filter.class, "getDisplayNames", e);
    }
    if (displayNames != null) {
        for (final Text displayNamesItem : displayNames) {
            if (displayNamesItem != null) {
                writer.writeStartElement(prefix, "display-name", "http://java.sun.com/xml/ns/javaee");
                writeText(writer, displayNamesItem, context);
                writer.writeEndElement();
            } else {
                context.unexpectedNullValue(filter, "displayNames");
            }
        }
    }
    // ELEMENT: icon
    final LocalCollection<Icon> icon = filter.icon;
    if (icon != null) {
        for (final Icon iconItem : icon) {
            if (iconItem != null) {
                writer.writeStartElement(prefix, "icon", "http://java.sun.com/xml/ns/javaee");
                writeIcon(writer, iconItem, context);
                writer.writeEndElement();
            } else {
                context.unexpectedNullValue(filter, "icon");
            }
        }
    }
    // ELEMENT: filterName
    final String filterNameRaw = filter.filterName;
    String filterName = null;
    try {
        filterName = Adapters.collapsedStringAdapterAdapter.marshal(filterNameRaw);
    } catch (final Exception e) {
        context.xmlAdapterError(filter, "filterName", CollapsedStringAdapter.class, String.class, String.class, e);
    }
    if (filterName != null) {
        writer.writeStartElement(prefix, "filter-name", "http://java.sun.com/xml/ns/javaee");
        writer.writeCharacters(filterName);
        writer.writeEndElement();
    } else {
        context.unexpectedNullValue(filter, "filterName");
    }
    // ELEMENT: filterClass
    final String filterClassRaw = filter.filterClass;
    String filterClass = null;
    try {
        filterClass = Adapters.collapsedStringAdapterAdapter.marshal(filterClassRaw);
    } catch (final Exception e) {
        context.xmlAdapterError(filter, "filterClass", CollapsedStringAdapter.class, String.class, String.class, e);
    }
    if (filterClass != null) {
        writer.writeStartElement(prefix, "filter-class", "http://java.sun.com/xml/ns/javaee");
        writer.writeCharacters(filterClass);
        writer.writeEndElement();
    } else {
        context.unexpectedNullValue(filter, "filterClass");
    }
    // ELEMENT: asyncSupported
    final Boolean asyncSupported = filter.asyncSupported;
    writer.writeStartElement(prefix, "async-supported", "http://java.sun.com/xml/ns/javaee");
    writer.writeCharacters(Boolean.toString(asyncSupported));
    writer.writeEndElement();
    // ELEMENT: initParam
    final List<ParamValue> initParam = filter.initParam;
    if (initParam != null) {
        for (final ParamValue initParamItem : initParam) {
            if (initParamItem != null) {
                writer.writeStartElement(prefix, "init-param", "http://java.sun.com/xml/ns/javaee");
                writeParamValue(writer, initParamItem, context);
                writer.writeEndElement();
            }
        }
    }
    context.afterMarshal(filter, LifecycleCallback.NONE);
}
Also used : CollapsedStringAdapter(javax.xml.bind.annotation.adapters.CollapsedStringAdapter) ParamValue$JAXB.readParamValue(org.apache.openejb.jee.ParamValue$JAXB.readParamValue) ParamValue$JAXB.writeParamValue(org.apache.openejb.jee.ParamValue$JAXB.writeParamValue) Text$JAXB.readText(org.apache.openejb.jee.Text$JAXB.readText) Text$JAXB.writeText(org.apache.openejb.jee.Text$JAXB.writeText) Icon$JAXB.readIcon(org.apache.openejb.jee.Icon$JAXB.readIcon) Icon$JAXB.writeIcon(org.apache.openejb.jee.Icon$JAXB.writeIcon) RuntimeContext(org.metatype.sxc.jaxb.RuntimeContext)

Example 8 with ParamValue$JAXB.writeParamValue

use of org.apache.openejb.jee.ParamValue$JAXB.writeParamValue in project tomee by apache.

the class Filter$JAXB method _read.

public static final Filter _read(final XoXMLStreamReader reader, RuntimeContext context) throws Exception {
    // Check for xsi:nil
    if (reader.isXsiNil()) {
        return null;
    }
    if (context == null) {
        context = new RuntimeContext();
    }
    final Filter filter = new Filter();
    context.beforeUnmarshal(filter, LifecycleCallback.NONE);
    ArrayList<Text> descriptions = null;
    ArrayList<Text> displayNames = null;
    LocalCollection<Icon> icon = null;
    List<ParamValue> initParam = null;
    // Check xsi:type
    final QName xsiType = reader.getXsiType();
    if (xsiType != null) {
        if (("filterType" != xsiType.getLocalPart()) || ("http://java.sun.com/xml/ns/javaee" != xsiType.getNamespaceURI())) {
            return context.unexpectedXsiType(reader, Filter.class);
        }
    }
    // Read attributes
    for (final Attribute attribute : reader.getAttributes()) {
        if (("id" == attribute.getLocalName()) && (("" == attribute.getNamespace()) || (attribute.getNamespace() == null))) {
            // ATTRIBUTE: id
            final String id = Adapters.collapsedStringAdapterAdapter.unmarshal(attribute.getValue());
            context.addXmlId(reader, id, filter);
            filter.id = id;
        } else if (XMLConstants.W3C_XML_SCHEMA_INSTANCE_NS_URI != attribute.getNamespace()) {
            context.unexpectedAttribute(attribute, new QName("", "id"));
        }
    }
    // Read elements
    for (final XoXMLStreamReader elementReader : reader.getChildElements()) {
        if (("description" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: descriptions
            final Text descriptionsItem = readText(elementReader, context);
            if (descriptions == null) {
                descriptions = new ArrayList<Text>();
            }
            descriptions.add(descriptionsItem);
        } else if (("display-name" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: displayNames
            final Text displayNamesItem = readText(elementReader, context);
            if (displayNames == null) {
                displayNames = new ArrayList<Text>();
            }
            displayNames.add(displayNamesItem);
        } else if (("icon" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: icon
            final Icon iconItem = readIcon(elementReader, context);
            if (icon == null) {
                icon = filter.icon;
                if (icon != null) {
                    icon.clear();
                } else {
                    icon = new LocalCollection<Icon>();
                }
            }
            icon.add(iconItem);
        } else if (("filter-name" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: filterName
            final String filterNameRaw = elementReader.getElementAsString();
            final String filterName;
            try {
                filterName = Adapters.collapsedStringAdapterAdapter.unmarshal(filterNameRaw);
            } catch (final Exception e) {
                context.xmlAdapterError(elementReader, CollapsedStringAdapter.class, String.class, String.class, e);
                continue;
            }
            filter.filterName = filterName;
        } else if (("filter-class" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: filterClass
            final String filterClassRaw = elementReader.getElementAsString();
            final String filterClass;
            try {
                filterClass = Adapters.collapsedStringAdapterAdapter.unmarshal(filterClassRaw);
            } catch (final Exception e) {
                context.xmlAdapterError(elementReader, CollapsedStringAdapter.class, String.class, String.class, e);
                continue;
            }
            filter.filterClass = filterClass;
        } else if (("async-supported" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: asyncSupported
            final Boolean asyncSupported = ("1".equals(elementReader.getElementAsString()) || "true".equals(elementReader.getElementAsString()));
            filter.asyncSupported = asyncSupported;
        } else if (("init-param" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: initParam
            final ParamValue initParamItem = readParamValue(elementReader, context);
            if (initParam == null) {
                initParam = filter.initParam;
                if (initParam != null) {
                    initParam.clear();
                } else {
                    initParam = new ArrayList<ParamValue>();
                }
            }
            initParam.add(initParamItem);
        } else {
            context.unexpectedElement(elementReader, new QName("http://java.sun.com/xml/ns/javaee", "description"), new QName("http://java.sun.com/xml/ns/javaee", "display-name"), new QName("http://java.sun.com/xml/ns/javaee", "icon"), new QName("http://java.sun.com/xml/ns/javaee", "filter-name"), new QName("http://java.sun.com/xml/ns/javaee", "filter-class"), new QName("http://java.sun.com/xml/ns/javaee", "async-supported"), new QName("http://java.sun.com/xml/ns/javaee", "init-param"));
        }
    }
    if (descriptions != null) {
        try {
            filter.setDescriptions(descriptions.toArray(new Text[descriptions.size()]));
        } catch (final Exception e) {
            context.setterError(reader, Filter.class, "setDescriptions", Text[].class, e);
        }
    }
    if (displayNames != null) {
        try {
            filter.setDisplayNames(displayNames.toArray(new Text[displayNames.size()]));
        } catch (final Exception e) {
            context.setterError(reader, Filter.class, "setDisplayNames", Text[].class, e);
        }
    }
    if (icon != null) {
        filter.icon = icon;
    }
    if (initParam != null) {
        filter.initParam = initParam;
    }
    context.afterUnmarshal(filter, LifecycleCallback.NONE);
    return filter;
}
Also used : CollapsedStringAdapter(javax.xml.bind.annotation.adapters.CollapsedStringAdapter) Attribute(org.metatype.sxc.util.Attribute) QName(javax.xml.namespace.QName) ArrayList(java.util.ArrayList) ParamValue$JAXB.readParamValue(org.apache.openejb.jee.ParamValue$JAXB.readParamValue) ParamValue$JAXB.writeParamValue(org.apache.openejb.jee.ParamValue$JAXB.writeParamValue) Text$JAXB.readText(org.apache.openejb.jee.Text$JAXB.readText) Text$JAXB.writeText(org.apache.openejb.jee.Text$JAXB.writeText) Icon$JAXB.readIcon(org.apache.openejb.jee.Icon$JAXB.readIcon) Icon$JAXB.writeIcon(org.apache.openejb.jee.Icon$JAXB.writeIcon) RuntimeContext(org.metatype.sxc.jaxb.RuntimeContext) XoXMLStreamReader(org.metatype.sxc.util.XoXMLStreamReader)

Example 9 with ParamValue$JAXB.writeParamValue

use of org.apache.openejb.jee.ParamValue$JAXB.writeParamValue in project tomee by apache.

the class Handler$JAXB method _read.

public static final Handler _read(final XoXMLStreamReader reader, RuntimeContext context) throws Exception {
    // Check for xsi:nil
    if (reader.isXsiNil()) {
        return null;
    }
    if (context == null) {
        context = new RuntimeContext();
    }
    final Handler handler = new Handler();
    context.beforeUnmarshal(handler, LifecycleCallback.NONE);
    ArrayList<Text> descriptions = null;
    ArrayList<Text> displayNames = null;
    LocalCollection<Icon> icon = null;
    List<ParamValue> initParam = null;
    List<QName> soapHeader = null;
    List<String> soapRole = null;
    List<String> portName = null;
    // Check xsi:type
    final QName xsiType = reader.getXsiType();
    if (xsiType != null) {
        if (("handlerType" != xsiType.getLocalPart()) || ("http://java.sun.com/xml/ns/javaee" != xsiType.getNamespaceURI())) {
            return context.unexpectedXsiType(reader, Handler.class);
        }
    }
    // Read attributes
    for (final Attribute attribute : reader.getAttributes()) {
        if (("id" == attribute.getLocalName()) && (("" == attribute.getNamespace()) || (attribute.getNamespace() == null))) {
            // ATTRIBUTE: id
            final String id = Adapters.collapsedStringAdapterAdapter.unmarshal(attribute.getValue());
            context.addXmlId(reader, id, handler);
            handler.id = id;
        } else if (XMLConstants.W3C_XML_SCHEMA_INSTANCE_NS_URI != attribute.getNamespace()) {
            context.unexpectedAttribute(attribute, new QName("", "id"));
        }
    }
    // Read elements
    for (final XoXMLStreamReader elementReader : reader.getChildElements()) {
        if (("description" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: descriptions
            final Text descriptionsItem = readText(elementReader, context);
            if (descriptions == null) {
                descriptions = new ArrayList<Text>();
            }
            descriptions.add(descriptionsItem);
        } else if (("display-name" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: displayNames
            final Text displayNamesItem = readText(elementReader, context);
            if (displayNames == null) {
                displayNames = new ArrayList<Text>();
            }
            displayNames.add(displayNamesItem);
        } else if (("icon" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: icon
            final Icon iconItem = readIcon(elementReader, context);
            if (icon == null) {
                icon = handler.icon;
                if (icon != null) {
                    icon.clear();
                } else {
                    icon = new LocalCollection<Icon>();
                }
            }
            icon.add(iconItem);
        } else if (("handler-name" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: handlerName
            final String handlerNameRaw = elementReader.getElementAsString();
            final String handlerName;
            try {
                handlerName = Adapters.collapsedStringAdapterAdapter.unmarshal(handlerNameRaw);
            } catch (final Exception e) {
                context.xmlAdapterError(elementReader, CollapsedStringAdapter.class, String.class, String.class, e);
                continue;
            }
            handler.handlerName = handlerName;
        } else if (("handler-class" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: handlerClass
            final String handlerClassRaw = elementReader.getElementAsString();
            final String handlerClass;
            try {
                handlerClass = Adapters.collapsedStringAdapterAdapter.unmarshal(handlerClassRaw);
            } catch (final Exception e) {
                context.xmlAdapterError(elementReader, CollapsedStringAdapter.class, String.class, String.class, e);
                continue;
            }
            handler.handlerClass = handlerClass;
        } else if (("init-param" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: initParam
            final ParamValue initParamItem = readParamValue(elementReader, context);
            if (initParam == null) {
                initParam = handler.initParam;
                if (initParam != null) {
                    initParam.clear();
                } else {
                    initParam = new ArrayList<ParamValue>();
                }
            }
            initParam.add(initParamItem);
        } else if (("soap-header" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: soapHeader
            final QName soapHeaderItem = elementReader.getElementAsQName();
            if (soapHeader == null) {
                soapHeader = handler.soapHeader;
                if (soapHeader != null) {
                    soapHeader.clear();
                } else {
                    soapHeader = new ArrayList<QName>();
                }
            }
            soapHeader.add(soapHeaderItem);
        } else if (("soap-role" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: soapRole
            final String soapRoleItemRaw = elementReader.getElementAsString();
            final String soapRoleItem;
            try {
                soapRoleItem = Adapters.collapsedStringAdapterAdapter.unmarshal(soapRoleItemRaw);
            } catch (final Exception e) {
                context.xmlAdapterError(elementReader, CollapsedStringAdapter.class, String.class, String.class, e);
                continue;
            }
            if (soapRole == null) {
                soapRole = handler.soapRole;
                if (soapRole != null) {
                    soapRole.clear();
                } else {
                    soapRole = new ArrayList<String>();
                }
            }
            soapRole.add(soapRoleItem);
        } else if (("port-name" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: portName
            final String portNameItemRaw = elementReader.getElementAsString();
            final String portNameItem;
            try {
                portNameItem = Adapters.collapsedStringAdapterAdapter.unmarshal(portNameItemRaw);
            } catch (final Exception e) {
                context.xmlAdapterError(elementReader, CollapsedStringAdapter.class, String.class, String.class, e);
                continue;
            }
            if (portName == null) {
                portName = handler.portName;
                if (portName != null) {
                    portName.clear();
                } else {
                    portName = new ArrayList<String>();
                }
            }
            portName.add(portNameItem);
        } else {
            context.unexpectedElement(elementReader, new QName("http://java.sun.com/xml/ns/javaee", "description"), new QName("http://java.sun.com/xml/ns/javaee", "display-name"), new QName("http://java.sun.com/xml/ns/javaee", "icon"), new QName("http://java.sun.com/xml/ns/javaee", "handler-name"), new QName("http://java.sun.com/xml/ns/javaee", "handler-class"), new QName("http://java.sun.com/xml/ns/javaee", "init-param"), new QName("http://java.sun.com/xml/ns/javaee", "soap-header"), new QName("http://java.sun.com/xml/ns/javaee", "soap-role"), new QName("http://java.sun.com/xml/ns/javaee", "port-name"));
        }
    }
    if (descriptions != null) {
        try {
            handler.setDescriptions(descriptions.toArray(new Text[descriptions.size()]));
        } catch (final Exception e) {
            context.setterError(reader, Handler.class, "setDescriptions", Text[].class, e);
        }
    }
    if (displayNames != null) {
        try {
            handler.setDisplayNames(displayNames.toArray(new Text[displayNames.size()]));
        } catch (final Exception e) {
            context.setterError(reader, Handler.class, "setDisplayNames", Text[].class, e);
        }
    }
    if (icon != null) {
        handler.icon = icon;
    }
    if (initParam != null) {
        handler.initParam = initParam;
    }
    if (soapHeader != null) {
        handler.soapHeader = soapHeader;
    }
    if (soapRole != null) {
        handler.soapRole = soapRole;
    }
    if (portName != null) {
        handler.portName = portName;
    }
    context.afterUnmarshal(handler, LifecycleCallback.NONE);
    return handler;
}
Also used : CollapsedStringAdapter(javax.xml.bind.annotation.adapters.CollapsedStringAdapter) Attribute(org.metatype.sxc.util.Attribute) QName(javax.xml.namespace.QName) ArrayList(java.util.ArrayList) ParamValue$JAXB.readParamValue(org.apache.openejb.jee.ParamValue$JAXB.readParamValue) ParamValue$JAXB.writeParamValue(org.apache.openejb.jee.ParamValue$JAXB.writeParamValue) Text$JAXB.readText(org.apache.openejb.jee.Text$JAXB.readText) Text$JAXB.writeText(org.apache.openejb.jee.Text$JAXB.writeText) Icon$JAXB.readIcon(org.apache.openejb.jee.Icon$JAXB.readIcon) Icon$JAXB.writeIcon(org.apache.openejb.jee.Icon$JAXB.writeIcon) RuntimeContext(org.metatype.sxc.jaxb.RuntimeContext) XoXMLStreamReader(org.metatype.sxc.util.XoXMLStreamReader)

Example 10 with ParamValue$JAXB.writeParamValue

use of org.apache.openejb.jee.ParamValue$JAXB.writeParamValue in project tomee by apache.

the class WebApp$JAXB method _read.

public static final WebApp _read(final XoXMLStreamReader reader, RuntimeContext context) throws Exception {
    // Check for xsi:nil
    if (reader.isXsiNil()) {
        return null;
    }
    if (context == null) {
        context = new RuntimeContext();
    }
    final WebApp webApp = new WebApp();
    context.beforeUnmarshal(webApp, org.metatype.sxc.jaxb.LifecycleCallback.NONE);
    ArrayList<Text> descriptions = null;
    ArrayList<Text> displayNames = null;
    LocalCollection<Icon> icon = null;
    List<Empty> distributable = null;
    List<ParamValue> contextParam = null;
    List<Filter> filter = null;
    List<FilterMapping> filterMapping = null;
    List<Listener> listener = null;
    List<Servlet> servlet = null;
    List<ServletMapping> servletMapping = null;
    List<SessionConfig> sessionConfig = null;
    List<MimeMapping> mimeMapping = null;
    List<WelcomeFileList> welcomeFileList = null;
    List<ErrorPage> errorPage = null;
    List<JspConfig> jspConfig = null;
    List<SecurityConstraint> securityConstraint = null;
    List<LoginConfig> loginConfig = null;
    List<SecurityRole> securityRole = null;
    List<LocaleEncodingMappingList> localeEncodingMappingList = null;
    KeyedCollection<String, EnvEntry> envEntry = null;
    KeyedCollection<String, EjbRef> ejbRef = null;
    KeyedCollection<String, EjbLocalRef> ejbLocalRef = null;
    KeyedCollection<String, ServiceRef> serviceRef = null;
    KeyedCollection<String, ResourceRef> resourceRef = null;
    KeyedCollection<String, ResourceEnvRef> resourceEnvRef = null;
    KeyedCollection<String, MessageDestinationRef> messageDestinationRef = null;
    KeyedCollection<String, PersistenceContextRef> persistenceContextRef = null;
    KeyedCollection<String, PersistenceUnitRef> persistenceUnitRef = null;
    List<org.apache.openejb.jee.LifecycleCallback> postConstruct = null;
    List<org.apache.openejb.jee.LifecycleCallback> preDestroy = null;
    List<MessageDestination> messageDestination = null;
    KeyedCollection<String, DataSource> dataSource = null;
    KeyedCollection<String, JMSConnectionFactory> jmsConnectionFactories = null;
    // Check xsi:type
    final QName xsiType = reader.getXsiType();
    if (xsiType != null) {
        if (("web-appType" != xsiType.getLocalPart()) || ("http://java.sun.com/xml/ns/javaee" != xsiType.getNamespaceURI())) {
            return context.unexpectedXsiType(reader, WebApp.class);
        }
    }
    // Read attributes
    for (final Attribute attribute : reader.getAttributes()) {
        if (("id" == attribute.getLocalName()) && (("" == attribute.getNamespace()) || (attribute.getNamespace() == null))) {
            // ATTRIBUTE: id
            final String id = Adapters.collapsedStringAdapterAdapter.unmarshal(attribute.getValue());
            context.addXmlId(reader, id, webApp);
            webApp.id = id;
        } else if (("metadata-complete" == attribute.getLocalName()) && (("" == attribute.getNamespace()) || (attribute.getNamespace() == null))) {
            // ATTRIBUTE: metadataComplete
            final Boolean metadataComplete = ("1".equals(attribute.getValue()) || "true".equals(attribute.getValue()));
            webApp.metadataComplete = metadataComplete;
        } else if (("version" == attribute.getLocalName()) && (("" == attribute.getNamespace()) || (attribute.getNamespace() == null))) {
            // ATTRIBUTE: version
            webApp.version = Adapters.collapsedStringAdapterAdapter.unmarshal(attribute.getValue());
        } else if (XMLConstants.W3C_XML_SCHEMA_INSTANCE_NS_URI != attribute.getNamespace()) {
            context.unexpectedAttribute(attribute, new QName("", "id"), new QName("", "metadata-complete"), new QName("", "version"));
        }
    }
    // Read elements
    for (final XoXMLStreamReader elementReader : reader.getChildElements()) {
        if (("description" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: descriptions
            final Text descriptionsItem = readText(elementReader, context);
            if (descriptions == null) {
                descriptions = new ArrayList<Text>();
            }
            descriptions.add(descriptionsItem);
        } else if (("display-name" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: displayNames
            final Text displayNamesItem = readText(elementReader, context);
            if (displayNames == null) {
                displayNames = new ArrayList<Text>();
            }
            displayNames.add(displayNamesItem);
        } else if (("icon" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: icon
            final Icon iconItem = readIcon(elementReader, context);
            if (icon == null) {
                icon = webApp.icon;
                if (icon != null) {
                    icon.clear();
                } else {
                    icon = new LocalCollection<Icon>();
                }
            }
            icon.add(iconItem);
        } else if (("distributable" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: distributable
            final Empty distributableItem = readEmpty(elementReader, context);
            if (distributable == null) {
                distributable = webApp.distributable;
                if (distributable != null) {
                    distributable.clear();
                } else {
                    distributable = new ArrayList<Empty>();
                }
            }
            distributable.add(distributableItem);
        } else if (("context-param" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: contextParam
            final ParamValue contextParamItem = readParamValue(elementReader, context);
            if (contextParam == null) {
                contextParam = webApp.contextParam;
                if (contextParam != null) {
                    contextParam.clear();
                } else {
                    contextParam = new ArrayList<ParamValue>();
                }
            }
            contextParam.add(contextParamItem);
        } else if (("filter" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: filter
            final Filter filterItem = readFilter(elementReader, context);
            if (filter == null) {
                filter = webApp.filter;
                if (filter != null) {
                    filter.clear();
                } else {
                    filter = new ArrayList<Filter>();
                }
            }
            filter.add(filterItem);
        } else if (("filter-mapping" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: filterMapping
            final FilterMapping filterMappingItem = readFilterMapping(elementReader, context);
            if (filterMapping == null) {
                filterMapping = webApp.filterMapping;
                if (filterMapping != null) {
                    filterMapping.clear();
                } else {
                    filterMapping = new ArrayList<FilterMapping>();
                }
            }
            filterMapping.add(filterMappingItem);
        } else if (("listener" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: listener
            final Listener listenerItem = readListener(elementReader, context);
            if (listener == null) {
                listener = webApp.listener;
                if (listener != null) {
                    listener.clear();
                } else {
                    listener = new ArrayList<Listener>();
                }
            }
            listener.add(listenerItem);
        } else if (("servlet" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: servlet
            final Servlet servletItem = readServlet(elementReader, context);
            if (servlet == null) {
                servlet = webApp.servlet;
                if (servlet != null) {
                    servlet.clear();
                } else {
                    servlet = new ArrayList<Servlet>();
                }
            }
            servlet.add(servletItem);
        } else if (("servlet-mapping" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: servletMapping
            final ServletMapping servletMappingItem = readServletMapping(elementReader, context);
            if (servletMapping == null) {
                servletMapping = webApp.servletMapping;
                if (servletMapping != null) {
                    servletMapping.clear();
                } else {
                    servletMapping = new ArrayList<ServletMapping>();
                }
            }
            servletMapping.add(servletMappingItem);
        } else if (("session-config" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: sessionConfig
            final SessionConfig sessionConfigItem = readSessionConfig(elementReader, context);
            if (sessionConfig == null) {
                sessionConfig = webApp.sessionConfig;
                if (sessionConfig != null) {
                    sessionConfig.clear();
                } else {
                    sessionConfig = new ArrayList<SessionConfig>();
                }
            }
            sessionConfig.add(sessionConfigItem);
        } else if (("mime-mapping" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: mimeMapping
            final MimeMapping mimeMappingItem = readMimeMapping(elementReader, context);
            if (mimeMapping == null) {
                mimeMapping = webApp.mimeMapping;
                if (mimeMapping != null) {
                    mimeMapping.clear();
                } else {
                    mimeMapping = new ArrayList<MimeMapping>();
                }
            }
            mimeMapping.add(mimeMappingItem);
        } else if (("welcome-file-list" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: welcomeFileList
            final WelcomeFileList welcomeFileListItem = readWelcomeFileList(elementReader, context);
            if (welcomeFileList == null) {
                welcomeFileList = webApp.welcomeFileList;
                if (welcomeFileList != null) {
                    welcomeFileList.clear();
                } else {
                    welcomeFileList = new ArrayList<WelcomeFileList>();
                }
            }
            welcomeFileList.add(welcomeFileListItem);
        } else if (("error-page" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: errorPage
            final ErrorPage errorPageItem = readErrorPage(elementReader, context);
            if (errorPage == null) {
                errorPage = webApp.errorPage;
                if (errorPage != null) {
                    errorPage.clear();
                } else {
                    errorPage = new ArrayList<ErrorPage>();
                }
            }
            errorPage.add(errorPageItem);
        } else if (("taglib" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: taglib
            final Taglib taglib = readTaglib(elementReader, context);
            try {
                webApp.setTaglib(taglib);
            } catch (final Exception e) {
                context.setterError(reader, WebApp.class, "setTaglib", Taglib.class, e);
            }
        } else if (("jsp-config" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: jspConfig
            final JspConfig jspConfigItem = readJspConfig(elementReader, context);
            if (jspConfig == null) {
                jspConfig = webApp.jspConfig;
                if (jspConfig != null) {
                    jspConfig.clear();
                } else {
                    jspConfig = new ArrayList<JspConfig>();
                }
            }
            jspConfig.add(jspConfigItem);
        } else if (("security-constraint" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: securityConstraint
            final SecurityConstraint securityConstraintItem = readSecurityConstraint(elementReader, context);
            if (securityConstraint == null) {
                securityConstraint = webApp.securityConstraint;
                if (securityConstraint != null) {
                    securityConstraint.clear();
                } else {
                    securityConstraint = new ArrayList<SecurityConstraint>();
                }
            }
            securityConstraint.add(securityConstraintItem);
        } else if (("login-config" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: loginConfig
            final LoginConfig loginConfigItem = readLoginConfig(elementReader, context);
            if (loginConfig == null) {
                loginConfig = webApp.loginConfig;
                if (loginConfig != null) {
                    loginConfig.clear();
                } else {
                    loginConfig = new ArrayList<LoginConfig>();
                }
            }
            loginConfig.add(loginConfigItem);
        } else if (("security-role" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: securityRole
            final SecurityRole securityRoleItem = readSecurityRole(elementReader, context);
            if (securityRole == null) {
                securityRole = webApp.securityRole;
                if (securityRole != null) {
                    securityRole.clear();
                } else {
                    securityRole = new ArrayList<SecurityRole>();
                }
            }
            securityRole.add(securityRoleItem);
        } else if (("locale-encoding-mapping-list" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: localeEncodingMappingList
            final LocaleEncodingMappingList localeEncodingMappingListItem = readLocaleEncodingMappingList(elementReader, context);
            if (localeEncodingMappingList == null) {
                localeEncodingMappingList = webApp.localeEncodingMappingList;
                if (localeEncodingMappingList != null) {
                    localeEncodingMappingList.clear();
                } else {
                    localeEncodingMappingList = new ArrayList<LocaleEncodingMappingList>();
                }
            }
            localeEncodingMappingList.add(localeEncodingMappingListItem);
        } else if (("env-entry" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: envEntry
            final EnvEntry envEntryItem = readEnvEntry(elementReader, context);
            if (envEntry == null) {
                envEntry = webApp.envEntry;
                if (envEntry != null) {
                    envEntry.clear();
                } else {
                    envEntry = new KeyedCollection<String, EnvEntry>();
                }
            }
            envEntry.add(envEntryItem);
        } else if (("ejb-ref" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: ejbRef
            final EjbRef ejbRefItem = readEjbRef(elementReader, context);
            if (ejbRef == null) {
                ejbRef = webApp.ejbRef;
                if (ejbRef != null) {
                    ejbRef.clear();
                } else {
                    ejbRef = new KeyedCollection<String, EjbRef>();
                }
            }
            ejbRef.add(ejbRefItem);
        } else if (("ejb-local-ref" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: ejbLocalRef
            final EjbLocalRef ejbLocalRefItem = readEjbLocalRef(elementReader, context);
            if (ejbLocalRef == null) {
                ejbLocalRef = webApp.ejbLocalRef;
                if (ejbLocalRef != null) {
                    ejbLocalRef.clear();
                } else {
                    ejbLocalRef = new KeyedCollection<String, EjbLocalRef>();
                }
            }
            ejbLocalRef.add(ejbLocalRefItem);
        } else if (("service-ref" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: serviceRef
            final ServiceRef serviceRefItem = readServiceRef(elementReader, context);
            if (serviceRef == null) {
                serviceRef = webApp.serviceRef;
                if (serviceRef != null) {
                    serviceRef.clear();
                } else {
                    serviceRef = new KeyedCollection<String, ServiceRef>();
                }
            }
            serviceRef.add(serviceRefItem);
        } else if (("resource-ref" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: resourceRef
            final ResourceRef resourceRefItem = readResourceRef(elementReader, context);
            if (resourceRef == null) {
                resourceRef = webApp.resourceRef;
                if (resourceRef != null) {
                    resourceRef.clear();
                } else {
                    resourceRef = new KeyedCollection<String, ResourceRef>();
                }
            }
            resourceRef.add(resourceRefItem);
        } else if (("resource-env-ref" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: resourceEnvRef
            final ResourceEnvRef resourceEnvRefItem = readResourceEnvRef(elementReader, context);
            if (resourceEnvRef == null) {
                resourceEnvRef = webApp.resourceEnvRef;
                if (resourceEnvRef != null) {
                    resourceEnvRef.clear();
                } else {
                    resourceEnvRef = new KeyedCollection<String, ResourceEnvRef>();
                }
            }
            resourceEnvRef.add(resourceEnvRefItem);
        } else if (("message-destination-ref" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: messageDestinationRef
            final MessageDestinationRef messageDestinationRefItem = readMessageDestinationRef(elementReader, context);
            if (messageDestinationRef == null) {
                messageDestinationRef = webApp.messageDestinationRef;
                if (messageDestinationRef != null) {
                    messageDestinationRef.clear();
                } else {
                    messageDestinationRef = new KeyedCollection<String, MessageDestinationRef>();
                }
            }
            messageDestinationRef.add(messageDestinationRefItem);
        } else if (("persistence-context-ref" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: persistenceContextRef
            final PersistenceContextRef persistenceContextRefItem = readPersistenceContextRef(elementReader, context);
            if (persistenceContextRef == null) {
                persistenceContextRef = webApp.persistenceContextRef;
                if (persistenceContextRef != null) {
                    persistenceContextRef.clear();
                } else {
                    persistenceContextRef = new KeyedCollection<String, PersistenceContextRef>();
                }
            }
            persistenceContextRef.add(persistenceContextRefItem);
        } else if (("persistence-unit-ref" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: persistenceUnitRef
            final PersistenceUnitRef persistenceUnitRefItem = readPersistenceUnitRef(elementReader, context);
            if (persistenceUnitRef == null) {
                persistenceUnitRef = webApp.persistenceUnitRef;
                if (persistenceUnitRef != null) {
                    persistenceUnitRef.clear();
                } else {
                    persistenceUnitRef = new KeyedCollection<String, PersistenceUnitRef>();
                }
            }
            persistenceUnitRef.add(persistenceUnitRefItem);
        } else if (("post-construct" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: postConstruct
            final org.apache.openejb.jee.LifecycleCallback postConstructItem = readLifecycleCallback(elementReader, context);
            if (postConstruct == null) {
                postConstruct = webApp.postConstruct;
                if (postConstruct != null) {
                    postConstruct.clear();
                } else {
                    postConstruct = new ArrayList<org.apache.openejb.jee.LifecycleCallback>();
                }
            }
            postConstruct.add(postConstructItem);
        } else if (("pre-destroy" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: preDestroy
            final org.apache.openejb.jee.LifecycleCallback preDestroyItem = readLifecycleCallback(elementReader, context);
            if (preDestroy == null) {
                preDestroy = webApp.preDestroy;
                if (preDestroy != null) {
                    preDestroy.clear();
                } else {
                    preDestroy = new ArrayList<org.apache.openejb.jee.LifecycleCallback>();
                }
            }
            preDestroy.add(preDestroyItem);
        } else if (("message-destination" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: messageDestination
            final MessageDestination messageDestinationItem = readMessageDestination(elementReader, context);
            if (messageDestination == null) {
                messageDestination = webApp.messageDestination;
                if (messageDestination != null) {
                    messageDestination.clear();
                } else {
                    messageDestination = new ArrayList<MessageDestination>();
                }
            }
            messageDestination.add(messageDestinationItem);
        } else if (("absolute-ordering" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: absoluteOrdering
            final AbsoluteOrdering absoluteOrdering = readAbsoluteOrdering(elementReader, context);
            webApp.absoluteOrdering = absoluteOrdering;
        } else if (("data-source" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: dataSource
            final DataSource dataSourceItem = readDataSource(elementReader, context);
            if (dataSource == null) {
                dataSource = webApp.dataSource;
                if (dataSource != null) {
                    dataSource.clear();
                } else {
                    dataSource = new KeyedCollection<String, DataSource>();
                }
            }
            dataSource.add(dataSourceItem);
        } else if (("jms-connection-factory" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: dataSource
            final JMSConnectionFactory connectionFactory = readJMSConnectionFactory(elementReader, context);
            if (jmsConnectionFactories == null) {
                jmsConnectionFactories = webApp.jmsConnectionFactories;
                if (jmsConnectionFactories != null) {
                    jmsConnectionFactories.clear();
                } else {
                    jmsConnectionFactories = new KeyedCollection<>();
                }
            }
            jmsConnectionFactories.add(connectionFactory);
        } else if (("module-name" == elementReader.getLocalName()) && ("http://java.sun.com/xml/ns/javaee" == elementReader.getNamespaceURI())) {
            // ELEMENT: moduleName
            final String moduleNameRaw = elementReader.getElementAsString();
            final String moduleName;
            try {
                moduleName = Adapters.collapsedStringAdapterAdapter.unmarshal(moduleNameRaw);
            } catch (final Exception e) {
                context.xmlAdapterError(elementReader, CollapsedStringAdapter.class, String.class, String.class, e);
                continue;
            }
            webApp.moduleName = moduleName;
        }
    /*
            else not yet used so ignored, here will come servlet 3.1 elements we don't parse cause don't need yet
            */
    }
    if (descriptions != null) {
        try {
            webApp.setDescriptions(descriptions.toArray(new Text[descriptions.size()]));
        } catch (final Exception e) {
            context.setterError(reader, WebApp.class, "setDescriptions", Text[].class, e);
        }
    }
    if (displayNames != null) {
        try {
            webApp.setDisplayNames(displayNames.toArray(new Text[displayNames.size()]));
        } catch (final Exception e) {
            context.setterError(reader, WebApp.class, "setDisplayNames", Text[].class, e);
        }
    }
    if (icon != null) {
        webApp.icon = icon;
    }
    if (distributable != null) {
        webApp.distributable = distributable;
    }
    if (contextParam != null) {
        webApp.contextParam = contextParam;
    }
    if (filter != null) {
        webApp.filter = filter;
    }
    if (filterMapping != null) {
        webApp.filterMapping = filterMapping;
    }
    if (listener != null) {
        webApp.listener = listener;
    }
    if (servlet != null) {
        webApp.servlet = servlet;
    }
    if (servletMapping != null) {
        webApp.servletMapping = servletMapping;
    }
    if (sessionConfig != null) {
        webApp.sessionConfig = sessionConfig;
    }
    if (mimeMapping != null) {
        webApp.mimeMapping = mimeMapping;
    }
    if (welcomeFileList != null) {
        webApp.welcomeFileList = welcomeFileList;
    }
    if (errorPage != null) {
        webApp.errorPage = errorPage;
    }
    if (jspConfig != null) {
        webApp.jspConfig = jspConfig;
    }
    if (securityConstraint != null) {
        webApp.securityConstraint = securityConstraint;
    }
    if (loginConfig != null) {
        webApp.loginConfig = loginConfig;
    }
    if (securityRole != null) {
        webApp.securityRole = securityRole;
    }
    if (localeEncodingMappingList != null) {
        webApp.localeEncodingMappingList = localeEncodingMappingList;
    }
    if (envEntry != null) {
        webApp.envEntry = envEntry;
    }
    if (ejbRef != null) {
        webApp.ejbRef = ejbRef;
    }
    if (ejbLocalRef != null) {
        webApp.ejbLocalRef = ejbLocalRef;
    }
    if (serviceRef != null) {
        webApp.serviceRef = serviceRef;
    }
    if (resourceRef != null) {
        webApp.resourceRef = resourceRef;
    }
    if (resourceEnvRef != null) {
        webApp.resourceEnvRef = resourceEnvRef;
    }
    if (messageDestinationRef != null) {
        webApp.messageDestinationRef = messageDestinationRef;
    }
    if (persistenceContextRef != null) {
        webApp.persistenceContextRef = persistenceContextRef;
    }
    if (persistenceUnitRef != null) {
        webApp.persistenceUnitRef = persistenceUnitRef;
    }
    if (postConstruct != null) {
        webApp.postConstruct = postConstruct;
    }
    if (preDestroy != null) {
        webApp.preDestroy = preDestroy;
    }
    if (messageDestination != null) {
        webApp.messageDestination = messageDestination;
    }
    if (dataSource != null) {
        webApp.dataSource = dataSource;
    }
    context.afterUnmarshal(webApp, org.metatype.sxc.jaxb.LifecycleCallback.NONE);
    return webApp;
}
Also used : SecurityRole$JAXB.readSecurityRole(org.apache.openejb.jee.SecurityRole$JAXB.readSecurityRole) SecurityRole$JAXB.writeSecurityRole(org.apache.openejb.jee.SecurityRole$JAXB.writeSecurityRole) ErrorPage$JAXB.writeErrorPage(org.apache.openejb.jee.ErrorPage$JAXB.writeErrorPage) ErrorPage$JAXB.readErrorPage(org.apache.openejb.jee.ErrorPage$JAXB.readErrorPage) JspConfig$JAXB.writeJspConfig(org.apache.openejb.jee.JspConfig$JAXB.writeJspConfig) JspConfig$JAXB.readJspConfig(org.apache.openejb.jee.JspConfig$JAXB.readJspConfig) ArrayList(java.util.ArrayList) Taglib$JAXB.writeTaglib(org.apache.openejb.jee.Taglib$JAXB.writeTaglib) Taglib$JAXB.readTaglib(org.apache.openejb.jee.Taglib$JAXB.readTaglib) LocaleEncodingMappingList$JAXB.readLocaleEncodingMappingList(org.apache.openejb.jee.LocaleEncodingMappingList$JAXB.readLocaleEncodingMappingList) LocaleEncodingMappingList$JAXB.writeLocaleEncodingMappingList(org.apache.openejb.jee.LocaleEncodingMappingList$JAXB.writeLocaleEncodingMappingList) ResourceEnvRef$JAXB.readResourceEnvRef(org.apache.openejb.jee.ResourceEnvRef$JAXB.readResourceEnvRef) ResourceEnvRef$JAXB.writeResourceEnvRef(org.apache.openejb.jee.ResourceEnvRef$JAXB.writeResourceEnvRef) XoXMLStreamReader(org.metatype.sxc.util.XoXMLStreamReader) ServletMapping$JAXB.readServletMapping(org.apache.openejb.jee.ServletMapping$JAXB.readServletMapping) ServletMapping$JAXB.writeServletMapping(org.apache.openejb.jee.ServletMapping$JAXB.writeServletMapping) MessageDestination$JAXB.readMessageDestination(org.apache.openejb.jee.MessageDestination$JAXB.readMessageDestination) MessageDestination$JAXB.writeMessageDestination(org.apache.openejb.jee.MessageDestination$JAXB.writeMessageDestination) DataSource$JAXB.writeDataSource(org.apache.openejb.jee.DataSource$JAXB.writeDataSource) DataSource$JAXB.readDataSource(org.apache.openejb.jee.DataSource$JAXB.readDataSource) AbsoluteOrdering$JAXB.readAbsoluteOrdering(org.apache.openejb.jee.AbsoluteOrdering$JAXB.readAbsoluteOrdering) AbsoluteOrdering$JAXB.writeAbsoluteOrdering(org.apache.openejb.jee.AbsoluteOrdering$JAXB.writeAbsoluteOrdering) Icon$JAXB.readIcon(org.apache.openejb.jee.Icon$JAXB.readIcon) Icon$JAXB.writeIcon(org.apache.openejb.jee.Icon$JAXB.writeIcon) RuntimeContext(org.metatype.sxc.jaxb.RuntimeContext) ServiceRef$JAXB.readServiceRef(org.apache.openejb.jee.ServiceRef$JAXB.readServiceRef) ServiceRef$JAXB.writeServiceRef(org.apache.openejb.jee.ServiceRef$JAXB.writeServiceRef) Listener$JAXB.readListener(org.apache.openejb.jee.Listener$JAXB.readListener) Listener$JAXB.writeListener(org.apache.openejb.jee.Listener$JAXB.writeListener) Attribute(org.metatype.sxc.util.Attribute) PersistenceContextRef$JAXB.readPersistenceContextRef(org.apache.openejb.jee.PersistenceContextRef$JAXB.readPersistenceContextRef) PersistenceContextRef$JAXB.writePersistenceContextRef(org.apache.openejb.jee.PersistenceContextRef$JAXB.writePersistenceContextRef) ParamValue$JAXB.readParamValue(org.apache.openejb.jee.ParamValue$JAXB.readParamValue) ParamValue$JAXB.writeParamValue(org.apache.openejb.jee.ParamValue$JAXB.writeParamValue) SessionConfig$JAXB.readSessionConfig(org.apache.openejb.jee.SessionConfig$JAXB.readSessionConfig) SessionConfig$JAXB.writeSessionConfig(org.apache.openejb.jee.SessionConfig$JAXB.writeSessionConfig) FilterMapping$JAXB.writeFilterMapping(org.apache.openejb.jee.FilterMapping$JAXB.writeFilterMapping) FilterMapping$JAXB.readFilterMapping(org.apache.openejb.jee.FilterMapping$JAXB.readFilterMapping) SecurityConstraint$JAXB.readSecurityConstraint(org.apache.openejb.jee.SecurityConstraint$JAXB.readSecurityConstraint) SecurityConstraint$JAXB.writeSecurityConstraint(org.apache.openejb.jee.SecurityConstraint$JAXB.writeSecurityConstraint) MessageDestinationRef$JAXB.writeMessageDestinationRef(org.apache.openejb.jee.MessageDestinationRef$JAXB.writeMessageDestinationRef) MessageDestinationRef$JAXB.readMessageDestinationRef(org.apache.openejb.jee.MessageDestinationRef$JAXB.readMessageDestinationRef) Empty$JAXB.writeEmpty(org.apache.openejb.jee.Empty$JAXB.writeEmpty) Empty$JAXB.readEmpty(org.apache.openejb.jee.Empty$JAXB.readEmpty) EjbRef$JAXB.readEjbRef(org.apache.openejb.jee.EjbRef$JAXB.readEjbRef) EjbRef$JAXB.writeEjbRef(org.apache.openejb.jee.EjbRef$JAXB.writeEjbRef) LoginConfig$JAXB.readLoginConfig(org.apache.openejb.jee.LoginConfig$JAXB.readLoginConfig) LoginConfig$JAXB.writeLoginConfig(org.apache.openejb.jee.LoginConfig$JAXB.writeLoginConfig) Servlet$JAXB.writeServlet(org.apache.openejb.jee.Servlet$JAXB.writeServlet) Servlet$JAXB.readServlet(org.apache.openejb.jee.Servlet$JAXB.readServlet) MimeMapping$JAXB.readMimeMapping(org.apache.openejb.jee.MimeMapping$JAXB.readMimeMapping) MimeMapping$JAXB.writeMimeMapping(org.apache.openejb.jee.MimeMapping$JAXB.writeMimeMapping) PersistenceUnitRef$JAXB.readPersistenceUnitRef(org.apache.openejb.jee.PersistenceUnitRef$JAXB.readPersistenceUnitRef) PersistenceUnitRef$JAXB.writePersistenceUnitRef(org.apache.openejb.jee.PersistenceUnitRef$JAXB.writePersistenceUnitRef) EnvEntry$JAXB.readEnvEntry(org.apache.openejb.jee.EnvEntry$JAXB.readEnvEntry) EnvEntry$JAXB.writeEnvEntry(org.apache.openejb.jee.EnvEntry$JAXB.writeEnvEntry) EjbLocalRef$JAXB.writeEjbLocalRef(org.apache.openejb.jee.EjbLocalRef$JAXB.writeEjbLocalRef) EjbLocalRef$JAXB.readEjbLocalRef(org.apache.openejb.jee.EjbLocalRef$JAXB.readEjbLocalRef) WelcomeFileList$JAXB.readWelcomeFileList(org.apache.openejb.jee.WelcomeFileList$JAXB.readWelcomeFileList) WelcomeFileList$JAXB.writeWelcomeFileList(org.apache.openejb.jee.WelcomeFileList$JAXB.writeWelcomeFileList) QName(javax.xml.namespace.QName) Text$JAXB.readText(org.apache.openejb.jee.Text$JAXB.readText) Text$JAXB.writeText(org.apache.openejb.jee.Text$JAXB.writeText) JMSConnectionFactory$JAXB.readJMSConnectionFactory(org.apache.openejb.jee.JMSConnectionFactory$JAXB.readJMSConnectionFactory) Filter$JAXB.readFilter(org.apache.openejb.jee.Filter$JAXB.readFilter) Filter$JAXB.writeFilter(org.apache.openejb.jee.Filter$JAXB.writeFilter) ResourceRef$JAXB.readResourceRef(org.apache.openejb.jee.ResourceRef$JAXB.readResourceRef) ResourceRef$JAXB.writeResourceRef(org.apache.openejb.jee.ResourceRef$JAXB.writeResourceRef) LifecycleCallback$JAXB.writeLifecycleCallback(org.apache.openejb.jee.LifecycleCallback$JAXB.writeLifecycleCallback) LifecycleCallback$JAXB.readLifecycleCallback(org.apache.openejb.jee.LifecycleCallback$JAXB.readLifecycleCallback)

Aggregations

ParamValue$JAXB.readParamValue (org.apache.openejb.jee.ParamValue$JAXB.readParamValue)10 ParamValue$JAXB.writeParamValue (org.apache.openejb.jee.ParamValue$JAXB.writeParamValue)10 Text$JAXB.readText (org.apache.openejb.jee.Text$JAXB.readText)10 Text$JAXB.writeText (org.apache.openejb.jee.Text$JAXB.writeText)10 RuntimeContext (org.metatype.sxc.jaxb.RuntimeContext)10 CollapsedStringAdapter (javax.xml.bind.annotation.adapters.CollapsedStringAdapter)8 Icon$JAXB.readIcon (org.apache.openejb.jee.Icon$JAXB.readIcon)8 Icon$JAXB.writeIcon (org.apache.openejb.jee.Icon$JAXB.writeIcon)8 ArrayList (java.util.ArrayList)6 QName (javax.xml.namespace.QName)6 Attribute (org.metatype.sxc.util.Attribute)5 XoXMLStreamReader (org.metatype.sxc.util.XoXMLStreamReader)5 AbsoluteOrdering$JAXB.readAbsoluteOrdering (org.apache.openejb.jee.AbsoluteOrdering$JAXB.readAbsoluteOrdering)2 AbsoluteOrdering$JAXB.writeAbsoluteOrdering (org.apache.openejb.jee.AbsoluteOrdering$JAXB.writeAbsoluteOrdering)2 DataSource$JAXB.readDataSource (org.apache.openejb.jee.DataSource$JAXB.readDataSource)2 DataSource$JAXB.writeDataSource (org.apache.openejb.jee.DataSource$JAXB.writeDataSource)2 EjbLocalRef$JAXB.readEjbLocalRef (org.apache.openejb.jee.EjbLocalRef$JAXB.readEjbLocalRef)2 EjbLocalRef$JAXB.writeEjbLocalRef (org.apache.openejb.jee.EjbLocalRef$JAXB.writeEjbLocalRef)2 EjbRef$JAXB.readEjbRef (org.apache.openejb.jee.EjbRef$JAXB.readEjbRef)2 EjbRef$JAXB.writeEjbRef (org.apache.openejb.jee.EjbRef$JAXB.writeEjbRef)2