<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
org.apache.cxf.bus.spring Class Hierarchy (Apache CXF Bundle Jar 2.6.3 API)
</TITLE>


<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    parent.document.title="org.apache.cxf.bus.spring Class Hierarchy (Apache CXF Bundle Jar 2.6.3 API)";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
Apache CXF API</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/cxf/bus/resource/package-tree.html"><B>PREV</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/cxf/buslifecycle/package-tree.html"><B>NEXT</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html?org/apache/cxf/bus/spring/package-tree.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<CENTER>
<H2>
Hierarchy For Package org.apache.cxf.bus.spring
</H2>
</CENTER>
<DL>
<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../overview-tree.html">All Packages</A></DL>
<HR>
<H2>
Class Hierarchy
</H2>
<UL>
<LI TYPE="circle">java.lang.<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang"><B>Object</B></A><UL>
<LI TYPE="circle">org.apache.cxf.interceptor.<A HREF="../../../../../org/apache/cxf/interceptor/AbstractBasicInterceptorProvider.html" title="class in org.apache.cxf.interceptor"><B>AbstractBasicInterceptorProvider</B></A> (implements org.apache.cxf.interceptor.<A HREF="../../../../../org/apache/cxf/interceptor/InterceptorProvider.html" title="interface in org.apache.cxf.interceptor">InterceptorProvider</A>)
<UL>
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/BusDefinitionParser.BusConfig.html" title="class in org.apache.cxf.bus.spring"><B>BusDefinitionParser.BusConfig</B></A> (implements org.springframework.context.ApplicationContextAware)
<LI TYPE="circle">org.apache.cxf.bus.<A HREF="../../../../../org/apache/cxf/bus/CXFBusImpl.html" title="class in org.apache.cxf.bus"><B>CXFBusImpl</B></A> (implements org.apache.cxf.<A HREF="../../../../../org/apache/cxf/Bus.html" title="interface in org.apache.cxf">Bus</A>)
<UL>
<LI TYPE="circle">org.apache.cxf.bus.extension.<A HREF="../../../../../org/apache/cxf/bus/extension/ExtensionManagerBus.html" title="class in org.apache.cxf.bus.extension"><B>ExtensionManagerBus</B></A><UL>
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/SpringBus.html" title="class in org.apache.cxf.bus.spring"><B>SpringBus</B></A> (implements org.springframework.context.ApplicationContextAware)
</UL>
</UL>
</UL>
<LI TYPE="circle">org.springframework.beans.factory.xml.AbstractBeanDefinitionParser (implements org.springframework.beans.factory.xml.BeanDefinitionParser)
<UL>
<LI TYPE="circle">org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser<UL>
<LI TYPE="circle">org.apache.cxf.configuration.spring.<A HREF="../../../../../org/apache/cxf/configuration/spring/AbstractBeanDefinitionParser.html" title="class in org.apache.cxf.configuration.spring"><B>AbstractBeanDefinitionParser</B></A><UL>
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/BusDefinitionParser.html" title="class in org.apache.cxf.bus.spring"><B>BusDefinitionParser</B></A></UL>
</UL>
</UL>
<LI TYPE="circle">org.springframework.beans.factory.support.AbstractBeanDefinitionReader (implements org.springframework.beans.factory.support.BeanDefinitionReader)
<UL>
<LI TYPE="circle">org.springframework.beans.factory.xml.XmlBeanDefinitionReader<UL>
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/ControlledValidationXmlBeanDefinitionReader.html" title="class in org.apache.cxf.bus.spring"><B>ControlledValidationXmlBeanDefinitionReader</B></A></UL>
</UL>
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/BusApplicationContextResourceResolver.html" title="class in org.apache.cxf.bus.spring"><B>BusApplicationContextResourceResolver</B></A> (implements org.springframework.context.ApplicationContextAware, org.apache.cxf.resource.<A HREF="../../../../../org/apache/cxf/resource/ResourceResolver.html" title="interface in org.apache.cxf.resource">ResourceResolver</A>)
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/BusExtensionPostProcessor.html" title="class in org.apache.cxf.bus.spring"><B>BusExtensionPostProcessor</B></A> (implements org.springframework.context.ApplicationContextAware, org.springframework.beans.factory.config.BeanPostProcessor, org.springframework.core.Ordered)
<LI TYPE="circle">org.apache.cxf.<A HREF="../../../../../org/apache/cxf/BusFactory.html" title="class in org.apache.cxf"><B>BusFactory</B></A><UL>
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/SpringBusFactory.html" title="class in org.apache.cxf.bus.spring"><B>SpringBusFactory</B></A></UL>
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/BusWiringBeanFactoryPostProcessor.html" title="class in org.apache.cxf.bus.spring"><B>BusWiringBeanFactoryPostProcessor</B></A> (implements org.springframework.beans.factory.config.BeanFactoryPostProcessor)
<LI TYPE="circle">org.springframework.core.io.DefaultResourceLoader (implements org.springframework.core.io.ResourceLoader)
<UL>
<LI TYPE="circle">org.springframework.context.support.AbstractApplicationContext (implements org.springframework.context.ConfigurableApplicationContext, org.springframework.beans.factory.DisposableBean)
<UL>
<LI TYPE="circle">org.springframework.context.support.AbstractRefreshableApplicationContext<UL>
<LI TYPE="circle">org.springframework.context.support.AbstractRefreshableConfigApplicationContext (implements org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.InitializingBean)
<UL>
<LI TYPE="circle">org.springframework.context.support.AbstractXmlApplicationContext<UL>
<LI TYPE="circle">org.springframework.context.support.ClassPathXmlApplicationContext<UL>
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/BusApplicationContext.html" title="class in org.apache.cxf.bus.spring"><B>BusApplicationContext</B></A></UL>
</UL>
</UL>
</UL>
</UL>
</UL>
<LI TYPE="circle">org.springframework.beans.factory.xml.DelegatingEntityResolver (implements org.xml.sax.<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/org/xml/sax/EntityResolver.html" title="class or interface in org.xml.sax">EntityResolver</A>)
<UL>
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/BusEntityResolver.html" title="class in org.apache.cxf.bus.spring"><B>BusEntityResolver</B></A></UL>
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/Jsr250BeanPostProcessor.html" title="class in org.apache.cxf.bus.spring"><B>Jsr250BeanPostProcessor</B></A> (implements org.springframework.context.ApplicationContextAware, org.springframework.beans.factory.config.DestructionAwareBeanPostProcessor, org.springframework.core.Ordered)
<LI TYPE="circle">org.springframework.beans.factory.xml.NamespaceHandlerSupport (implements org.springframework.beans.factory.xml.NamespaceHandler)
<UL>
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/NamespaceHandler.html" title="class in org.apache.cxf.bus.spring"><B>NamespaceHandler</B></A></UL>
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/OldSpringSupport.html" title="class in org.apache.cxf.bus.spring"><B>OldSpringSupport</B></A> (implements org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.FactoryBean&lt;T&gt;)
<LI TYPE="circle">org.apache.cxf.bus.spring.<A HREF="../../../../../org/apache/cxf/bus/spring/SpringBeanLocator.html" title="class in org.apache.cxf.bus.spring"><B>SpringBeanLocator</B></A> (implements org.apache.cxf.configuration.<A HREF="../../../../../org/apache/cxf/configuration/ConfiguredBeanLocator.html" title="interface in org.apache.cxf.configuration">ConfiguredBeanLocator</A>)
</UL>
</UL>
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
Apache CXF API</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/cxf/bus/resource/package-tree.html"><B>PREV</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/cxf/buslifecycle/package-tree.html"><B>NEXT</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../index.html?org/apache/cxf/bus/spring/package-tree.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>
Apache CXF
</BODY>
</HTML>
