[jboss-cvs] jboss-seam/src/ioc/org/jboss/seam/ioc/spring ...
Michael Youngstrom
youngm at gmail.com
Mon Mar 12 16:37:05 EDT 2007
User: myoungstrom
Date: 07/03/12 16:37:05
Modified: src/ioc/org/jboss/seam/ioc/spring spring-1.2.xsd
ContextLoader.java
Added: src/ioc/org/jboss/seam/ioc/spring spring-seam-1.2.xsd
Log:
Committ for JBSEAM-1028 and JBSEAM-995
Revision Changes Path
1.2 +33 -192 jboss-seam/src/ioc/org/jboss/seam/ioc/spring/spring-1.2.xsd
(In the diff below, changes in quantity of whitespace are not shown.)
Index: spring-1.2.xsd
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/ioc/org/jboss/seam/ioc/spring/spring-1.2.xsd,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- spring-1.2.xsd 27 Feb 2007 06:54:17 -0000 1.1
+++ spring-1.2.xsd 12 Mar 2007 20:37:04 -0000 1.2
@@ -1,192 +1,33 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+ targetNamespace="http://jboss.com/products/seam/spring" xmlns:spring="http://jboss.com/products/seam/spring"
+ xmlns:components="http://jboss.com/products/seam/components" attributeFormDefault="unqualified">
+ <xs:import namespace="http://jboss.com/products/seam/components" schemaLocation="http://jboss.com/products/seam/components-1.2.xsd"/>
-<xsd:schema xmlns="http://jboss.com/products/seam/spring" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:tool="http://www.springframework.org/schema/tool" targetNamespace="http://jboss.com/products/seam/spring"
- elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns:p="http://icslib.wh.ldsglobal.net/schema/ldsutil">
-
- <xsd:import namespace="http://www.springframework.org/schema/tool"
- schemaLocation="http://www.springframework.org/schema/tool/spring-tool-2.0.xsd" />
-
- <xsd:element name="configure-scopes">
- <xsd:annotation>
- <xsd:documentation>Makes all the seam scopes available in spring.</xsd:documentation>
- <xsd:appinfo>
- <tool:annotation>
- <tool:exports />
- </tool:annotation>
- </xsd:appinfo>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:attribute name="prefix" type="xsd:string" use="optional">
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
- The prefix to use for the seam scopes. Default: "seam."
- ]]>
- </xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="instance">
- <xsd:annotation>
- <xsd:documentation>
- Make an instance of a seam component available to spring beans for spring injection.
- </xsd:documentation>
- <xsd:appinfo>
- <tool:annotation>
- <tool:exports />
- </tool:annotation>
- </xsd:appinfo>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:attribute name="id" type="xsd:ID">
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
- The id to use when making this seam component instance available in spring. The default will be the seam component name.
- ]]>
- </xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- <xsd:attribute name="name" type="xsd:string" use="required">
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
- The seam component name to get an instance of.
- ]]>
- </xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- <xsd:attribute name="scope" use="optional">
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
- The optional scope to look for this seam component instance in.
- ]]>
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleType>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="STATELESS" />
- <xsd:enumeration value="METHOD" />
- <xsd:enumeration value="EVENT" />
- <xsd:enumeration value="PAGE" />
- <xsd:enumeration value="CONVERSATION" />
- <xsd:enumeration value="SESSION" />
- <xsd:enumeration value="APPLICATION" />
- <xsd:enumeration value="BUSINESS_PROCESS" />
- </xsd:restriction>
- </xsd:simpleType>
- </xsd:attribute>
- <xsd:attribute name="create" type="xsd:boolean" use="optional">
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
- Whether seam should create a new instance if one does not already exist.
- ]]>
- </xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- <xsd:attribute name="proxy" type="xsd:boolean" use="optional" default="false">
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
- Whether to wrap this definition in a proxy for safe injection into a spring singleton.
- ]]>
- </xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="component">
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
- Makes the surrounding spring bean a seam component with the scope managed by spring. Also helps to resolve cases where
- the spring bean name must be different from the seam component name or where the seam beanClass cannot be correctly
- detected.
- ]]>
- </xsd:documentation>
- <xsd:appinfo>
- <tool:annotation>
- <tool:exports />
- </tool:annotation>
- </xsd:appinfo>
- </xsd:annotation>
- <xsd:complexType>
- <xsd:attribute name="seamName" type="xsd:string" use="optional">
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
- The seam component name to give this spring bean. Optional unless the seam component name must be different from the
- spring bean name.
- ]]>
- </xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- <xsd:attribute name="springName" type="xsd:string" use="optional">
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
- What spring bean name should seam use to obtain an instance of this bean. Only necessary when spring-seam cannot
- property detect the name of the spring bean which some spring NamespaceHandlers can do (eg. <aop:scoped-proxy/>, etc.).
- ]]>
- </xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- <xsd:attribute name="beanClass" type="xsd:string" use="optional">
- <xsd:annotation>
- <xsd:documentation source="java:java.lang.Class">
- <![CDATA[
- The component beanClass seam will use to get annotations from and to wrap it's interceptors around. Optional unless the
- correct class is not being detected seam-spring.
- ]]>
- </xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
- <xsd:attribute name="intercept" use="optional" default="AUTO">
- <xsd:annotation>
- <xsd:documentation source="java:java.lang.Class">
- <![CDATA[
- Overrides the default InterceptionType seam uses when determining if it's interceptors should be wrapped around a bean.
- Seldom do you want the seam interceptors wrapped around a sprig singleton. Auto will use choose NEVER for a singleton
- and use seam standard rules otherwise.
- ]]>
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleType>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="AUTO" />
- <xsd:enumeration value="NEVER" />
- <xsd:enumeration value="AFTER_RESTORE_VIEW" />
- <xsd:enumeration value="AFTER_UPDATE_MODEL_VALUES" />
- <xsd:enumeration value="INVOKE_APPLICATION" />
- <xsd:enumeration value="ALWAYS" />
- </xsd:restriction>
- </xsd:simpleType>
- </xsd:attribute>
- <xsd:attribute name="scope" use="optional" default="STATELESS">
- <xsd:annotation>
- <xsd:documentation>
- <![CDATA[
-The optional scope this component should have. STATELESS will allow spring to manage the scope.
- ]]>
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleType>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="STATELESS" />
- <xsd:enumeration value="METHOD" />
- <xsd:enumeration value="EVENT" />
- <xsd:enumeration value="PAGE" />
- <xsd:enumeration value="CONVERSATION" />
- <xsd:enumeration value="SESSION" />
- <xsd:enumeration value="APPLICATION" />
- <xsd:enumeration value="BUSINESS_PROCESS" />
- </xsd:restriction>
- </xsd:simpleType>
- </xsd:attribute>
- </xsd:complexType>
- </xsd:element>
-</xsd:schema>
+ <xs:element name="context-loader">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element minOccurs="0" maxOccurs="1" ref="spring:config-locations"/>
+ </xs:choice>
+ <xs:attributeGroup ref="components:attlist.component"/>
+ <xs:attribute name="config-locations" type="xs:string" use="optional" default="/WEB-INF/applicationContext.xml">
+ <xs:annotation>
+ <xs:documentation>
+ <![CDATA[
+ A single application context config location.
+ ]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="config-locations" type="components:multiValuedProperty">
+ <xs:annotation>
+ <xs:documentation>
+ <![CDATA[
+ Allows you to specify many config-locations in nested value elements.
+ ]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+</xs:schema>
1.2 +2 -7 jboss-seam/src/ioc/org/jboss/seam/ioc/spring/ContextLoader.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: ContextLoader.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/ioc/org/jboss/seam/ioc/spring/ContextLoader.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- ContextLoader.java 10 Mar 2007 22:05:47 -0000 1.1
+++ ContextLoader.java 12 Mar 2007 20:37:05 -0000 1.2
@@ -3,12 +3,8 @@
import static org.jboss.seam.InterceptionType.NEVER;
import static org.jboss.seam.annotations.Install.BUILT_IN;
-import java.lang.reflect.Proxy;
-
import javax.servlet.ServletContext;
-import org.jboss.kernel.plugins.bootstrap.standalone.StandaloneBootstrap;
-import static org.springframework.web.context.ContextLoader.*;
import org.jboss.seam.ScopeType;
import org.jboss.seam.annotations.Create;
import org.jboss.seam.annotations.Destroy;
@@ -18,15 +14,14 @@
import org.jboss.seam.annotations.Scope;
import org.jboss.seam.annotations.Startup;
import org.jboss.seam.contexts.Lifecycle;
-import org.springframework.context.ApplicationContext;
import org.springframework.web.context.ConfigurableWebApplicationContext;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.context.support.XmlWebApplicationContext;
/**
- * A seam component that acts as an adaptor for Spring's ContextLoader
+ * A seam component that loads up a spring WebApplicationContext
*
- * @author Gavin King
+ * @author Mike Youngstrom
*/
@Scope(ScopeType.APPLICATION)
@Intercept(NEVER)
1.1 date: 2007/03/12 20:37:05; author: myoungstrom; state: Exp;jboss-seam/src/ioc/org/jboss/seam/ioc/spring/spring-seam-1.2.xsd
Index: spring-seam-1.2.xsd
===================================================================
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<xsd:schema xmlns="http://jboss.com/products/seam/spring-seam" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:tool="http://www.springframework.org/schema/tool" targetNamespace="http://jboss.com/products/seam/spring-seam"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xsd:import namespace="http://www.springframework.org/schema/tool"
schemaLocation="http://www.springframework.org/schema/tool/spring-tool-2.0.xsd" />
<xsd:element name="configure-scopes">
<xsd:annotation>
<xsd:documentation>Makes all the seam scopes available in spring.</xsd:documentation>
<xsd:appinfo>
<tool:annotation>
<tool:exports />
</tool:annotation>
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:attribute name="prefix" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation>
<![CDATA[
The prefix to use for the seam scopes. Default: "seam."
]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<xsd:element name="instance">
<xsd:annotation>
<xsd:documentation>
Make an instance of a seam component available to spring beans for spring injection.
</xsd:documentation>
<xsd:appinfo>
<tool:annotation>
<tool:exports />
</tool:annotation>
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:attribute name="id" type="xsd:ID">
<xsd:annotation>
<xsd:documentation>
<![CDATA[
The id to use when making this seam component instance available in spring. The default will be the seam component name.
]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="name" type="xsd:string" use="required">
<xsd:annotation>
<xsd:documentation>
<![CDATA[
The seam component name to get an instance of.
]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="scope" use="optional">
<xsd:annotation>
<xsd:documentation>
<![CDATA[
The optional scope to look for this seam component instance in.
]]>
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="STATELESS" />
<xsd:enumeration value="METHOD" />
<xsd:enumeration value="EVENT" />
<xsd:enumeration value="PAGE" />
<xsd:enumeration value="CONVERSATION" />
<xsd:enumeration value="SESSION" />
<xsd:enumeration value="APPLICATION" />
<xsd:enumeration value="BUSINESS_PROCESS" />
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="create" type="xsd:boolean" use="optional">
<xsd:annotation>
<xsd:documentation>
<![CDATA[
Whether seam should create a new instance if one does not already exist.
]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="proxy" type="xsd:boolean" use="optional" default="false">
<xsd:annotation>
<xsd:documentation>
<![CDATA[
Whether to wrap this definition in a proxy for safe injection into a spring singleton.
]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
<xsd:element name="component">
<xsd:annotation>
<xsd:documentation>
<![CDATA[
Makes the surrounding spring bean a seam component with the scope managed by spring. Also helps to resolve cases where
the spring bean name must be different from the seam component name or where the seam beanClass cannot be correctly
detected.
]]>
</xsd:documentation>
<xsd:appinfo>
<tool:annotation>
<tool:exports />
</tool:annotation>
</xsd:appinfo>
</xsd:annotation>
<xsd:complexType>
<xsd:attribute name="seamName" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation>
<![CDATA[
The seam component name to give this spring bean. Optional unless the seam component name must be different from the
spring bean name.
]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="springName" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation>
<![CDATA[
What spring bean name should seam use to obtain an instance of this bean. Only necessary when spring-seam cannot
property detect the name of the spring bean which some spring NamespaceHandlers can do (eg. <aop:scoped-proxy/>, etc.).
]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="beanClass" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation>
<![CDATA[
The component beanClass seam will use to get annotations from and to wrap it's interceptors around. Optional unless the
correct class is not being detected seam-spring.
]]>
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="intercept" use="optional" default="AUTO">
<xsd:annotation>
<xsd:documentation>
<![CDATA[
Overrides the default InterceptionType seam uses when determining if it's interceptors should be wrapped around a bean.
Seldom do you want the seam interceptors wrapped around a sprig singleton. Auto will use choose NEVER for a singleton
and use seam standard rules otherwise.
]]>
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="AUTO" />
<xsd:enumeration value="NEVER" />
<xsd:enumeration value="AFTER_RESTORE_VIEW" />
<xsd:enumeration value="AFTER_UPDATE_MODEL_VALUES" />
<xsd:enumeration value="INVOKE_APPLICATION" />
<xsd:enumeration value="ALWAYS" />
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="scope" use="optional" default="STATELESS">
<xsd:annotation>
<xsd:documentation>
<![CDATA[
The optional scope this component should have. STATELESS will allow spring to manage the scope.
]]>
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="STATELESS" />
<xsd:enumeration value="METHOD" />
<xsd:enumeration value="EVENT" />
<xsd:enumeration value="PAGE" />
<xsd:enumeration value="CONVERSATION" />
<xsd:enumeration value="SESSION" />
<xsd:enumeration value="APPLICATION" />
<xsd:enumeration value="BUSINESS_PROCESS" />
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
</xsd:schema>
More information about the jboss-cvs-commits
mailing list