geronimo-scm mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From hogst...@apache.org
Subject svn commit: r509373 [2/2] - /geronimo/daytrader/trunk/modules/ejb/src/main/resources/META-INF/ejb-jar.xml
Date Mon, 19 Feb 2007 23:10:42 GMT

Modified: geronimo/daytrader/trunk/modules/ejb/src/main/resources/META-INF/ejb-jar.xml
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/modules/ejb/src/main/resources/META-INF/ejb-jar.xml?view=diff&rev=509373&r1=509372&r2=509373
==============================================================================
--- geronimo/daytrader/trunk/modules/ejb/src/main/resources/META-INF/ejb-jar.xml (original)
+++ geronimo/daytrader/trunk/modules/ejb/src/main/resources/META-INF/ejb-jar.xml Mon Feb 19 15:10:41 2007
@@ -1,1145 +1,1386 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
+	Licensed to the Apache Software Foundation (ASF) under one or more
+	contributor license agreements.  See the NOTICE file distributed with
+	this work for additional information regarding copyright ownership.
+	The ASF licenses this file to You under the Apache License, Version 2.0
+	(the "License"); you may not use this file except in compliance with
+	the License.  You may obtain a copy of the License at
+	
+	http://www.apache.org/licenses/LICENSE-2.0
+	
+	Unless required by applicable law or agreed to in writing, software
+	distributed under the License is distributed on an "AS IS" BASIS,
+	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+	See the License for the specific language governing permissions and
+	limitations under the License.
 -->
-<ejb-jar version="2.1"
-    xmlns="http://java.sun.com/xml/ns/j2ee"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"> 
-    <display-name>TradeEJBs</display-name>
-    <enterprise-beans>
-        <session>
-            <description>Trade Session EJB manages all Trading services</description>
-            <display-name>TradeEJB</display-name>
-            <ejb-name>TradeEJB</ejb-name>
-            <home>org.apache.geronimo.samples.daytrader.ejb.TradeHome</home>
-            <remote>org.apache.geronimo.samples.daytrader.ejb.Trade</remote>
-            <ejb-class>org.apache.geronimo.samples.daytrader.ejb.TradeBean</ejb-class>
-            <session-type>Stateless</session-type>
-            <transaction-type>Container</transaction-type>
-            <env-entry>
-                <env-entry-name>orderBySQLSupported</env-entry-name>
-                <env-entry-type>java.lang.Boolean</env-entry-type>
-                <env-entry-value>true</env-entry-value>
-            </env-entry>
-            <env-entry>
-                <env-entry-name>updateQuotePrices</env-entry-name>
-                <env-entry-type>java.lang.Boolean</env-entry-type>
-                <env-entry-value>true</env-entry-value>
-            </env-entry>
-            <ejb-ref>
-                <ejb-ref-name>ejb/Trade</ejb-ref-name>
-                <ejb-ref-type>Session</ejb-ref-type>
-                <home>org.apache.geronimo.samples.daytrader.ejb.TradeHome</home>
-                <remote>org.apache.geronimo.samples.daytrader.ejb.Trade</remote>
-                <ejb-link>TradeEJB</ejb-link>
-            </ejb-ref>
-            <ejb-local-ref>
-                <ejb-ref-name>ejb/Quote</ejb-ref-name>
-                <ejb-ref-type>Entity</ejb-ref-type>
-                <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalQuoteHome</local-home>
-                <local>org.apache.geronimo.samples.daytrader.ejb.LocalQuote</local>
-                <ejb-link>QuoteEJB</ejb-link>
-            </ejb-local-ref>
-            <ejb-local-ref>
-                <ejb-ref-name>ejb/Account</ejb-ref-name>
-                <ejb-ref-type>Entity</ejb-ref-type>
-                <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalAccountHome</local-home>
-                <local>org.apache.geronimo.samples.daytrader.ejb.LocalAccount</local>
-                <ejb-link>AccountEJB</ejb-link>
-            </ejb-local-ref>
-            <ejb-local-ref>
-                <ejb-ref-name>ejb/Holding</ejb-ref-name>
-                <ejb-ref-type>Entity</ejb-ref-type>
-                <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalHoldingHome</local-home>
-                <local>org.apache.geronimo.samples.daytrader.ejb.LocalHolding</local>
-                <ejb-link>HoldingEJB</ejb-link>
-            </ejb-local-ref>
-            <ejb-local-ref>
-                <ejb-ref-name>ejb/Order</ejb-ref-name>
-                <ejb-ref-type>Entity</ejb-ref-type>
-                <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalOrderHome</local-home>
-                <local>org.apache.geronimo.samples.daytrader.ejb.LocalOrder</local>
-                <ejb-link>OrderEJB</ejb-link>
-            </ejb-local-ref>
-            <ejb-local-ref>
-                <ejb-ref-name>ejb/KeySequence</ejb-ref-name>
-                <ejb-ref-type>Session</ejb-ref-type>
-                <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalKeySequenceHome</local-home>
-                <local>org.apache.geronimo.samples.daytrader.ejb.LocalKeySequence</local>
-                <ejb-link>KeySequenceEJB</ejb-link>
-            </ejb-local-ref>
-            <ejb-local-ref>
-                <ejb-ref-name>ejb/AccountProfile</ejb-ref-name>
-                <ejb-ref-type>Entity</ejb-ref-type>
-                <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalAccountProfileHome</local-home>
-                <local>org.apache.geronimo.samples.daytrader.ejb.LocalAccountProfile</local>
-                <ejb-link>AccountProfileEJB</ejb-link>
-            </ejb-local-ref>
-            <resource-ref>
-                <res-ref-name>jms/QueueConnectionFactory</res-ref-name>
-                <res-type>javax.jms.QueueConnectionFactory</res-type>
-                <res-auth>Application</res-auth>
-                <res-sharing-scope>Shareable</res-sharing-scope>
-            </resource-ref>
-            <resource-ref>
-                <res-ref-name>jms/TopicConnectionFactory</res-ref-name>
-                <res-type>javax.jms.TopicConnectionFactory</res-type>
-                <res-auth>Application</res-auth>
-                <res-sharing-scope>Shareable</res-sharing-scope>
-            </resource-ref>
-            <resource-ref>
-                <res-ref-name>jdbc/TradeDataSource</res-ref-name>
-                <res-type>javax.sql.DataSource</res-type>
-                <res-auth>Container</res-auth>
-                <res-sharing-scope>Shareable</res-sharing-scope>
-            </resource-ref>
-            <message-destination-ref>
-                <message-destination-ref-name>jms/TradeBrokerQueue</message-destination-ref-name>
-                <message-destination-type>javax.jms.Queue</message-destination-type>
-                <message-destination-usage>Produces</message-destination-usage>
-                <message-destination-link>TradeBrokerQueue</message-destination-link>
-            </message-destination-ref>
-            <message-destination-ref>
-                <message-destination-ref-name>jms/TradeStreamerTopic</message-destination-ref-name>
-                <message-destination-type>javax.jms.Topic</message-destination-type>
-                <message-destination-usage>Produces</message-destination-usage>
-                <message-destination-link>TradeStreamerTopic</message-destination-link>
-            </message-destination-ref>
-            <security-identity>
-                <description/>
-                <use-caller-identity/>
-            </security-identity>
-        </session>
-        <session>
-            <description>Trade JPA Session EJB manages all Trading services</description>
-            <display-name>TradeJPA</display-name>
-            <ejb-name>TradeJPA</ejb-name>
-            <home>org.apache.geronimo.samples.daytrader.ejb.TradeHome</home>
-            <remote>org.apache.geronimo.samples.daytrader.ejb.Trade</remote>
-            <ejb-class>org.apache.geronimo.samples.daytrader.TradeJPA</ejb-class>
-            <session-type>Stateless</session-type>
-            <transaction-type>Container</transaction-type>
-            <env-entry>
-                <env-entry-name>orderBySQLSupported</env-entry-name>
-                <env-entry-type>java.lang.Boolean</env-entry-type>
-                <env-entry-value>true</env-entry-value>
-            </env-entry>
-            <env-entry>
-                <env-entry-name>updateQuotePrices</env-entry-name>
-                <env-entry-type>java.lang.Boolean</env-entry-type>
-                <env-entry-value>true</env-entry-value>
-            </env-entry>
-            <env-entry>
-                <env-entry-name>publishQuotePriceChange</env-entry-name>
-                <env-entry-type>java.lang.Boolean</env-entry-type>
-                <env-entry-value>false</env-entry-value>
-            </env-entry>
-            <resource-ref>
-                <res-ref-name>jms/QueueConnectionFactory</res-ref-name>
-                <res-type>javax.jms.QueueConnectionFactory</res-type>
-                <res-auth>Application</res-auth>
-                <res-sharing-scope>Shareable</res-sharing-scope>
-            </resource-ref>
-            <resource-ref>
-                <res-ref-name>jms/TopicConnectionFactory</res-ref-name>
-                <res-type>javax.jms.TopicConnectionFactory</res-type>
-                <res-auth>Application</res-auth>
-                <res-sharing-scope>Shareable</res-sharing-scope>
-            </resource-ref>
-            <message-destination-ref>
-                <message-destination-ref-name>jms/TradeBrokerQueue</message-destination-ref-name>
-                <message-destination-type>javax.jms.Queue</message-destination-type>
-                <message-destination-usage>Produces</message-destination-usage>
-                <message-destination-link>TradeBrokerQueue</message-destination-link>
-            </message-destination-ref>
-            <message-destination-ref>
-                <message-destination-ref-name>jms/TradeStreamerTopic</message-destination-ref-name>
-                <message-destination-type>javax.jms.Topic</message-destination-type>
-                <message-destination-usage>Produces</message-destination-usage>
-                <message-destination-link>TradeStreamerTopic</message-destination-link>
-            </message-destination-ref>
-            <security-identity>
-                <description/>
-                <use-caller-identity/>
-            </security-identity>
-        </session>
-        <session>
-            <description>Trade JDBC Session EJB manages all Trading services</description>
-            <display-name>TradeJDBC</display-name>
-            <ejb-name>TradeJDBC</ejb-name>
-            <home>org.apache.geronimo.samples.daytrader.session.TradeJDBCHome</home>
-            <remote>org.apache.geronimo.samples.daytrader.session.TradeJDBC</remote>
-            <ejb-class>org.apache.geronimo.samples.daytrader.session.TradeJDBCBean</ejb-class>
-            <session-type>Stateless</session-type>
-            <transaction-type>Container</transaction-type>
-            <security-identity>
-                <description/>
-                <use-caller-identity/>
-            </security-identity>
-        </session>
-        <entity>
-            <display-name>HoldingEJB</display-name>
-            <ejb-name>HoldingEJB</ejb-name>
-            <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalHoldingHome</local-home>
-            <local>org.apache.geronimo.samples.daytrader.ejb.LocalHolding</local>
-            <ejb-class>org.apache.geronimo.samples.daytrader.ejb.HoldingBean</ejb-class>
-            <persistence-type>Container</persistence-type>
-            <prim-key-class>java.lang.Integer</prim-key-class>
-            <reentrant>false</reentrant>
-            <cmp-version>2.x</cmp-version>
-            <abstract-schema-name>Holding</abstract-schema-name>
-            <cmp-field>
-                <field-name>purchasePrice</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>holdingID</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>quantity</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>purchaseDate</field-name>
-            </cmp-field>
-            <primkey-field>holdingID</primkey-field>
-            <security-identity>
-                <description/>
-                <use-caller-identity/>
-            </security-identity>
-            <query>
-                <description/>
-                <query-method>
-                    <method-name>ejbSelectQuoteFromSymbol</method-name>
-                    <method-params>
-                        <method-param>java.lang.String</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(q) from Quote q WHERE q.symbol = ?1</ejb-ql>
-            </query>
-            <query>
-                <description/>
-                <query-method>
-                    <method-name>findAll</method-name>
-                    <method-params/>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(h) from Holding h</ejb-ql>
-            </query>
-            <query>
-                <description/>
-                <query-method>
-                    <method-name>findByUserID</method-name>
-                    <method-params>
-                        <method-param>java.lang.String</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(h) FROM Holding h WHERE
-                    h.account.profile.userID  = ?1</ejb-ql>
-            </query>
-            <query>
-                <description/>
-                <query-method>
-                    <method-name>findByAccountID</method-name>
-                    <method-params>
-                        <method-param>java.lang.Integer</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(h) FROM Holding h WHERE
-                    h.account.accountID  = ?1</ejb-ql>
-            </query>
-            <query>
-                <query-method>
-                    <method-name>findByPrimaryKeyForUpdate</method-name>
-                    <method-params>
-                        <method-param>java.lang.Integer</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(h) FROM Holding h WHERE
-                    h.holdingID = ?1</ejb-ql>
-            </query>
-        </entity>
-        <message-driven>
-            <display-name>TradeBrokerMDB</display-name>
-            <ejb-name>TradeBrokerMDB</ejb-name>
-            <ejb-class>org.apache.geronimo.samples.daytrader.ejb.TradeBrokerMDB</ejb-class>
-            <transaction-type>Container</transaction-type>
-            <message-destination-type>javax.jms.Queue</message-destination-type>
-            <message-destination-link>TradeBrokerQueue</message-destination-link>
-            <env-entry>
-                <env-entry-name>statInterval</env-entry-name>
-                <env-entry-type>java.lang.Integer</env-entry-type>
-                <env-entry-value>100</env-entry-value>
-            </env-entry>
-            <ejb-ref>
-                <ejb-ref-name>ejb/Trade</ejb-ref-name>
-                <ejb-ref-type>Session</ejb-ref-type>
-                <home>org.apache.geronimo.samples.daytrader.ejb.TradeHome</home>
-                <remote>org.apache.geronimo.samples.daytrader.ejb.Trade</remote>
-                <ejb-link>TradeEJB</ejb-link>
-            </ejb-ref>
-        </message-driven>
-        <entity>
-            <display-name>AccountProfileEJB</display-name>
-            <ejb-name>AccountProfileEJB</ejb-name>
-            <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalAccountProfileHome</local-home>
-            <local>org.apache.geronimo.samples.daytrader.ejb.LocalAccountProfile</local>
-            <ejb-class>org.apache.geronimo.samples.daytrader.ejb.AccountProfileBean</ejb-class>
-            <persistence-type>Container</persistence-type>
-            <prim-key-class>java.lang.String</prim-key-class>
-            <reentrant>false</reentrant>
-            <cmp-version>2.x</cmp-version>
-            <abstract-schema-name>AccountProfile</abstract-schema-name>
-            <cmp-field>
-                <field-name>address</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>passwd</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>userID</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>email</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>creditCard</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>fullName</field-name>
-            </cmp-field>
-            <primkey-field>userID</primkey-field>
-            <security-identity>
-                <description/>
-                <use-caller-identity/>
-            </security-identity>
-            <query id="Query_5">
-                <description/>
-                <query-method>
-                    <method-name>findAll</method-name>
-                    <method-params/>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(a) FROM AccountProfile a</ejb-ql>
-            </query>
-            <query>
-                <description/>
-                <query-method>
-                    <method-name>findByPrimaryKeyForUpdate</method-name>
-                    <method-params>
-                        <method-param>java.lang.String</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(a) FROM AccountProfile a where
-                    a.userID = ?1</ejb-ql>
-            </query>
-        </entity>
-        <entity>
-            <description>Stock price quotes including current, open, high, low, etc.</description>
-            <display-name>QuoteEJB</display-name>
-            <ejb-name>QuoteEJB</ejb-name>
-            <home>org.apache.geronimo.samples.daytrader.ejb.QuoteHome</home>
-            <remote>org.apache.geronimo.samples.daytrader.ejb.Quote</remote>
-            <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalQuoteHome</local-home>
-            <local>org.apache.geronimo.samples.daytrader.ejb.LocalQuote</local>
-            <ejb-class>org.apache.geronimo.samples.daytrader.ejb.QuoteBean</ejb-class>
-            <persistence-type>Container</persistence-type>
-            <prim-key-class>java.lang.String</prim-key-class>
-            <reentrant>false</reentrant>
-            <cmp-version>2.x</cmp-version>
-            <abstract-schema-name>Quote</abstract-schema-name>
-            <cmp-field>
-                <field-name>low</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>open</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>volume</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>price</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>high</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>companyName</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>symbol</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>change</field-name>
-            </cmp-field>
-            <primkey-field>symbol</primkey-field>
-            <security-identity>
-                <description/>
-                <use-caller-identity/>
-            </security-identity>
-            <query id="Query_6">
-                <description/>
-                <query-method>
-                    <method-name>findAll</method-name>
-                    <method-params/>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(q) FROM Quote q</ejb-ql>
-            </query>
-            <query>
-                <description/>
-                <query-method>
-                    <method-name>findQuotes</method-name>
-                    <method-params>
-                        <method-param>java.lang.String</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(q) FROM Quote q</ejb-ql>
-            </query>
-            <query>
-                <description/>
-                <query-method>
-                    <method-name>findOne</method-name>
-                    <method-params/>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(q) FROM Quote q where q.symbol = 's:0'</ejb-ql>
-            </query>
-            <query>
-                <query-method>
-                    <method-name>findTSIAQuotesOrderByChange</method-name>
-                    <method-params/>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(q) FROM Quote q WHERE q.symbol LIKE 's:1__' ORDER BY q.change DESC</ejb-ql>
-            </query>
-            <query id="Query_10">
-                <description/>
-                <query-method>
-                    <method-name>ejbSelectTotalVolume</method-name>
-                    <method-params/>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT q.volume FROM Quote q</ejb-ql>
-            </query>
-            <query>
-                <query-method>
-                    <method-name>findTSIAQuotes</method-name>
-                    <method-params/>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(q) FROM Quote q WHERE q.symbol LIKE 's:1__'</ejb-ql>
-            </query>
-            <query>
-                <query-method>
-                    <method-name>findByPrimaryKeyForUpdate</method-name>
-                    <method-params>
-                        <method-param>java.lang.String</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(q) FROM Quote q where q.symbol = ?1</ejb-ql>
-            </query>
-        </entity>
-        <session>
-            <display-name>KeySequenceEJB</display-name>
-            <ejb-name>KeySequenceEJB</ejb-name>
-            <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalKeySequenceHome</local-home>
-            <local>org.apache.geronimo.samples.daytrader.ejb.LocalKeySequence</local>
-            <ejb-class>org.apache.geronimo.samples.daytrader.ejb.KeySequenceBean</ejb-class>
-            <session-type>Stateless</session-type>
-            <transaction-type>Container</transaction-type>
-            <ejb-local-ref>
-                <ejb-ref-name>ejb/KeyGen</ejb-ref-name>
-                <ejb-ref-type>Entity</ejb-ref-type>
-                <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalKeyGenHome</local-home>
-                <local>org.apache.geronimo.samples.daytrader.ejb.LocalKeyGen</local>
-                <ejb-link>KeyGenEJB</ejb-link>
-            </ejb-local-ref>
-            <security-identity>
-                <description/>
-                <use-caller-identity/>
-            </security-identity>
-        </session>
-        <entity>
-            <display-name>KeyGenEJB</display-name>
-            <ejb-name>KeyGenEJB</ejb-name>
-            <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalKeyGenHome</local-home>
-            <local>org.apache.geronimo.samples.daytrader.ejb.LocalKeyGen</local>
-            <ejb-class>org.apache.geronimo.samples.daytrader.ejb.KeyGenBean</ejb-class>
-            <persistence-type>Container</persistence-type>
-            <prim-key-class>java.lang.String</prim-key-class>
-            <reentrant>false</reentrant>
-            <cmp-version>2.x</cmp-version>
-            <abstract-schema-name>KeyGen</abstract-schema-name>
-            <cmp-field>
-                <field-name>keyVal</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>keyName</field-name>
-            </cmp-field>
-            <primkey-field>keyName</primkey-field>
-            <security-identity>
-                <description/>
-                <use-caller-identity/>
-            </security-identity>
-            <query>
-                <query-method>
-                    <method-name>findByPrimaryKeyForUpdate</method-name>
-                    <method-params>
-                        <method-param>java.lang.String</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(kg) FROM KeyGen kg where
-                    kg.keyName = ?1</ejb-ql>
-            </query>
-        </entity>
-        <entity>
-            <display-name>AccountEJB</display-name>
-            <ejb-name>AccountEJB</ejb-name>
-            <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalAccountHome</local-home>
-            <local>org.apache.geronimo.samples.daytrader.ejb.LocalAccount</local>
-            <ejb-class>org.apache.geronimo.samples.daytrader.ejb.AccountBean</ejb-class>
-            <persistence-type>Container</persistence-type>
-            <prim-key-class>java.lang.Integer</prim-key-class>
-            <reentrant>false</reentrant>
-            <cmp-version>2.x</cmp-version>
-            <abstract-schema-name>Account</abstract-schema-name>
-            <cmp-field>
-                <field-name>creationDate</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>openBalance</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>logoutCount</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>balance</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>accountID</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>lastLogin</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>loginCount</field-name>
-            </cmp-field>
-            <primkey-field>accountID</primkey-field>
-            <ejb-local-ref>
-                <ejb-ref-name>ejb/AccountProfile</ejb-ref-name>
-                <ejb-ref-type>Entity</ejb-ref-type>
-                <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalAccountProfileHome</local-home>
-                <local>org.apache.geronimo.samples.daytrader.ejb.LocalAccountProfile</local>
-                <ejb-link>AccountProfileEJB</ejb-link>
-            </ejb-local-ref>
-            <security-identity>
-                <description/>
-                <use-caller-identity/>
-            </security-identity>
-            <query>
-                <description/>
-                <query-method>
-                    <method-name>findByUserID</method-name>
-                    <method-params>
-                        <method-param>java.lang.String</method-param>
-                    </method-params>
-                </query-method>
-                <ejb-ql>SELECT OBJECT(a) FROM Account a WHERE
-                    a.profile.userID = ?1</ejb-ql>
-            </query>
-            <query>
-                <description/>
-                <query-method>
-                    <method-name>findAll</method-name>
-                    <method-params/>
-                </query-method>
-                <ejb-ql>SELECT OBJECT(a) FROM Account a</ejb-ql>
-            </query>
-            <query>
-                <query-method>
-                    <method-name>findByUserIDForUpdate</method-name>
-                    <method-params>
-                        <method-param>java.lang.String</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(a) FROM Account a WHERE
-                    a.profile.userID = ?1</ejb-ql>
-            </query>
-            <query>
-                <query-method>
-                    <method-name>ejbSelectClosedOrders</method-name>
-                    <method-params>
-                        <method-param>java.lang.Integer</method-param>
-                    </method-params>
-                </query-method>
-                <ejb-ql>SELECT o.orderID FROM Orders o WHERE
-                    o.orderStatus = 'closed' AND o.account.accountID  = ?1</ejb-ql>
-            </query>
-            <query>
-                <query-method>
-                    <method-name>findByPrimaryKeyForUpdate</method-name>
-                    <method-params>
-                        <method-param>java.lang.Integer</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(a) FROM Account a where
-                    a.accountID = ?1</ejb-ql>
-            </query>
-        </entity>
-        <entity>
-            <display-name>OrderEJB</display-name>
-            <ejb-name>OrderEJB</ejb-name>
-            <local-home>org.apache.geronimo.samples.daytrader.ejb.LocalOrderHome</local-home>
-            <local>org.apache.geronimo.samples.daytrader.ejb.LocalOrder</local>
-            <ejb-class>org.apache.geronimo.samples.daytrader.ejb.OrderBean</ejb-class>
-            <persistence-type>Container</persistence-type>
-            <prim-key-class>java.lang.Integer</prim-key-class>
-            <reentrant>false</reentrant>
-            <cmp-version>2.x</cmp-version>
-            <abstract-schema-name>Orders</abstract-schema-name>
-            <cmp-field>
-                <field-name>orderFee</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>completionDate</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>orderType</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>orderStatus</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>price</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>quantity</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>openDate</field-name>
-            </cmp-field>
-            <cmp-field>
-                <field-name>orderID</field-name>
-            </cmp-field>
-            <primkey-field>orderID</primkey-field>
-            <security-identity>
-                <description/>
-                <use-caller-identity/>
-            </security-identity>
-            <query>
-                <description/>
-                <query-method>
-                    <method-name>findAll</method-name>
-                    <method-params/>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(o) FROM Orders o</ejb-ql>
-            </query>
-            <query>
-                <description/>
-                <query-method>
-                    <method-name>findClosedOrders</method-name>
-                    <method-params>
-                        <method-param>java.lang.String</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(o) FROM Orders o WHERE
-                    o.orderStatus = 'closed' AND
-                    o.account.profile.userID  = ?1</ejb-ql>
-            </query>
-            <query>
-                <description/>
-                <query-method>
-                    <method-name>findByUserID</method-name>
-                    <method-params>
-                        <method-param>java.lang.String</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(o) FROM Orders o WHERE
-                    o.account.profile.userID  = ?1 ORDER BY o.orderID DESC</ejb-ql>
-            </query>
-            <query>
-                <query-method>
-                    <method-name>findByPrimaryKeyForUpdate</method-name>
-                    <method-params>
-                        <method-param>java.lang.Integer</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(o) FROM Orders o WHERE o.orderID = ?1</ejb-ql>
-            </query>
-            <query>
-                <query-method>
-                    <method-name>findClosedOrdersForUpdate</method-name>
-                    <method-params>
-                        <method-param>java.lang.String</method-param>
-                    </method-params>
-                </query-method>
-                <result-type-mapping>Local</result-type-mapping>
-                <ejb-ql>SELECT OBJECT(o) FROM Orders o WHERE
-                    o.orderStatus = 'closed' AND
-                    o.account.profile.userID  = ?1</ejb-ql>
-            </query>
-        </entity>
-        <message-driven>
-            <ejb-name>TradeStreamerMDB</ejb-name>
-            <ejb-class>org.apache.geronimo.samples.daytrader.ejb.TradeStreamerMDB</ejb-class>
-            <transaction-type>Container</transaction-type>
-            <message-destination-type>javax.jms.Topic</message-destination-type>
-            <message-destination-link>TradeStreamerTopic</message-destination-link>
-            <env-entry>
-                <env-entry-name>statInterval</env-entry-name>
-                <env-entry-type>java.lang.Integer</env-entry-type>
-                <env-entry-value>100</env-entry-value>
-            </env-entry>
-        </message-driven>
-    </enterprise-beans>
-    <relationships>
-        <ejb-relation>
-            <ejb-relation-name>Account-Orders</ejb-relation-name>
-            <ejb-relationship-role>
-                <ejb-relationship-role-name>AccountEJB</ejb-relationship-role-name>
-                <multiplicity>One</multiplicity>
-                <relationship-role-source>
-                    <ejb-name>AccountEJB</ejb-name>
-                </relationship-role-source>
-                <cmr-field>
-                    <cmr-field-name>orders</cmr-field-name>
-                    <cmr-field-type>java.util.Collection</cmr-field-type>
-                </cmr-field>
-            </ejb-relationship-role>
-            <ejb-relationship-role>
-                <ejb-relationship-role-name>Order-Has-Account</ejb-relationship-role-name>
-                <multiplicity>Many</multiplicity>
-                <cascade-delete/>
-                <relationship-role-source>
-                    <ejb-name>OrderEJB</ejb-name>
-                </relationship-role-source>
-                <cmr-field>
-                    <cmr-field-name>account</cmr-field-name>
-                </cmr-field>
-            </ejb-relationship-role>
-        </ejb-relation>
-        <ejb-relation>
-            <ejb-relation-name>Account-AccountProfile</ejb-relation-name>
-            <ejb-relationship-role>
-                <ejb-relationship-role-name>Account-Has-AccountProfile</ejb-relationship-role-name>
-                <multiplicity>One</multiplicity>
-                <relationship-role-source>
-                    <ejb-name>AccountEJB</ejb-name>
-                </relationship-role-source>
-                <cmr-field>
-                    <cmr-field-name>profile</cmr-field-name>
-                </cmr-field>
-            </ejb-relationship-role>
-            <ejb-relationship-role>
-                <ejb-relationship-role-name>AccountProfileEJB</ejb-relationship-role-name>
-                <multiplicity>One</multiplicity>
-                <cascade-delete/>
-                <relationship-role-source>
-                    <ejb-name>AccountProfileEJB</ejb-name>
-                </relationship-role-source>
-                <cmr-field>
-                    <cmr-field-name>account</cmr-field-name>
-                </cmr-field>
-            </ejb-relationship-role>
-        </ejb-relation>
-        <ejb-relation>
-            <ejb-relation-name>Account-Holdings</ejb-relation-name>
-            <ejb-relationship-role>
-                <ejb-relationship-role-name>AccountEJB</ejb-relationship-role-name>
-                <multiplicity>One</multiplicity>
-                <relationship-role-source>
-                    <ejb-name>AccountEJB</ejb-name>
-                </relationship-role-source>
-                <cmr-field>
-                    <cmr-field-name>holdings</cmr-field-name>
-                    <cmr-field-type>java.util.Collection</cmr-field-type>
-                </cmr-field>
-            </ejb-relationship-role>
-            <ejb-relationship-role>
-                <ejb-relationship-role-name>Holding-Has-Account</ejb-relationship-role-name>
-                <multiplicity>Many</multiplicity>
-                <cascade-delete/>
-                <relationship-role-source>
-                    <ejb-name>HoldingEJB</ejb-name>
-                </relationship-role-source>
-                <cmr-field>
-                    <cmr-field-name>account</cmr-field-name>
-                </cmr-field>
-            </ejb-relationship-role>
-        </ejb-relation>
-        <ejb-relation>
-            <ejb-relation-name>Quote-Holdings</ejb-relation-name>
-            <ejb-relationship-role>
-                <ejb-relationship-role-name>Holding-Has-Quote</ejb-relationship-role-name>
-                <multiplicity>Many</multiplicity>
-                <relationship-role-source>
-                    <ejb-name>HoldingEJB</ejb-name>
-                </relationship-role-source>
-                <cmr-field>
-                    <cmr-field-name>quote</cmr-field-name>
-                </cmr-field>
-            </ejb-relationship-role>
-            <ejb-relationship-role>
-                <ejb-relationship-role-name>QuoteEJB</ejb-relationship-role-name>
-                <multiplicity>One</multiplicity>
-                <relationship-role-source>
-                    <ejb-name>QuoteEJB</ejb-name>
-                </relationship-role-source>
-            </ejb-relationship-role>
-        </ejb-relation>
-        <ejb-relation>
-            <ejb-relation-name>Quote-Orders</ejb-relation-name>
-            <ejb-relationship-role>
-                <ejb-relationship-role-name>Order-Has-Quote</ejb-relationship-role-name>
-                <multiplicity>Many</multiplicity>
-                <cascade-delete/>
-                <relationship-role-source>
-                    <ejb-name>OrderEJB</ejb-name>
-                </relationship-role-source>
-                <cmr-field>
-                    <cmr-field-name>quote</cmr-field-name>
-                </cmr-field>
-            </ejb-relationship-role>
-            <ejb-relationship-role>
-                <ejb-relationship-role-name>QuoteEJB</ejb-relationship-role-name>
-                <multiplicity>One</multiplicity>
-                <relationship-role-source>
-                    <ejb-name>QuoteEJB</ejb-name>
-                </relationship-role-source>
-                <cmr-field>
-                    <cmr-field-name>orders</cmr-field-name>
-                    <cmr-field-type>java.util.Collection</cmr-field-type>
-                </cmr-field>
-            </ejb-relationship-role>
-        </ejb-relation>
-        <ejb-relation>
-            <ejb-relation-name>Order-Holding</ejb-relation-name>
-            <ejb-relationship-role>
-                <ejb-relationship-role-name>Order-Has-Holding</ejb-relationship-role-name>
-                <multiplicity>One</multiplicity>
-                <relationship-role-source>
-                    <ejb-name>OrderEJB</ejb-name>
-                </relationship-role-source>
-                <cmr-field>
-                    <cmr-field-name>holding</cmr-field-name>
-                </cmr-field>
-            </ejb-relationship-role>
-            <ejb-relationship-role>
-                <ejb-relationship-role-name>HoldingEJB</ejb-relationship-role-name>
-                <multiplicity>One</multiplicity>
-                <cascade-delete/>
-                <relationship-role-source>
-                    <ejb-name>HoldingEJB</ejb-name>
-                </relationship-role-source>
-            </ejb-relationship-role>
-        </ejb-relation>
-    </relationships>
-    <assembly-descriptor>
-        <method-permission>
-            <description>UncheckedPermission:+:Unchecked method permission</description>
-            <unchecked/>
-            <method>
-                <ejb-name>AccountEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>AccountProfileEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>HoldingEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>KeyGenEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>KeySequenceEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>OrderEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>QuoteEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>TradeEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>TradeJDBC</ejb-name>
-                <method-name>*</method-name>
-            </method>
-        </method-permission>
-        <container-transaction>
-            <method>
-                <ejb-name>TradeEJB</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>publishQuotePriceChange</method-name>
-                <method-params>
-                    <method-param>org.apache.geronimo.samples.daytrader.QuoteDataBean</method-param>
-                    <method-param>java.math.BigDecimal</method-param>
-                    <method-param>java.math.BigDecimal</method-param>
-                    <method-param>double</method-param>
-                </method-params>
-            </method>
-            <method>
-                <ejb-name>TradeEJB</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>cancelOrderOnePhase</method-name>
-                <method-params>
-                    <method-param>java.lang.Integer</method-param>
-                </method-params>
-            </method>
-            <method>
-                <ejb-name>TradeEJB</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>completeOrderOnePhaseDirect</method-name>
-                <method-params>
-                    <method-param>java.lang.Integer</method-param>
-                </method-params>
-            </method>
-            <method>
-                <ejb-name>TradeEJB</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>queueOrderOnePhase</method-name>
-                <method-params>
-                    <method-param>java.lang.Integer</method-param>
-                </method-params>
-            </method>
-            <method>
-                <ejb-name>TradeJPA</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>publishQuotePriceChange</method-name>
-                <method-params>
-                    <method-param>org.apache.geronimo.samples.daytrader.QuoteDataBean</method-param>
-                    <method-param>java.math.BigDecimal</method-param>
-                    <method-param>java.math.BigDecimal</method-param>
-                    <method-param>double</method-param>
-                </method-params>
-            </method>
-            <method>
-                <ejb-name>TradeJPA</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>cancelOrderOnePhase</method-name>
-                <method-params>
-                    <method-param>java.lang.Integer</method-param>
-                </method-params>
-            </method>
-            <method>
-                <ejb-name>TradeJPA</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>completeOrderOnePhaseDirect</method-name>
-                <method-params>
-                    <method-param>java.lang.Integer</method-param>
-                </method-params>
-            </method>
-            <method>
-                <ejb-name>TradeJPA</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>queueOrderOnePhase</method-name>
-                <method-params>
-                    <method-param>java.lang.Integer</method-param>
-                </method-params>
-            </method>
-            <method>
-        		<ejb-name>TradeJDBC</ejb-name>
-        		<method-intf>Remote</method-intf>
-        		<method-name>cancelOrderOnePhase</method-name>
-        		<method-params>
-        			<method-param>java.lang.Integer</method-param>
-        		</method-params>
-        	</method>
-        	<method>
-        		<ejb-name>TradeJDBC</ejb-name>
-        		<method-intf>Remote</method-intf>
-        		<method-name>completeOrderOnePhaseDirect</method-name>
-        		<method-params>
-        			<method-param>java.lang.Integer</method-param>
-        		</method-params>
-        	</method>
-        	<method>
-        		<ejb-name>TradeJDBC</ejb-name>
-        		<method-intf>Remote</method-intf>
-        		<method-name>publishQuotePriceChange</method-name>
-        		<method-params>
-        			<method-param>com.ibm.websphere.samples.trade.QuoteDataBean</method-param>
-        			<method-param>java.math.BigDecimal</method-param>
-        			<method-param>java.math.BigDecimal</method-param>
-        			<method-param>double</method-param>
-        		</method-params>
-        	</method>
-        	<method>
-        		<ejb-name>TradeJDBC</ejb-name>
-        		<method-intf>Remote</method-intf>
-        		<method-name>queueOrderOnePhase</method-name>
-        		<method-params>
-        			<method-param>java.lang.Integer</method-param>
-        		</method-params>
-        	</method>
-            <trans-attribute>RequiresNew</trans-attribute>
-        </container-transaction>
-        <container-transaction>
-            <method>
-                <ejb-name>TradeEJB</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>cancelOrderOnePhaseDirect</method-name>
-                <method-params>
-                    <method-param>java.lang.Integer</method-param>
-                </method-params>
-            </method>
-            <method>
-                <ejb-name>TradeEJB</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>completeOrderOnePhaseDirect</method-name>
-                <method-params>
-                    <method-param>java.lang.Integer</method-param>
-                </method-params>
-            </method>
-            <method>
-                <ejb-name>TradeEJB</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>resetTrade</method-name>
-                <method-params>
-                    <method-param>boolean</method-param>
-                </method-params>
-            </method>
-            <method>
-                <ejb-name>TradeJPA</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>cancelOrderOnePhaseDirect</method-name>
-                <method-params>
-                    <method-param>java.lang.Integer</method-param>
-                </method-params>
-            </method>
-            <method>
-                <ejb-name>TradeJPA</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>completeOrderOnePhaseDirect</method-name>
-                <method-params>
-                    <method-param>java.lang.Integer</method-param>
-                </method-params>
-            </method>
-            <method>
-                <ejb-name>TradeJPA</ejb-name>
-                <method-intf>Remote</method-intf>
-                <method-name>resetTrade</method-name>
-                <method-params>
-                    <method-param>boolean</method-param>
-                </method-params>
-            </method>
-            <method>
-        		<ejb-name>TradeJDBC</ejb-name>
-        		<method-intf>Remote</method-intf>
-        		<method-name>cancelOrderOnePhaseDirect</method-name>
-        		<method-params>
-        			<method-param>java.lang.Integer</method-param>
-        		</method-params>
-        	</method>
-        	<method>
-        		<ejb-name>TradeJDBC</ejb-name>
-        		<method-intf>Remote</method-intf>
-        		<method-name>completeOrderOnePhaseDirect</method-name>
-        		<method-params>
-        			<method-param>java.lang.Integer</method-param>
-        		</method-params>
-        	</method>
-        	<method>
-        		<ejb-name>TradeJDBC</ejb-name>
-        		<method-intf>Remote</method-intf>
-        		<method-name>resetTrade</method-name>
-        		<method-params>
-        			<method-param>boolean</method-param>
-        		</method-params>
-        	</method>
-            <trans-attribute>NotSupported</trans-attribute>
-        </container-transaction>
-        <container-transaction>
-            <method>
-                <ejb-name>AccountEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>AccountProfileEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>HoldingEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>KeyGenEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>KeySequenceEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>OrderEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>QuoteEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>TradeBrokerMDB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>TradeEJB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>TradeJPA</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-                <ejb-name>TradeStreamerMDB</ejb-name>
-                <method-name>*</method-name>
-            </method>
-            <method>
-        		<ejb-name>TradeJDBC</ejb-name>
-        		<method-name>*</method-name>
-        	</method>
-            <trans-attribute>Required</trans-attribute>
-        </container-transaction>
-        <message-destination>
-            <message-destination-name>TradeBrokerQueue</message-destination-name>
-        </message-destination>
-        <message-destination>
-            <message-destination-name>TradeStreamerTopic</message-destination-name>
-        </message-destination>
-    </assembly-descriptor>
+<ejb-jar version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/j2ee/ejb-jar_3_0.xsd">
+	<display-name>TradeEJBs</display-name>
+	<enterprise-beans>
+		<session>
+			<description>
+				Trade Session EJB manages all Trading services
+			</description>
+			<display-name>TradeEJB</display-name>
+			<ejb-name>TradeEJB</ejb-name>
+			<home>
+				org.apache.geronimo.samples.daytrader.ejb.TradeHome
+			</home>
+			<remote>
+				org.apache.geronimo.samples.daytrader.ejb.Trade
+			</remote>
+			<ejb-class>
+				org.apache.geronimo.samples.daytrader.ejb.TradeBean
+			</ejb-class>
+			<session-type>Stateless</session-type>
+			<transaction-type>Container</transaction-type>
+			<env-entry>
+				<env-entry-name>orderBySQLSupported</env-entry-name>
+				<env-entry-type>java.lang.Boolean</env-entry-type>
+				<env-entry-value>true</env-entry-value>
+			</env-entry>
+			<env-entry>
+				<env-entry-name>updateQuotePrices</env-entry-name>
+				<env-entry-type>java.lang.Boolean</env-entry-type>
+				<env-entry-value>true</env-entry-value>
+			</env-entry>
+			<ejb-ref>
+				<ejb-ref-name>ejb/Trade</ejb-ref-name>
+				<ejb-ref-type>Session</ejb-ref-type>
+				<home>
+					org.apache.geronimo.samples.daytrader.ejb.TradeHome
+				</home>
+				<remote>
+					org.apache.geronimo.samples.daytrader.ejb.Trade
+				</remote>
+				<ejb-link>TradeEJB</ejb-link>
+			</ejb-ref>
+			<ejb-local-ref>
+				<ejb-ref-name>ejb/Quote</ejb-ref-name>
+				<ejb-ref-type>Entity</ejb-ref-type>
+				<local-home>
+					org.apache.geronimo.samples.daytrader.ejb.LocalQuoteHome
+				</local-home>
+				<local>
+					org.apache.geronimo.samples.daytrader.ejb.LocalQuote
+				</local>
+				<ejb-link>QuoteEJB</ejb-link>
+			</ejb-local-ref>
+			<ejb-local-ref>
+				<ejb-ref-name>ejb/Account</ejb-ref-name>
+				<ejb-ref-type>Entity</ejb-ref-type>
+				<local-home>
+					org.apache.geronimo.samples.daytrader.ejb.LocalAccountHome
+				</local-home>
+				<local>
+					org.apache.geronimo.samples.daytrader.ejb.LocalAccount
+				</local>
+				<ejb-link>AccountEJB</ejb-link>
+			</ejb-local-ref>
+			<ejb-local-ref>
+				<ejb-ref-name>ejb/Holding</ejb-ref-name>
+				<ejb-ref-type>Entity</ejb-ref-type>
+				<local-home>
+					org.apache.geronimo.samples.daytrader.ejb.LocalHoldingHome
+				</local-home>
+				<local>
+					org.apache.geronimo.samples.daytrader.ejb.LocalHolding
+				</local>
+				<ejb-link>HoldingEJB</ejb-link>
+			</ejb-local-ref>
+			<ejb-local-ref>
+				<ejb-ref-name>ejb/Order</ejb-ref-name>
+				<ejb-ref-type>Entity</ejb-ref-type>
+				<local-home>
+					org.apache.geronimo.samples.daytrader.ejb.LocalOrderHome
+				</local-home>
+				<local>
+					org.apache.geronimo.samples.daytrader.ejb.LocalOrder
+				</local>
+				<ejb-link>OrderEJB</ejb-link>
+			</ejb-local-ref>
+			<ejb-local-ref>
+				<ejb-ref-name>ejb/KeySequence</ejb-ref-name>
+				<ejb-ref-type>Session</ejb-ref-type>
+				<local-home>
+					org.apache.geronimo.samples.daytrader.ejb.LocalKeySequenceHome
+				</local-home>
+				<local>
+					org.apache.geronimo.samples.daytrader.ejb.LocalKeySequence
+				</local>
+				<ejb-link>KeySequenceEJB</ejb-link>
+			</ejb-local-ref>
+			<ejb-local-ref>
+				<ejb-ref-name>ejb/AccountProfile</ejb-ref-name>
+				<ejb-ref-type>Entity</ejb-ref-type>
+				<local-home>
+					org.apache.geronimo.samples.daytrader.ejb.LocalAccountProfileHome
+				</local-home>
+				<local>
+					org.apache.geronimo.samples.daytrader.ejb.LocalAccountProfile
+				</local>
+				<ejb-link>AccountProfileEJB</ejb-link>
+			</ejb-local-ref>
+			<resource-ref>
+				<res-ref-name>jms/QueueConnectionFactory</res-ref-name>
+				<res-type>javax.jms.QueueConnectionFactory</res-type>
+				<res-auth>Application</res-auth>
+				<res-sharing-scope>Shareable</res-sharing-scope>
+			</resource-ref>
+			<resource-ref>
+				<res-ref-name>jms/TopicConnectionFactory</res-ref-name>
+				<res-type>javax.jms.TopicConnectionFactory</res-type>
+				<res-auth>Application</res-auth>
+				<res-sharing-scope>Shareable</res-sharing-scope>
+			</resource-ref>
+			<resource-ref>
+				<res-ref-name>jdbc/TradeDataSource</res-ref-name>
+				<res-type>javax.sql.DataSource</res-type>
+				<res-auth>Container</res-auth>
+				<res-sharing-scope>Shareable</res-sharing-scope>
+			</resource-ref>
+			<message-destination-ref>
+				<message-destination-ref-name>
+					jms/TradeBrokerQueue
+				</message-destination-ref-name>
+				<message-destination-type>
+					javax.jms.Queue
+				</message-destination-type>
+				<message-destination-usage>
+					Produces
+				</message-destination-usage>
+				<message-destination-link>
+					TradeBrokerQueue
+				</message-destination-link>
+			</message-destination-ref>
+			<message-destination-ref>
+				<message-destination-ref-name>
+					jms/TradeStreamerTopic
+				</message-destination-ref-name>
+				<message-destination-type>
+					javax.jms.Topic
+				</message-destination-type>
+				<message-destination-usage>
+					Produces
+				</message-destination-usage>
+				<message-destination-link>
+					TradeStreamerTopic
+				</message-destination-link>
+			</message-destination-ref>
+			<security-identity>
+				<description />
+				<use-caller-identity />
+			</security-identity>
+		</session>
+		<session>
+			<description>
+				Trade JPA Session EJB manages all Trading services
+			</description>
+			<display-name>TradeJPA</display-name>
+			<ejb-name>TradeJPA</ejb-name>
+			<
+			<home>
+				org.apache.geronimo.samples.daytrader.ejb.TradeHome
+			</home>
+			<remote>
+				org.apache.geronimo.samples.daytrader.ejb.Trade
+			</remote>
+			<ejb-class>
+				org.apache.geronimo.samples.daytrader.TradeJPA
+			</ejb-class>
+			<session-type>Stateless</session-type>
+			<transaction-type>Container</transaction-type>
+			<env-entry>
+				<env-entry-name>orderBySQLSupported</env-entry-name>
+				<env-entry-type>java.lang.Boolean</env-entry-type>
+				<env-entry-value>true</env-entry-value>
+			</env-entry>
+			<env-entry>
+				<env-entry-name>updateQuotePrices</env-entry-name>
+				<env-entry-type>java.lang.Boolean</env-entry-type>
+				<env-entry-value>true</env-entry-value>
+			</env-entry>
+			<env-entry>
+				<env-entry-name>publishQuotePriceChange</env-entry-name>
+				<env-entry-type>java.lang.Boolean</env-entry-type>
+				<env-entry-value>false</env-entry-value>
+			</env-entry>
+			<resource-ref>
+				<res-ref-name>jms/QueueConnectionFactory</res-ref-name>
+				<res-type>javax.jms.QueueConnectionFactory</res-type>
+				<res-auth>Application</res-auth>
+				<res-sharing-scope>Shareable</res-sharing-scope>
+			</resource-ref>
+			<resource-ref>
+				<res-ref-name>jms/TopicConnectionFactory</res-ref-name>
+				<res-type>javax.jms.TopicConnectionFactory</res-type>
+				<res-auth>Application</res-auth>
+				<res-sharing-scope>Shareable</res-sharing-scope>
+			</resource-ref>
+			<message-destination-ref>
+				<message-destination-ref-name>
+					jms/TradeBrokerQueue
+				</message-destination-ref-name>
+				<message-destination-type>
+					javax.jms.Queue
+				</message-destination-type>
+				<message-destination-usage>
+					Produces
+				</message-destination-usage>
+				<message-destination-link>
+					TradeBrokerQueue
+				</message-destination-link>
+			</message-destination-ref>
+			<message-destination-ref>
+				<message-destination-ref-name>
+					jms/TradeStreamerTopic
+				</message-destination-ref-name>
+				<message-destination-type>
+					javax.jms.Topic
+				</message-destination-type>
+				<message-destination-usage>
+					Produces
+				</message-destination-usage>
+				<message-destination-link>
+					TradeStreamerTopic
+				</message-destination-link>
+			</message-destination-ref>
+			<security-identity>
+				<description />
+				<use-caller-identity />
+			</security-identity>
+		</session>
+		<session>
+			<description>
+				Trade JDBC Session EJB manages all Trading services
+			</description>
+			<display-name>TradeJDBC</display-name>
+			<ejb-name>TradeJDBC</ejb-name>
+			<home>
+				org.apache.geronimo.samples.daytrader.session.TradeJDBCHome
+			</home>
+			<remote>
+				org.apache.geronimo.samples.daytrader.session.TradeJDBC
+			</remote>
+			<ejb-class>
+				org.apache.geronimo.samples.daytrader.session.TradeJDBCBean
+			</ejb-class>
+			<session-type>Stateless</session-type>
+			<transaction-type>Container</transaction-type>
+			<security-identity>
+				<description />
+				<use-caller-identity />
+			</security-identity>
+		</session>
+		<entity>
+			<display-name>HoldingEJB</display-name>
+			<ejb-name>HoldingEJB</ejb-name>
+			<local-home>
+				org.apache.geronimo.samples.daytrader.ejb.LocalHoldingHome
+			</local-home>
+			<local>
+				org.apache.geronimo.samples.daytrader.ejb.LocalHolding
+			</local>
+			<ejb-class>
+				org.apache.geronimo.samples.daytrader.ejb.HoldingBean
+			</ejb-class>
+			<persistence-type>Container</persistence-type>
+			<prim-key-class>java.lang.Integer</prim-key-class>
+			<reentrant>false</reentrant>
+			<cmp-version>2.x</cmp-version>
+			<abstract-schema-name>Holding</abstract-schema-name>
+			<cmp-field>
+				<field-name>purchasePrice</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>holdingID</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>quantity</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>purchaseDate</field-name>
+			</cmp-field>
+			<primkey-field>holdingID</primkey-field>
+			<security-identity>
+				<description />
+				<use-caller-identity />
+			</security-identity>
+			<query>
+				<description />
+				<query-method>
+					<method-name>ejbSelectQuoteFromSymbol</method-name>
+					<method-params>
+						<method-param>java.lang.String</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(q) from Quote q WHERE q.symbol = ?1
+				</ejb-ql>
+			</query>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findAll</method-name>
+					<method-params />
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>SELECT OBJECT(h) from Holding h</ejb-ql>
+			</query>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findByUserID</method-name>
+					<method-params>
+						<method-param>java.lang.String</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(h) FROM Holding h WHERE
+					h.account.profile.userID = ?1
+				</ejb-ql>
+			</query>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findByAccountID</method-name>
+					<method-params>
+						<method-param>java.lang.Integer</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(h) FROM Holding h WHERE
+					h.account.accountID = ?1
+				</ejb-ql>
+			</query>
+			<query>
+				<query-method>
+					<method-name>findByPrimaryKeyForUpdate</method-name>
+					<method-params>
+						<method-param>java.lang.Integer</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(h) FROM Holding h WHERE h.holdingID =
+					?1
+				</ejb-ql>
+			</query>
+		</entity>
+		<message-driven>
+			<display-name>TradeBrokerMDB</display-name>
+			<ejb-name>TradeBrokerMDB</ejb-name>
+			<ejb-class>
+				org.apache.geronimo.samples.daytrader.ejb.TradeBrokerMDB
+			</ejb-class>
+			<transaction-type>Container</transaction-type>
+			<message-destination-type>
+				javax.jms.Queue
+			</message-destination-type>
+			<message-destination-link>
+				TradeBrokerQueue
+			</message-destination-link>
+			<env-entry>
+				<env-entry-name>statInterval</env-entry-name>
+				<env-entry-type>java.lang.Integer</env-entry-type>
+				<env-entry-value>100</env-entry-value>
+			</env-entry>
+			<ejb-ref>
+				<ejb-ref-name>ejb/Trade</ejb-ref-name>
+				<ejb-ref-type>Session</ejb-ref-type>
+				<home>
+					org.apache.geronimo.samples.daytrader.ejb.TradeHome
+				</home>
+				<remote>
+					org.apache.geronimo.samples.daytrader.ejb.Trade
+				</remote>
+				<ejb-link>TradeEJB</ejb-link>
+			</ejb-ref>
+		</message-driven>
+		<entity>
+			<display-name>AccountProfileEJB</display-name>
+			<ejb-name>AccountProfileEJB</ejb-name>
+			<local-home>
+				org.apache.geronimo.samples.daytrader.ejb.LocalAccountProfileHome
+			</local-home>
+			<local>
+				org.apache.geronimo.samples.daytrader.ejb.LocalAccountProfile
+			</local>
+			<ejb-class>
+				org.apache.geronimo.samples.daytrader.ejb.AccountProfileBean
+			</ejb-class>
+			<persistence-type>Container</persistence-type>
+			<prim-key-class>java.lang.String</prim-key-class>
+			<reentrant>false</reentrant>
+			<cmp-version>2.x</cmp-version>
+			<abstract-schema-name>AccountProfile</abstract-schema-name>
+			<cmp-field>
+				<field-name>address</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>passwd</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>userID</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>email</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>creditCard</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>fullName</field-name>
+			</cmp-field>
+			<primkey-field>userID</primkey-field>
+			<security-identity>
+				<description />
+				<use-caller-identity />
+			</security-identity>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findAll</method-name>
+					<method-params />
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>SELECT OBJECT(a) FROM AccountProfile a</ejb-ql>
+			</query>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findByPrimaryKeyForUpdate</method-name>
+					<method-params>
+						<method-param>java.lang.String</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(a) FROM AccountProfile a where
+					a.userID = ?1
+				</ejb-ql>
+			</query>
+		</entity>
+		<entity>
+			<description>
+				Stock price quotes including current, open, high, low,
+				etc.
+			</description>
+			<display-name>QuoteEJB</display-name>
+			<ejb-name>QuoteEJB</ejb-name>
+			<home>
+				org.apache.geronimo.samples.daytrader.ejb.QuoteHome
+			</home>
+			<remote>
+				org.apache.geronimo.samples.daytrader.ejb.Quote
+			</remote>
+			<local-home>
+				org.apache.geronimo.samples.daytrader.ejb.LocalQuoteHome
+			</local-home>
+			<local>
+				org.apache.geronimo.samples.daytrader.ejb.LocalQuote
+			</local>
+			<ejb-class>
+				org.apache.geronimo.samples.daytrader.ejb.QuoteBean
+			</ejb-class>
+			<persistence-type>Container</persistence-type>
+			<prim-key-class>java.lang.String</prim-key-class>
+			<reentrant>false</reentrant>
+			<cmp-version>2.x</cmp-version>
+			<abstract-schema-name>Quote</abstract-schema-name>
+			<cmp-field>
+				<field-name>low</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>open</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>volume</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>price</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>high</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>companyName</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>symbol</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>change</field-name>
+			</cmp-field>
+			<primkey-field>symbol</primkey-field>
+			<security-identity>
+				<description />
+				<use-caller-identity />
+			</security-identity>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findAll</method-name>
+					<method-params />
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>SELECT OBJECT(q) FROM Quote q</ejb-ql>
+			</query>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findQuotes</method-name>
+					<method-params>
+						<method-param>java.lang.String</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>SELECT OBJECT(q) FROM Quote q</ejb-ql>
+			</query>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findOne</method-name>
+					<method-params />
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(q) FROM Quote q where q.symbol = 's:0'
+				</ejb-ql>
+			</query>
+			<query>
+				<query-method>
+					<method-name>
+						findTSIAQuotesOrderByChange
+					</method-name>
+					<method-params />
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(q) FROM Quote q WHERE q.symbol LIKE
+					's:1__' ORDER BY q.change DESC
+				</ejb-ql>
+			</query>
+			<query>
+				<description />
+				<query-method>
+					<method-name>ejbSelectTotalVolume</method-name>
+					<method-params />
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>SELECT q.volume FROM Quote q</ejb-ql>
+			</query>
+			<query>
+				<query-method>
+					<method-name>findTSIAQuotes</method-name>
+					<method-params />
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(q) FROM Quote q WHERE q.symbol LIKE
+					's:1__'
+				</ejb-ql>
+			</query>
+			<query>
+				<query-method>
+					<method-name>findByPrimaryKeyForUpdate</method-name>
+					<method-params>
+						<method-param>java.lang.String</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(q) FROM Quote q where q.symbol = ?1
+				</ejb-ql>
+			</query>
+		</entity>
+		<session>
+			<display-name>KeySequenceEJB</display-name>
+			<ejb-name>KeySequenceEJB</ejb-name>
+			<local-home>
+				org.apache.geronimo.samples.daytrader.ejb.LocalKeySequenceHome
+			</local-home>
+			<local>
+				org.apache.geronimo.samples.daytrader.ejb.LocalKeySequence
+			</local>
+			<ejb-class>
+				org.apache.geronimo.samples.daytrader.ejb.KeySequenceBean
+			</ejb-class>
+			<session-type>Stateless</session-type>
+			<transaction-type>Container</transaction-type>
+			<ejb-local-ref>
+				<ejb-ref-name>ejb/KeyGen</ejb-ref-name>
+				<ejb-ref-type>Entity</ejb-ref-type>
+				<local-home>
+					org.apache.geronimo.samples.daytrader.ejb.LocalKeyGenHome
+				</local-home>
+				<local>
+					org.apache.geronimo.samples.daytrader.ejb.LocalKeyGen
+				</local>
+				<ejb-link>KeyGenEJB</ejb-link>
+			</ejb-local-ref>
+			<security-identity>
+				<description />
+				<use-caller-identity />
+			</security-identity>
+		</session>
+		<entity>
+			<display-name>KeyGenEJB</display-name>
+			<ejb-name>KeyGenEJB</ejb-name>
+			<local-home>
+				org.apache.geronimo.samples.daytrader.ejb.LocalKeyGenHome
+			</local-home>
+			<local>
+				org.apache.geronimo.samples.daytrader.ejb.LocalKeyGen
+			</local>
+			<ejb-class>
+				org.apache.geronimo.samples.daytrader.ejb.KeyGenBean
+			</ejb-class>
+			<persistence-type>Container</persistence-type>
+			<prim-key-class>java.lang.String</prim-key-class>
+			<reentrant>false</reentrant>
+			<cmp-version>2.x</cmp-version>
+			<abstract-schema-name>KeyGen</abstract-schema-name>
+			<cmp-field>
+				<field-name>keyVal</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>keyName</field-name>
+			</cmp-field>
+			<primkey-field>keyName</primkey-field>
+			<security-identity>
+				<description />
+				<use-caller-identity />
+			</security-identity>
+			<query>
+				<query-method>
+					<method-name>findByPrimaryKeyForUpdate</method-name>
+					<method-params>
+						<method-param>java.lang.String</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(kg) FROM KeyGen kg where kg.keyName =
+					?1
+				</ejb-ql>
+			</query>
+		</entity>
+		<entity>
+			<display-name>AccountEJB</display-name>
+			<ejb-name>AccountEJB</ejb-name>
+			<local-home>
+				org.apache.geronimo.samples.daytrader.ejb.LocalAccountHome
+			</local-home>
+			<local>
+				org.apache.geronimo.samples.daytrader.ejb.LocalAccount
+			</local>
+			<ejb-class>
+				org.apache.geronimo.samples.daytrader.ejb.AccountBean
+			</ejb-class>
+			<persistence-type>Container</persistence-type>
+			<prim-key-class>java.lang.Integer</prim-key-class>
+			<reentrant>false</reentrant>
+			<cmp-version>2.x</cmp-version>
+			<abstract-schema-name>Account</abstract-schema-name>
+			<cmp-field>
+				<field-name>creationDate</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>openBalance</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>logoutCount</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>balance</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>accountID</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>lastLogin</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>loginCount</field-name>
+			</cmp-field>
+			<primkey-field>accountID</primkey-field>
+			<ejb-local-ref>
+				<ejb-ref-name>ejb/AccountProfile</ejb-ref-name>
+				<ejb-ref-type>Entity</ejb-ref-type>
+				<local-home>
+					org.apache.geronimo.samples.daytrader.ejb.LocalAccountProfileHome
+				</local-home>
+				<local>
+					org.apache.geronimo.samples.daytrader.ejb.LocalAccountProfile
+				</local>
+				<ejb-link>AccountProfileEJB</ejb-link>
+			</ejb-local-ref>
+			<security-identity>
+				<description />
+				<use-caller-identity />
+			</security-identity>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findByUserID</method-name>
+					<method-params>
+						<method-param>java.lang.String</method-param>
+					</method-params>
+				</query-method>
+				<ejb-ql>
+					SELECT OBJECT(a) FROM Account a WHERE
+					a.profile.userID = ?1
+				</ejb-ql>
+			</query>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findAll</method-name>
+					<method-params />
+				</query-method>
+				<ejb-ql>SELECT OBJECT(a) FROM Account a</ejb-ql>
+			</query>
+			<query>
+				<query-method>
+					<method-name>findByUserIDForUpdate</method-name>
+					<method-params>
+						<method-param>java.lang.String</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(a) FROM Account a WHERE
+					a.profile.userID = ?1
+				</ejb-ql>
+			</query>
+			<query>
+				<query-method>
+					<method-name>ejbSelectClosedOrders</method-name>
+					<method-params>
+						<method-param>java.lang.Integer</method-param>
+					</method-params>
+				</query-method>
+				<ejb-ql>
+					SELECT o.orderID FROM Orders o WHERE o.orderStatus =
+					'closed' AND o.account.accountID = ?1
+				</ejb-ql>
+			</query>
+			<query>
+				<query-method>
+					<method-name>findByPrimaryKeyForUpdate</method-name>
+					<method-params>
+						<method-param>java.lang.Integer</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(a) FROM Account a where a.accountID =
+					?1
+				</ejb-ql>
+			</query>
+		</entity>
+		<entity>
+			<display-name>OrderEJB</display-name>
+			<ejb-name>OrderEJB</ejb-name>
+			<local-home>
+				org.apache.geronimo.samples.daytrader.ejb.LocalOrderHome
+			</local-home>
+			<local>
+				org.apache.geronimo.samples.daytrader.ejb.LocalOrder
+			</local>
+			<ejb-class>
+				org.apache.geronimo.samples.daytrader.ejb.OrderBean
+			</ejb-class>
+			<persistence-type>Container</persistence-type>
+			<prim-key-class>java.lang.Integer</prim-key-class>
+			<reentrant>false</reentrant>
+			<cmp-version>2.x</cmp-version>
+			<abstract-schema-name>Orders</abstract-schema-name>
+			<cmp-field>
+				<field-name>orderFee</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>completionDate</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>orderType</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>orderStatus</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>price</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>quantity</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>openDate</field-name>
+			</cmp-field>
+			<cmp-field>
+				<field-name>orderID</field-name>
+			</cmp-field>
+			<primkey-field>orderID</primkey-field>
+			<security-identity>
+				<description />
+				<use-caller-identity />
+			</security-identity>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findAll</method-name>
+					<method-params />
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>SELECT OBJECT(o) FROM Orders o</ejb-ql>
+			</query>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findClosedOrders</method-name>
+					<method-params>
+						<method-param>java.lang.String</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(o) FROM Orders o WHERE o.orderStatus =
+					'closed' AND o.account.profile.userID = ?1
+				</ejb-ql>
+			</query>
+			<query>
+				<description />
+				<query-method>
+					<method-name>findByUserID</method-name>
+					<method-params>
+						<method-param>java.lang.String</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(o) FROM Orders o WHERE
+					o.account.profile.userID = ?1 ORDER BY o.orderID
+					DESC
+				</ejb-ql>
+			</query>
+			<query>
+				<query-method>
+					<method-name>findByPrimaryKeyForUpdate</method-name>
+					<method-params>
+						<method-param>java.lang.Integer</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(o) FROM Orders o WHERE o.orderID = ?1
+				</ejb-ql>
+			</query>
+			<query>
+				<query-method>
+					<method-name>findClosedOrdersForUpdate</method-name>
+					<method-params>
+						<method-param>java.lang.String</method-param>
+					</method-params>
+				</query-method>
+				<result-type-mapping>Local</result-type-mapping>
+				<ejb-ql>
+					SELECT OBJECT(o) FROM Orders o WHERE o.orderStatus =
+					'closed' AND o.account.profile.userID = ?1
+				</ejb-ql>
+			</query>
+		</entity>
+		<message-driven>
+			<ejb-name>TradeStreamerMDB</ejb-name>
+			<ejb-class>
+				org.apache.geronimo.samples.daytrader.ejb.TradeStreamerMDB
+			</ejb-class>
+			<transaction-type>Container</transaction-type>
+			<message-destination-type>
+				javax.jms.Topic
+			</message-destination-type>
+			<message-destination-link>
+				TradeStreamerTopic
+			</message-destination-link>
+			<env-entry>
+				<env-entry-name>statInterval</env-entry-name>
+				<env-entry-type>java.lang.Integer</env-entry-type>
+				<env-entry-value>100</env-entry-value>
+			</env-entry>
+		</message-driven>
+	</enterprise-beans>
+	<relationships>
+		<ejb-relation>
+			<ejb-relation-name>Account-Orders</ejb-relation-name>
+			<ejb-relationship-role>
+				<ejb-relationship-role-name>
+					AccountEJB
+				</ejb-relationship-role-name>
+				<multiplicity>One</multiplicity>
+				<relationship-role-source>
+					<ejb-name>AccountEJB</ejb-name>
+				</relationship-role-source>
+				<cmr-field>
+					<cmr-field-name>orders</cmr-field-name>
+					<cmr-field-type>
+						java.util.Collection
+					</cmr-field-type>
+				</cmr-field>
+			</ejb-relationship-role>
+			<ejb-relationship-role>
+				<ejb-relationship-role-name>
+					Order-Has-Account
+				</ejb-relationship-role-name>
+				<multiplicity>Many</multiplicity>
+				<cascade-delete />
+				<relationship-role-source>
+					<ejb-name>OrderEJB</ejb-name>
+				</relationship-role-source>
+				<cmr-field>
+					<cmr-field-name>account</cmr-field-name>
+				</cmr-field>
+			</ejb-relationship-role>
+		</ejb-relation>
+		<ejb-relation>
+			<ejb-relation-name>
+				Account-AccountProfile
+			</ejb-relation-name>
+			<ejb-relationship-role>
+				<ejb-relationship-role-name>
+					Account-Has-AccountProfile
+				</ejb-relationship-role-name>
+				<multiplicity>One</multiplicity>
+				<relationship-role-source>
+					<ejb-name>AccountEJB</ejb-name>
+				</relationship-role-source>
+				<cmr-field>
+					<cmr-field-name>profile</cmr-field-name>
+				</cmr-field>
+			</ejb-relationship-role>
+			<ejb-relationship-role>
+				<ejb-relationship-role-name>
+					AccountProfileEJB
+				</ejb-relationship-role-name>
+				<multiplicity>One</multiplicity>
+				<cascade-delete />
+				<relationship-role-source>
+					<ejb-name>AccountProfileEJB</ejb-name>
+				</relationship-role-source>
+				<cmr-field>
+					<cmr-field-name>account</cmr-field-name>
+				</cmr-field>
+			</ejb-relationship-role>
+		</ejb-relation>
+		<ejb-relation>
+			<ejb-relation-name>Account-Holdings</ejb-relation-name>
+			<ejb-relationship-role>
+				<ejb-relationship-role-name>
+					AccountEJB
+				</ejb-relationship-role-name>
+				<multiplicity>One</multiplicity>
+				<relationship-role-source>
+					<ejb-name>AccountEJB</ejb-name>
+				</relationship-role-source>
+				<cmr-field>
+					<cmr-field-name>holdings</cmr-field-name>
+					<cmr-field-type>
+						java.util.Collection
+					</cmr-field-type>
+				</cmr-field>
+			</ejb-relationship-role>
+			<ejb-relationship-role>
+				<ejb-relationship-role-name>
+					Holding-Has-Account
+				</ejb-relationship-role-name>
+				<multiplicity>Many</multiplicity>
+				<cascade-delete />
+				<relationship-role-source>
+					<ejb-name>HoldingEJB</ejb-name>
+				</relationship-role-source>
+				<cmr-field>
+					<cmr-field-name>account</cmr-field-name>
+				</cmr-field>
+			</ejb-relationship-role>
+		</ejb-relation>
+		<ejb-relation>
+			<ejb-relation-name>Quote-Holdings</ejb-relation-name>
+			<ejb-relationship-role>
+				<ejb-relationship-role-name>
+					Holding-Has-Quote
+				</ejb-relationship-role-name>
+				<multiplicity>Many</multiplicity>
+				<relationship-role-source>
+					<ejb-name>HoldingEJB</ejb-name>
+				</relationship-role-source>
+				<cmr-field>
+					<cmr-field-name>quote</cmr-field-name>
+				</cmr-field>
+			</ejb-relationship-role>
+			<ejb-relationship-role>
+				<ejb-relationship-role-name>
+					QuoteEJB
+				</ejb-relationship-role-name>
+				<multiplicity>One</multiplicity>
+				<relationship-role-source>
+					<ejb-name>QuoteEJB</ejb-name>
+				</relationship-role-source>
+			</ejb-relationship-role>
+		</ejb-relation>
+		<ejb-relation>
+			<ejb-relation-name>Quote-Orders</ejb-relation-name>
+			<ejb-relationship-role>
+				<ejb-relationship-role-name>
+					Order-Has-Quote
+				</ejb-relationship-role-name>
+				<multiplicity>Many</multiplicity>
+				<cascade-delete />
+				<relationship-role-source>
+					<ejb-name>OrderEJB</ejb-name>
+				</relationship-role-source>
+				<cmr-field>
+					<cmr-field-name>quote</cmr-field-name>
+				</cmr-field>
+			</ejb-relationship-role>
+			<ejb-relationship-role>
+				<ejb-relationship-role-name>
+					QuoteEJB
+				</ejb-relationship-role-name>
+				<multiplicity>One</multiplicity>
+				<relationship-role-source>
+					<ejb-name>QuoteEJB</ejb-name>
+				</relationship-role-source>
+				<cmr-field>
+					<cmr-field-name>orders</cmr-field-name>
+					<cmr-field-type>
+						java.util.Collection
+					</cmr-field-type>
+				</cmr-field>
+			</ejb-relationship-role>
+		</ejb-relation>
+		<ejb-relation>
+			<ejb-relation-name>Order-Holding</ejb-relation-name>
+			<ejb-relationship-role>
+				<ejb-relationship-role-name>
+					Order-Has-Holding
+				</ejb-relationship-role-name>
+				<multiplicity>One</multiplicity>
+				<relationship-role-source>
+					<ejb-name>OrderEJB</ejb-name>
+				</relationship-role-source>
+				<cmr-field>
+					<cmr-field-name>holding</cmr-field-name>
+				</cmr-field>
+			</ejb-relationship-role>
+			<ejb-relationship-role>
+				<ejb-relationship-role-name>
+					HoldingEJB
+				</ejb-relationship-role-name>
+				<multiplicity>One</multiplicity>
+				<cascade-delete />
+				<relationship-role-source>
+					<ejb-name>HoldingEJB</ejb-name>
+				</relationship-role-source>
+			</ejb-relationship-role>
+		</ejb-relation>
+	</relationships>
+	<assembly-descriptor>
+		<method-permission>
+			<description>
+				UncheckedPermission:+:Unchecked method permission
+			</description>
+			<unchecked />
+			<method>
+				<ejb-name>AccountEJB</ejb-name>
+				<method-name>*</method-name>
+			</method>
+			<method>
+				<ejb-name>AccountProfileEJB</ejb-name>
+				<method-name>*</method-name>
+			</method>
+			<method>
+				<ejb-name>HoldingEJB</ejb-name>
+				<method-name>*</method-name>
+			</method>
+			<method>
+				<ejb-name>KeyGenEJB</ejb-name>
+				<method-name>*</method-name>
+			</method>
+			<method>
+				<ejb-name>KeySequenceEJB</ejb-name>
+				<method-name>*</method-name>
+			</method>
+			<method>
+				<ejb-name>OrderEJB</ejb-name>
+				<method-name>*</method-name>
+			</method>
+			<method>
+				<ejb-name>QuoteEJB</ejb-name>
+				<method-name>*</method-name>
+			</method>
+			<method>
+				<ejb-name>TradeEJB</ejb-name>
+				<method-name>*</method-name>
+			</method>
+			<method>
+				<ejb-name>TradeJDBC</ejb-name>
+				<method-name>*</method-name>
+			</method>
+		</method-permission>
+		<container-transaction>
+			<method>
+				<ejb-name>TradeEJB</ejb-name>
+				<method-intf>Remote</method-intf>
+				<method-name>publishQuotePriceChange</method-name>
+				<method-params>
+					<method-param>
+						org.apache.geronimo.samples.daytrader.QuoteDataBean
+					</method-param>
+					<method-param>java.math.BigDecimal</method-param>
+					<method-param>java.math.BigDecimal</method-param>
+					<method-param>double</method-param>
+				</method-params>
+			</method>
+			<method>
+				<ejb-name>TradeEJB</ejb-name>
+				<method-intf>Remote</method-intf>
+				<method-name>cancelOrderOnePhase</method-name>
+				<method-params>
+					<method-param>java.lang.Integer</method-param>
+				</method-params>
+			</method>
+			<method>
+				<ejb-name>TradeEJB</ejb-name>
+				<method-intf>Remote</method-intf>
+				<method-name>completeOrderOnePhaseDirect</method-name>
+				<method-params>
+					<method-param>java.lang.Integer</method-param>
+				</method-params>
+			</method>
+			<method>
+				<ejb-name>TradeEJB</ejb-name>
+				<method-intf>Remote</method-intf>
+				<method-name>queueOrderOnePhase</method-name>
+				<method-params>
+					<method-param>java.lang.Integer</method-param>
+				</method-params>
+			</method>
+			<method>
+				<ejb-name>TradeJPA</ejb-name>
+				<method-intf>Remote</method-intf>
+				<method-name>publishQuotePriceChange</method-name>
+				<method-params>
+					<method-param>
+						org.apache.geronimo.samples.daytrader.QuoteDataBean
+					</method-param>
+					<method-param>java.math.BigDecimal</method-param>
+					<method-param>java.math.BigDecimal</method-param>
+					<method-param>double</method-param>
+				</method-params>
+			</method>
+			<method>
+				<ejb-name>TradeJPA</ejb-name>
+				<method-intf>Remote</method-intf>
+				<method-name>cancelOrderOnePhase</method-name>
+				<method-params>
+					<method-param>java.lang.Integer</method-param>
+				</method-params>
+			</method>
+			<method>
+				<ejb-name>TradeJPA</ejb-name>
+				<method-intf>Remote</method-intf>
+				<method-name>completeOrderOnePhaseDirect</method-name>
+				<method-params>
+					<method-param>java.lang.Integer</method-param>
+				</method-params>
+			</method>
+			<method>
+				<ejb-name>TradeJPA</ejb-name>
+				<method-intf>Remote</method-intf>
+				<method-name>queueOrderOnePhase</method-name>
+				<method-params>

[... 181 lines stripped ...]


Mime
View raw message