public void setWebXml (Resource webXml) throws Exception { _webXmlRoot = new WebDescriptor(webXml); _webXmlRoot.setValidating(isValidateXml()); _webXmlRoot.parse(); _metaDataComplete=_webXmlRoot.getMetaDataComplete() == MetaDataComplete.True; if (_webXmlRoot.isOrdered()) { Ordering ordering = getOrdering(); if (ordering == null) ordering = new AbsoluteOrdering(this); List<String> order = _webXmlRoot.getOrdering(); for (String s:order) { if (s.equalsIgnoreCase("others")) ((AbsoluteOrdering)ordering).addOthers(); else ((AbsoluteOrdering)ordering).add(s); } //(re)set the ordering to cause webinf jar order to be recalculated setOrdering(ordering); } }
public void visitListener(WebAppContext context, Descriptor descriptor, XmlParser.Node node) { String className = node.getString("listener-class", false, true); EventListener listener = null; try { if (className != null && className.length()> 0) { //Servlet Spec 3.0 p 74 //Duplicate listener declarations don't result in duplicate listener instances for (ListenerHolder holder : context.getServletHandler().getListeners()) { if (holder.getClassName().equals(className)) return; } ((WebDescriptor)descriptor).addClassName(className); ListenerHolder h = context.getServletHandler().newListenerHolder(new Source (Source.Origin.DESCRIPTOR, descriptor.getResource().toString())); h.setClassName(className); context.getServletHandler().addListener(h); context.getMetaData().setOrigin(className+".listener", descriptor); } } catch (Exception e) { LOG.warn("Could not instantiate listener " + className, e); return; } }
context.getServletContext().setEffectiveMajorVersion(_webXmlRoot.getMajorVersion()); context.getServletContext().setEffectiveMinorVersion(_webXmlRoot.getMinorVersion());
@Override public XmlParser ensureParser() throws ClassNotFoundException { synchronized (WebDescriptor.class) { if (_nonValidatingStaticParser == null) _nonValidatingStaticParser = newParser(false); } if (!isValidating()) return _nonValidatingStaticParser; else return newParser(true); }
public void setDefaults (Resource webDefaults) throws Exception { _webDefaultsRoot = new DefaultsDescriptor(webDefaults); _webDefaultsRoot.setValidating(isValidateXml()); _webDefaultsRoot.parse(); if (_webDefaultsRoot.isOrdered()) { Ordering ordering = getOrdering(); if (ordering == null) ordering = new AbsoluteOrdering(this); List<String> order = _webDefaultsRoot.getOrdering(); for (String s:order) { if (s.equalsIgnoreCase("others")) ((AbsoluteOrdering)ordering).addOthers(); else ((AbsoluteOrdering)ordering).add(s); } //(re)set the ordering to cause webinf jar order to be recalculated setOrdering(ordering); } }
public void setDefaults (Resource webDefaults) throws Exception { _webDefaultsRoot = new DefaultsDescriptor(webDefaults); _webDefaultsRoot.parse(); if (_webDefaultsRoot.isOrdered()) { if (_ordering == null) _ordering = new Ordering.AbsoluteOrdering(this); List<String> order = _webDefaultsRoot.getOrdering(); for (String s:order) { if (s.equalsIgnoreCase("others")) ((Ordering.AbsoluteOrdering)_ordering).addOthers(); else ((Ordering.AbsoluteOrdering)_ordering).add(s); } } }
@Override public void parse () throws Exception { super.parse(); processName(); }
public boolean isDistributable () { boolean distributable = ( (_webDefaultsRoot != null && _webDefaultsRoot.isDistributable()) || (_webXmlRoot != null && _webXmlRoot.isDistributable())); for (WebDescriptor d : _webOverrideRoots) distributable&=d.isDistributable(); if (getOrdering() != null) { List<Resource> orderedResources = getOrderedWebInfJars(); for (Resource r: orderedResources) { FragmentDescriptor d = _webFragmentResourceMap.get(r); if (d!=null) distributable = distributable && d.isDistributable(); } } return distributable; }
public boolean isMetaDataComplete (WebDescriptor d) { return (d!=null && d.getMetaDataComplete() == MetaDataComplete.True); }
@Override public void ensureParser() throws ClassNotFoundException { if (_parserSingleton == null) { _parserSingleton = newParser(); } _parser = _parserSingleton; }
public void setDefaults (Resource webDefaults) throws Exception { _webDefaultsRoot = new DefaultsDescriptor(webDefaults); _webDefaultsRoot.parse(); if (_webDefaultsRoot.isOrdered()) { if (_ordering == null) _ordering = new Ordering.AbsoluteOrdering(this); List<String> order = _webDefaultsRoot.getOrdering(); for (String s:order) { if (s.equalsIgnoreCase("others")) ((Ordering.AbsoluteOrdering)_ordering).addOthers(); else ((Ordering.AbsoluteOrdering)_ordering).add(s); } } }
public void setDefaults (Resource webDefaults) throws Exception { _webDefaultsRoot = new DefaultsDescriptor(webDefaults); _webDefaultsRoot.setValidating(isValidateXml()); _webDefaultsRoot.parse(); if (_webDefaultsRoot.isOrdered()) { Ordering ordering = getOrdering(); if (ordering == null) ordering = new AbsoluteOrdering(this); List<String> order = _webDefaultsRoot.getOrdering(); for (String s:order) { if (s.equalsIgnoreCase("others")) ((AbsoluteOrdering)ordering).addOthers(); else ((AbsoluteOrdering)ordering).add(s); } //(re)set the ordering to cause webinf jar order to be recalculated setOrdering(ordering); } }
@Override public void parse () throws Exception { super.parse(); processName(); }
public boolean isDistributable () { boolean distributable = ( (_webDefaultsRoot != null && _webDefaultsRoot.isDistributable()) || (_webXmlRoot != null && _webXmlRoot.isDistributable())); for (WebDescriptor d : _webOverrideRoots) distributable&=d.isDistributable(); List<Resource> orderedResources = getOrderedWebInfJars(); for (Resource r: orderedResources) { FragmentDescriptor d = _webFragmentResourceMap.get(r); if (d!=null) distributable = distributable && d.isDistributable(); } return distributable; }
public boolean isMetaDataComplete (WebDescriptor d) { return (d!=null && d.getMetaDataComplete() == MetaDataComplete.True); }
@Override public void ensureParser() throws ClassNotFoundException { if (_parserSingleton == null) { _parserSingleton = newParser(); } _parser = _parserSingleton; }
@Override public XmlParser ensureParser() throws ClassNotFoundException { synchronized (WebDescriptor.class) { if (_nonValidatingStaticParser == null) _nonValidatingStaticParser = newParser(false); } if (!isValidating()) return _nonValidatingStaticParser; else return newParser(true); }
public void setWebXml (Resource webXml) throws Exception { _webXmlRoot = new WebDescriptor(webXml); _webXmlRoot.parse(); _metaDataComplete=_webXmlRoot.getMetaDataComplete() == MetaDataComplete.True; if (_webXmlRoot.isOrdered()) { if (_ordering == null) _ordering = new Ordering.AbsoluteOrdering(this); List<String> order = _webXmlRoot.getOrdering(); for (String s:order) { if (s.equalsIgnoreCase("others")) ((Ordering.AbsoluteOrdering)_ordering).addOthers(); else ((Ordering.AbsoluteOrdering)_ordering).add(s); } } }
context.getServletContext().setEffectiveMajorVersion(context.getMetaData().getWebXml().getMajorVersion()); context.getServletContext().setEffectiveMinorVersion(context.getMetaData().getWebXml().getMinorVersion());
public void setDefaults (Resource webDefaults) throws Exception { _webDefaultsRoot = new DefaultsDescriptor(webDefaults); _webDefaultsRoot.parse(); if (_webDefaultsRoot.isOrdered()) { if (_ordering == null) _ordering = new Ordering.AbsoluteOrdering(this); List<String> order = _webDefaultsRoot.getOrdering(); for (String s:order) { if (s.equalsIgnoreCase("others")) ((Ordering.AbsoluteOrdering)_ordering).addOthers(); else ((Ordering.AbsoluteOrdering)_ordering).add(s); } } }