| <?xml version="1.0" encoding="UTF-8" standalone="no"?> |
| <!-- |
| |
| Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved. |
| |
| This program and the accompanying materials are made available under the |
| terms of the Eclipse Public License v. 2.0, which is available at |
| http://www.eclipse.org/legal/epl-2.0. |
| |
| This Source Code may also be made available under the following Secondary |
| Licenses when the conditions for such availability set forth in the |
| Eclipse Public License v. 2.0 are satisfied: GNU General Public License, |
| version 2 with the GNU Classpath Exception, which is available at |
| https://www.gnu.org/software/classpath/license.html. |
| |
| SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 |
| |
| --> |
| |
| <ejb-jar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" metadata-complete="true" version="3.2" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/ejb-jar_3_2.xsd" xmlns="http://xmlns.jcp.org/xml/ns/javaee"> |
| <enterprise-beans> |
| <session> |
| <display-name>StatefulTest2</display-name> |
| <ejb-name>StatefulTest2</ejb-name> |
| <business-remote>test.ejb.SFHello1</business-remote> |
| <ejb-class>StatefulTest2</ejb-class> |
| <session-type>Stateful</session-type> |
| <concurrency-management-type>Container</concurrency-management-type> |
| <transaction-type>Container</transaction-type> |
| <ejb-local-ref> |
| <ejb-ref-name>test.ejb.StatefulTest/mySfHello</ejb-ref-name> |
| <ejb-ref-type>Session</ejb-ref-type> |
| <local>test.ejb.SFHello</local> |
| <ejb-link>StatefulTest</ejb-link> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest</injection-target-class> |
| <injection-target-name>mySfHello</injection-target-name> |
| </injection-target> |
| </ejb-local-ref> |
| <resource-ref> |
| <res-ref-name>myDataSource</res-ref-name> |
| <res-type>javax.sql.DataSource</res-type> |
| <res-auth>Container</res-auth> |
| <res-sharing-scope>Shareable</res-sharing-scope> |
| <lookup-name>java:comp/DefaultDataSource</lookup-name> |
| </resource-ref> |
| <resource-env-ref> |
| <description>testing</description> |
| <resource-env-ref-name>test.ejb.StatefulTest/ejbContext</resource-env-ref-name> |
| <resource-env-ref-type>jakarta.ejb.EJBContext</resource-env-ref-type> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest</injection-target-class> |
| <injection-target-name>ejbContext</injection-target-name> |
| </injection-target> |
| </resource-env-ref> |
| <resource-env-ref> |
| <resource-env-ref-name>sfContext</resource-env-ref-name> |
| <resource-env-ref-type>jakarta.ejb.EJBContext</resource-env-ref-type> |
| <injection-target> |
| <injection-target-class>StatefulTest2</injection-target-class> |
| <injection-target-name>ejbContext</injection-target-name> |
| </injection-target> |
| </resource-env-ref> |
| <resource-env-ref> |
| <resource-env-ref-name>test.ejb.StatefulTest/ejbContext2</resource-env-ref-name> |
| <resource-env-ref-type>jakarta.ejb.EJBContext</resource-env-ref-type> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest</injection-target-class> |
| <injection-target-name>ejbContext2</injection-target-name> |
| </injection-target> |
| </resource-env-ref> |
| <resource-env-ref> |
| <resource-env-ref-name>sfContext2</resource-env-ref-name> |
| <resource-env-ref-type>jakarta.ejb.EJBContext</resource-env-ref-type> |
| <injection-target> |
| <injection-target-class>StatefulTest2</injection-target-class> |
| <injection-target-name>ejbContext2</injection-target-name> |
| </injection-target> |
| </resource-env-ref> |
| <resource-env-ref> |
| <resource-env-ref-name>test.ejb.StatefulTest/ejbContext3</resource-env-ref-name> |
| <resource-env-ref-type>jakarta.ejb.EJBContext</resource-env-ref-type> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest</injection-target-class> |
| <injection-target-name>ejbContext3</injection-target-name> |
| </injection-target> |
| </resource-env-ref> |
| <security-identity> |
| <run-as> |
| <role-name>staff</role-name> |
| </run-as> |
| </security-identity> |
| <passivation-capable>true</passivation-capable> |
| </session> |
| <session> |
| <display-name>myStatefulTest</display-name> |
| <ejb-name>myStatefulTest</ejb-name> |
| <business-remote>test.ejb.SFHello1</business-remote> |
| <ejb-class>test.ejb.StatefulTest1</ejb-class> |
| <session-type>Stateful</session-type> |
| <concurrency-management-type>Container</concurrency-management-type> |
| <transaction-type>Container</transaction-type> |
| <ejb-local-ref> |
| <ejb-ref-name>test.ejb.StatefulTest1/sfHello</ejb-ref-name> |
| <ejb-ref-type>Session</ejb-ref-type> |
| <local>test.ejb.SFHello</local> |
| <ejb-link>StatefulTest</ejb-link> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest1</injection-target-class> |
| <injection-target-name>sfHello</injection-target-name> |
| </injection-target> |
| </ejb-local-ref> |
| <ejb-local-ref> |
| <ejb-ref-name>test.ejb.StatefulTest/mySfHello</ejb-ref-name> |
| <ejb-ref-type>Session</ejb-ref-type> |
| <local>test.ejb.SFHello</local> |
| <ejb-link>StatefulTest</ejb-link> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest</injection-target-class> |
| <injection-target-name>mySfHello</injection-target-name> |
| </injection-target> |
| </ejb-local-ref> |
| <resource-ref> |
| <res-ref-name>myDataSource</res-ref-name> |
| <res-type>javax.sql.DataSource</res-type> |
| <res-auth>Container</res-auth> |
| <res-sharing-scope>Shareable</res-sharing-scope> |
| <lookup-name>java:comp/DefaultDataSource</lookup-name> |
| </resource-ref> |
| <resource-ref> |
| <res-ref-name>myDataSource1</res-ref-name> |
| <res-type>javax.sql.DataSource</res-type> |
| <res-auth>Container</res-auth> |
| <res-sharing-scope>Shareable</res-sharing-scope> |
| <lookup-name>java:comp/DefaultDataSource</lookup-name> |
| </resource-ref> |
| <resource-env-ref> |
| <description>testing</description> |
| <resource-env-ref-name>test.ejb.StatefulTest/ejbContext</resource-env-ref-name> |
| <resource-env-ref-type>jakarta.ejb.EJBContext</resource-env-ref-type> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest</injection-target-class> |
| <injection-target-name>ejbContext</injection-target-name> |
| </injection-target> |
| </resource-env-ref> |
| <resource-env-ref> |
| <resource-env-ref-name>sfEjbContext</resource-env-ref-name> |
| <resource-env-ref-type>jakarta.ejb.EJBContext</resource-env-ref-type> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest1</injection-target-class> |
| <injection-target-name>ejbContext</injection-target-name> |
| </injection-target> |
| </resource-env-ref> |
| <resource-env-ref> |
| <resource-env-ref-name>sfEjbContext2</resource-env-ref-name> |
| <resource-env-ref-type>jakarta.ejb.EJBContext</resource-env-ref-type> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest1</injection-target-class> |
| <injection-target-name>ejbContext2</injection-target-name> |
| </injection-target> |
| </resource-env-ref> |
| <resource-env-ref> |
| <resource-env-ref-name>sfEjbContext3</resource-env-ref-name> |
| <resource-env-ref-type>jakarta.ejb.EJBContext</resource-env-ref-type> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest1</injection-target-class> |
| <injection-target-name>ejbContext3</injection-target-name> |
| </injection-target> |
| </resource-env-ref> |
| <security-identity> |
| <use-caller-identity/> |
| </security-identity> |
| <passivation-capable>true</passivation-capable> |
| </session> |
| <session> |
| <display-name>StatefulTest</display-name> |
| <ejb-name>StatefulTest</ejb-name> |
| <business-local>test.ejb.SFHello</business-local> |
| <ejb-class>test.ejb.StatefulTest</ejb-class> |
| <session-type>Stateful</session-type> |
| <concurrency-management-type>Container</concurrency-management-type> |
| <transaction-type>Container</transaction-type> |
| <ejb-local-ref> |
| <ejb-ref-name>test.ejb.StatefulTest/mySfHello</ejb-ref-name> |
| <ejb-ref-type>Session</ejb-ref-type> |
| <local>test.ejb.SFHello</local> |
| <ejb-link>StatefulTest</ejb-link> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest</injection-target-class> |
| <injection-target-name>mySfHello</injection-target-name> |
| </injection-target> |
| </ejb-local-ref> |
| <resource-ref> |
| <res-ref-name>myDataSource</res-ref-name> |
| <res-type>javax.sql.DataSource</res-type> |
| <res-auth>Container</res-auth> |
| <res-sharing-scope>Shareable</res-sharing-scope> |
| <lookup-name>java:comp/DefaultDataSource</lookup-name> |
| </resource-ref> |
| <resource-env-ref> |
| <description>testing</description> |
| <resource-env-ref-name>test.ejb.StatefulTest/ejbContext</resource-env-ref-name> |
| <resource-env-ref-type>jakarta.ejb.EJBContext</resource-env-ref-type> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest</injection-target-class> |
| <injection-target-name>ejbContext</injection-target-name> |
| </injection-target> |
| </resource-env-ref> |
| <resource-env-ref> |
| <resource-env-ref-name>test.ejb.StatefulTest/ejbContext2</resource-env-ref-name> |
| <resource-env-ref-type>jakarta.ejb.EJBContext</resource-env-ref-type> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest</injection-target-class> |
| <injection-target-name>ejbContext2</injection-target-name> |
| </injection-target> |
| </resource-env-ref> |
| <resource-env-ref> |
| <resource-env-ref-name>test.ejb.StatefulTest/ejbContext3</resource-env-ref-name> |
| <resource-env-ref-type>jakarta.ejb.EJBContext</resource-env-ref-type> |
| <injection-target> |
| <injection-target-class>test.ejb.StatefulTest</injection-target-class> |
| <injection-target-name>ejbContext3</injection-target-name> |
| </injection-target> |
| </resource-env-ref> |
| <security-identity> |
| <run-as> |
| <role-name>guest</role-name> |
| </run-as> |
| </security-identity> |
| <passivation-capable>true</passivation-capable> |
| </session> |
| </enterprise-beans> |
| <assembly-descriptor> |
| <security-role> |
| <role-name>staff</role-name> |
| </security-role> |
| <security-role> |
| <role-name>member</role-name> |
| </security-role> |
| <security-role> |
| <role-name>guest</role-name> |
| </security-role> |
| <method-permission> |
| <unchecked/> |
| <method> |
| <ejb-name>StatefulTest2</ejb-name> |
| <method-intf>Remote</method-intf> |
| <method-name>sayGoodAfternoon</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <method> |
| <ejb-name>StatefulTest2</ejb-name> |
| <method-intf>Remote</method-intf> |
| <method-name>sayGoodMorning</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| </method-permission> |
| <method-permission> |
| <role-name>member</role-name> |
| <method> |
| <ejb-name>StatefulTest2</ejb-name> |
| <method-intf>Remote</method-intf> |
| <method-name>sayBye</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| </method-permission> |
| <method-permission> |
| <unchecked/> |
| <method> |
| <ejb-name>myStatefulTest</ejb-name> |
| <method-intf>Remote</method-intf> |
| <method-name>sayGoodAfternoon</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <method> |
| <ejb-name>myStatefulTest</ejb-name> |
| <method-intf>Remote</method-intf> |
| <method-name>sayGoodMorning</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| </method-permission> |
| <method-permission> |
| <unchecked/> |
| <method> |
| <ejb-name>StatefulTest</ejb-name> |
| <method-intf>Local</method-intf> |
| <method-name>*</method-name> |
| </method> |
| </method-permission> |
| <container-transaction> |
| <description>Required</description> |
| <method> |
| <ejb-name>StatefulTest2</ejb-name> |
| <method-intf>Remote</method-intf> |
| <method-name>sayGoodAfternoon</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <trans-attribute>Required</trans-attribute> |
| </container-transaction> |
| <container-transaction> |
| <description>Mandatory</description> |
| <method> |
| <ejb-name>StatefulTest2</ejb-name> |
| <method-intf>Remote</method-intf> |
| <method-name>sayHello</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <trans-attribute>Mandatory</trans-attribute> |
| </container-transaction> |
| <container-transaction> |
| <description>Supports</description> |
| <method> |
| <ejb-name>StatefulTest2</ejb-name> |
| <method-intf>Remote</method-intf> |
| <method-name>sayBye</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <trans-attribute>Supports</trans-attribute> |
| </container-transaction> |
| <container-transaction> |
| <description>Supports</description> |
| <method> |
| <ejb-name>StatefulTest2</ejb-name> |
| <method-intf>Remote</method-intf> |
| <method-name>sayGoodMorning</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <trans-attribute>Supports</trans-attribute> |
| </container-transaction> |
| <container-transaction> |
| <description>Required</description> |
| <method> |
| <ejb-name>myStatefulTest</ejb-name> |
| <method-intf>Remote</method-intf> |
| <method-name>sayGoodAfternoon</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <trans-attribute>Required</trans-attribute> |
| </container-transaction> |
| <container-transaction> |
| <description>Mandatory</description> |
| <method> |
| <ejb-name>myStatefulTest</ejb-name> |
| <method-intf>Remote</method-intf> |
| <method-name>sayHello</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <trans-attribute>Mandatory</trans-attribute> |
| </container-transaction> |
| <container-transaction> |
| <description>Supports</description> |
| <method> |
| <ejb-name>myStatefulTest</ejb-name> |
| <method-intf>Remote</method-intf> |
| <method-name>sayGoodMorning</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <trans-attribute>Supports</trans-attribute> |
| </container-transaction> |
| <container-transaction> |
| <description>Required</description> |
| <method> |
| <ejb-name>StatefulTest</ejb-name> |
| <method-intf>Local</method-intf> |
| <method-name>sayGoodAfternoon</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <trans-attribute>Required</trans-attribute> |
| </container-transaction> |
| <container-transaction> |
| <description>RequiresNew</description> |
| <method> |
| <ejb-name>StatefulTest</ejb-name> |
| <method-intf>Local</method-intf> |
| <method-name>sayHello</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <trans-attribute>RequiresNew</trans-attribute> |
| </container-transaction> |
| <container-transaction> |
| <description>Required</description> |
| <method> |
| <ejb-name>StatefulTest</ejb-name> |
| <method-intf>Local</method-intf> |
| <method-name>sayGoodNight</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <trans-attribute>Required</trans-attribute> |
| </container-transaction> |
| <container-transaction> |
| <description>Supports</description> |
| <method> |
| <ejb-name>StatefulTest</ejb-name> |
| <method-intf>Local</method-intf> |
| <method-name>sayGoodMorning</method-name> |
| <method-params> |
| <method-param>java.lang.String</method-param> |
| </method-params> |
| </method> |
| <trans-attribute>Supports</trans-attribute> |
| </container-transaction> |
| </assembly-descriptor> |
| </ejb-jar> |