Test Assertions for the SCA_J Common Annotations and APIs Version 1.1 Specification

Similar documents
TestCases for the SCA_J Common Annotations and APIs Version 1.1 Specification

Test Assertions for the SCA Assembly Model Version 1.1 Specification

SCA-J POJO Component Implementation v1.1 TestCases Version 1.0

TestCases for the SCA POJO Component Implementation Specification Version 1.1

Test Assertions for the SCA Web Service Binding Version 1.1 Specification

Service Component Architecture Client and Implementation Model for C++ Test Cases Version 1.1

TestCases for the SCA Assembly Model Version 1.1

Test Assertions for the SCA Policy Framework 1.1 Specification

SCA JMS Binding v1.1 TestCases Version 1.0

TestCases for the SCA Web Service Binding Specification Version 1.1

TestCases for the SCA Web Service Binding Specification Version 1.1

SCA JMS Binding Specification v1.1 Test Assertions Version 1.0

Service Component Architecture Client and Implementation Model Specification for C++ Version 1.1

SAML V2.0 Profile for Token Correlation

Using the AMQP Anonymous Terminus for Message Routing Version 1.0

SAML V2.0 Profile for Mandator Credentials

Level of Assurance Authentication Context Profiles for SAML 2.0

Deployment Profile Template Version 1.0 for WS-Reliability 1.1

KMIP Opaque Managed Object Store Profile Version 1.0

Service Component Architecture Web Service Binding Specification Version 1.1

KMIP Storage Array with Self-Encrypting Drives Profile Version 1.0

SAML V2.0 EAP GSS SSO Profile Version 1.0

KMIP Opaque Managed Object Store Profile Version 1.0

Cloud Application Management for Platforms (CAMP) Test Assertions Version 1.1

OASIS - Artifact naming guidelines

KMIP Symmetric Key Lifecycle Profile Version 1.0

Search Web Services - searchretrieve Operation: Abstract Protocol Definition Version 1.0

This document is a preview generated by EVS

SOA-EERP Business Service Level Agreement Version 1.0

Abstract Code-Signing Profile of the OASIS Digital Signature Services

Test Assertions Part 1 - Test Assertions Model Version 1.0

SOA-EERP Business Service Level Agreement Version 1.0

XACML v3.0 XML Digital Signature Profile Version 1.0

TAXII Version Part 5: Default Query

XACML Profile for Requests for Multiple Resources

OSLC Change Management Version 3.0. Part 2: Vocabulary

OpenOffice Specification Sample

PPS (Production Planning and Scheduling) Part 3: Profile Specifications, Version 1.0

XDI Requirements and Use Cases

UBL NDR 2.0 Checklist

Open Command and Control (OpenC2) Language Specification. Version 0.0.2

OASIS Specification Document Template Usage

Asynchronous Processing Abstract Profile of the OASIS Digital Signature Services Version 1.0

Client and Implementation Model Specification for C++

XACML 3.0 Export Compliance-US (EC- US) Profile Version 1.0

Key Management Interoperability Protocol Crypto Profile Version 1.0

Client and Implementation Model Specification for Java

XACML v3.0 Hierarchical Resource Profile Version 1.0

Topology and Orchestration Specification for Cloud Applications Version 1.0

SAML v2.0 Protocol Extension for Requesting Attributes per Request Version 1.0

Updates: 2710 September 2003 Category: Standards Track. Source Address Selection for the Multicast Listener Discovery (MLD) Protocol

SAML v2.0 Protocol Extension for Requesting Attributes per Request Version 1.0

PPS (Production Planning and Scheduling) Part 1: Core Elements, Version 1.0

Request for Comments: 4633 Category: Experimental August 2006

Key Management Interoperability Protocol Use Cases Version 1.0

{Describe the status and stability of the specification here.}

Service Component Architecture Web Service Binding Specification Version 1.1

FINAL. SCA-Assembly TC Teleconference. 13 Jan Chair. Scribe. Attendees. Mike Edwards, Martin Chapman. Dave Booz

SAML v2.0 Protocol Extension for Requesting Attributes per Request Version 1.0

Metadata for SAML 1.0 Web Browser Profiles

Request for Comments: 3934 Updates: 2418 October 2004 BCP: 94 Category: Best Current Practice

XACML v3.0 Core and Hierarchical Role Based Access Control (RBAC) Profile Version 1.0

Topology and Orchestration Specification for Cloud Applications Version 1.0

Network Working Group. November Encoding Long Options in the Dynamic Host Configuration Protocol (DHCPv4)

REST API Design Guidelines Part 2

ECMAScript Test Suite

IETF TRUST. Legal Provisions Relating to IETF Documents. Approved November 6, Effective Date: November 10, 2008

DITA 1.2 Whitepaper: Tools and DITA-Awareness

TOSCA Test Assertions Version 1.0

Hierarchical Resources: Non-XML Resource Use Case

Business Process Modeling Language

Service Component Architecture Assembly Model Specification Version 1.1

Category: Standards Track September 2003

XACML v3.0 Hierarchical Resource Profile Version 1.0

Category: Standards Track December 2003

SIP Forum Copyrights and Trademark Rights in Contributions Policy

J2ME Code-Signing Profile of the OASIS Digital Signature Services

Production Planning and Scheduling (PPS) Version 1.0

IETF TRUST. Legal Provisions Relating to IETF Documents. February 12, Effective Date: February 15, 2009

Category: Standards Track September MIB Textual Conventions for Uniform Resource Identifiers (URIs)

Request for Comments: 2711 Category: Standards Track BBN October 1999

Service Component Architecture JMS Binding Specification Version 1.1

Multi-Server Based Namespace Data Management of Resource Namespace Service

Category: Standards Track October 2006

Web Services Profile of XACML (WS-XACML) Version 1.0

Metadata for SAML 1.0 Web Browser Profiles

Network Working Group Internet-Draft August 2005 Expires: February 2, Atom Link No Follow draft-snell-atompub-feed-nofollow-00.

Service Component Architecture Assembly Model Specification Version 1.1

Network Working Group. Category: Standards Track February SIEVE Filtering: Spamtest and VirusTest Extensions

Internet-Draft Harvard U. Editor March Intellectual Property Rights in IETF Technology. <draft-ietf-ipr-technology-rights-02.

Jabber, Inc. August 20, 2004

Network Working Group Request for Comments: Category: Best Current Practice January 2004

Network Working Group. Category: Informational April A Uniform Resource Name (URN) Namespace for the Open Geospatial Consortium (OGC)

Hierarchical Resource profile of XACML

Category: Standards Track June 2006

Network Working Group Request for Comments: 3937 Category: Informational October 2004

Request for Comments: 3905 Category: Informational September A Template for IETF Patent Disclosures and Licensing Declarations

XEP-0206: XMPP Over BOSH

ETSI GS MEC 016 V1.1.1 ( )

Identity in the Cloud PaaS Profile Version 1.0

Transcription:

Test Assertions for the SCA_J Common Annotations and APIs Version 1.1 Specification Working Draft 6 27 June 2009 Specification URIs: This Version: http://docs.oasis-open.org/sca-assembly/sca-j-caa-1.1-test-assertions-wd5.html http://docs.oasis-open.org/sca-assembly/sca-j-caa-1.1-test-assertions-wd5.odt http://docs.oasis-open.org/sca-assembly/sca-j-caa-1.1-test-assertions-wd5.pdf (Authoritative) Previous Version: Latest Version: http://docs.oasis-open.org/sca-assembly/sca-j-caa-1.1-test-assertions.html http://docs.oasis-open.org/sca-assembly/sca-j-caa-1.1-test-assertions.odt http://docs.oasis-open.org/sca-assembly/sca-j-caa-1.1-test-assertions.pdf (Authoritative) Technical Committee: OASIS Service Component Architecture / J (SCA-J) TC Chair(s): Mark Combellack David Booz Editor(s): Mike Edwards, Avaya IBM IBM Related Work: This document is related to: Service Component Architecture Java Common Annotations and APIs Specification Version 1.1 Declared XML Namespace(s): None Abstract: This document defines the Test Assertions for the SCA J CAA specification. Copyright OASIS 2009. All Rights Reserved. Page 1 of 48

The Test Assertions represent the testable items relating to the normative statements made in the SCA Java Common Annotations and APIs specification. The Test Assertions provide a bridge between the normative statements in the specification and the conformance TestCases which are designed to check that an SCA runtime conforms to the requirements of the specification. Status: This document was last revised or approved by the OASIS Service Component Architecture / J (SCA-J) TC on the above date. The level of approval is also listed above. Check the Latest Version or Latest Approved Version location noted above for possible later revisions of this document. Technical Committee members should send comments on this specification to the Technical Committee s email list. Others should send comments to the Technical Committee by using the Send A Comment button on the Technical Committee s web page at http://www.oasisopen.org/committees/sca-j/. For information on whether any patents have been disclosed that may be essential to implementing this specification, and any offers of patent licensing terms, please refer to the Intellectual Property Rights section of the Technical Committee web page (http://www.oasisopen.org/committees/sca-j/ipr.php. The non-normative errata page for this specification is located at http://www.oasis-open.org/committees/sca-j/ Copyright OASIS 2009. All Rights Reserved. Page 2 of 48

Notices Copyright OASIS 2009. All Rights Reserved. All capitalized terms in the following text have the meanings assigned to them in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The full Policy may be found at the OASIS website. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published, and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this section are included on all such copies and derivative works. However, this document itself may not be modified in any way, including by removing the copyright notice or references to OASIS, except as needed for the purpose of developing any document or deliverable produced by an OASIS Technical Committee (in which case the rules applicable to copyrights, as set forth in the OASIS IPR Policy, must be followed) or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. OASIS requests that any OASIS Party or any other party that believes it has patent claims that would necessarily be infringed by implementations of this OASIS Committee Specification or OASIS Standard, to notify OASIS TC Administrator and provide an indication of its willingness to grant patent licenses to such patent claims in a manner consistent with the IPR Mode of the OASIS Technical Committee that produced this specification. OASIS invites any party to contact the OASIS TC Administrator if it is aware of a claim of ownership of any patent claims that would necessarily be infringed by implementations of this specification by a patent holder that is not willing to provide a license to such patent claims in a manner consistent with the IPR Mode of the OASIS Technical Committee that produced this specification. OASIS may include such claims on its website, but disclaims any obligation to do so. OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS' procedures with respect to rights in any document or deliverable produced by an OASIS Technical Committee can be found on the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this OASIS Committee Specification or OASIS Standard, can be obtained from the OASIS TC Administrator. OASIS makes no representation that any information or list of intellectual property rights will at any time be complete, or that any claims in such list are, in fact, Essential Claims. The names "OASIS", [insert specific trademarked names, abbreviations, etc. here] are trademarks of OASIS, the owner and developer of this specification, and should be used only to refer to the organization and its official outputs. OASIS welcomes reference to, and implementation and use of, specifications, while reserving the right to enforce its marks against misleading uses. Please see http://www.oasisopen.org/who/trademark.php for above guidance. Copyright OASIS 2009. All Rights Reserved. Page 3 of 48

Table of Contents 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 Introduction...5 1.1 Example Test Assertion...5 1.2 Terminology...5 1.3 Normative References...6 1.4 Non-normative References...6 2 Test Assertions...7 2.1 Section 2...7 2.2 Section 3...10 2.3 Section 4...12 2.4 Section 5...18 2.5 Section 8...18 2.6 Section 9...21 2.7 Section 10...22 2.8 Section 11...37 3 Cross Mapping of Conformance Statements to Assertions...38 4 Conformance...42 Copyright OASIS 2009. All Rights Reserved. Page 4 of 48

19 20 21 22 23 24 25 26 1 Introduction This document defines the Test Assertions for the SCA Java Common Annotations and APIs Specification Version 1.1. The test assertions in this document follow the format defined in the OASIS Test Assertion Guidelines specification [TA-GUIDE]. 1.1 Example Test Assertion Test assertions are presented in a tabular format with rows corresponding to the entry types defined in [TA-GUIDE]. 27 28 JCA-TA-xxxx [JCAx00yy] <kitchensink/> element of composite file The <kitchensink/> element has a @drain attribute The @drain attribute value of the <kitchensink/> element is a URI that identifies a portal into the drainage system of the Domain. Mandatory kitchensink drain Domain 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 : Is a unique ID for the test assertion. Its format starts with a 3 letter string that identifies the specification to which it relates - "JCA" is for the SCA Java Common Annotations and APIs specification. This is followed by "-TA-" to indicate that this identifier is for a test assertion. This is then followed by a unique 4 digit number. : Is the identifier(s) of the normative statement(s) in the specification to which this assertion relates. : Identifies the target which is addressed by this assertion. This is typically some SCA document element, or other SCA artifact but possibly could identify an SCA runtime and its behaviour. : Defines any prerquisites for this test assertion. The prerequisites may be defined in terms of one or more other test assertions that must be true. : The meat of the assertion - something that should evaluate to true or false for the given target. : Mandatory (for MUST requirements) or Preferred (for SHOULD requirements) or Permitted (for MAY requirements). : Zero or more labels that may be attached to this test assertion - these tags can be used to group sets of assertions. 1.2 Terminology The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this specification are to be interpreted as described in IETF RFC 2119 [RFC 2119] Copyright OASIS 2009. All Rights Reserved. Page 5 of 48

48 49 50 51 52 53 54 1.3 Normative References [RFC 2119] S. Bradner. Key words for use in RFCs to Indicate Requirement s. IETF RFC 2119, March 1997. http://www.ietf.org/rfc/rfc2119.txt. [TA-GUIDE] Test Assertion Guidelines, Draft 0.9.9.6, 16 November, 2008 http://www.oasis-open.org/apps/group_public/download.php/30070/testassertionsguidelines-draft-0-9-9-6.pdf 55 [JAVACAA] OASIS SCA Java Common Annotations and APIs specification 56 57 58 http://docs.oasis-open.org/opencsa/sca-j/sca-javacaa-1.1-spec.pdf 1.4 Non-normative References None 59 Copyright OASIS 2009. All Rights Reserved. Page 6 of 48

60 61 2 Test Assertions 2.1 Section 2 62 63 64 65 66 67 68 JCA-TA-2001 [JCA20001] Java service marked remotable Service does not use method overloading "remotable" "overloading" JCA-TA-2002 [JCA20002] Stateless scoped Java implementation instance Implementation instance is dispatched on a single thread at one time "stateless scope" "single thread" JCA-TA-2003 [JCA20003] Stateless scoped Java implementation instance Implementation instance is invoked once through one business method during the lifetime of the implementation instance "stateless scope" "lifetime" "invocation" JCA-TA-2004 [JCA20004] Domain level component implemented by a Java class marked "composite Copyright OASIS 2009. All Rights Reserved. Page 7 of 48

69 70 71 72 73 74 scope" All clients of the component appear to interact with a single runtime instance of the implementation class "composite scope" "invocation" JCA-TA-2005 [JCA20005] Java implementation class marked with "composite scope" and with "eager initialization" Containing component is started The Java implementation class instance is created and initialized "composite scope" "lifetime" "eager initialization" JCA-TA-2006 [JCA20006] Method of Java implementation class with marked with @Init annotation Implementation instance is created Method is called "composite scope" "lifetime" "eager initialization" JCA-TA-2007 [JCA20007] Instance of a Java implementation class marked "composite scope" Implementation class is used as a component implementation Multiple invocations of services offered by the component are made, which overlap in time Multiple threads run in the single instance of the implementation class optional "composite scope" "lifetime" "eager initialization" Copyright OASIS 2009. All Rights Reserved. Page 8 of 48

75 76 77 78 79 80 81 JCA-TA-2008 [JCA20008] Java implementation class marked with "composite scope" Implementation class is used to implement a component nested inside a composite used to implement a domain level component Component offers at least one service Component has one or more clients for its service(s) Clients of the component appear to interact with a single instance of the implementation class "composite scope" "nested component" "instance" JCA-TA-2009 [JCA20009] Client invocation of a method of a service implementation Service method implementation marked "allows pass by reference" Client reference proxy marked "allows pass by reference" Client and service implementation run in the same JVM The invocation uses pass-by-reference call semantics for the input and response parameters optional "allows pass by reference" "pass by reference" "local" JCA-TA-2010 [JCA20010] Client invocation of a service implementation Service implementation method not marked "allows pass by reference" Client and service implementation run in the same JVM The invocation uses pass-by-value semantics for the input and response parameters "allows pass by reference" "pass by value "local" Copyright OASIS 2009. All Rights Reserved. Page 9 of 48

82 83 84 JCA-TA-2011 [JCA20010] Client invocation of a service implementation Client reference is not marked "allows pass by reference" Client and service implementation run in the same JVM The invocation uses pass-by-value semantics for the input and response parameters "allows pass by reference" "pass by value "local" 85 2.2 Section 3 86 87 88 89 90 JCA-TA-3001 [JCA30001] @interface attribute of a <interface.java/> element Value of @interface attribute is the fully qualified name of a Java interface class "interface element" "interface attribute" "Java interface class" JCA-TA-3002 [JCA30002] @callbackinterface attribute of <interface.java/> element interface.java element has a @callbackinterface attribute Value of @callbackinterface is the fully qualified name of a Java interface class "interface element" "callbackinterface attribute" "Java interface class" JCA-TA-3003 Copyright OASIS 2009. All Rights Reserved. Page 10 of 48

91 92 93 94 95 96 [JCA30003] @callbackinterface attribute of a <interface.java/> element interface.java element has a @callbackinterface attribute Java interface class referenced by the @interface attribute contains a @Callback annotation which references a Java interface class Value of @callbackinterface attribute is the same Java interface class as the one referenced by the @Callback annotation of the Java interface class referenced by the @interface attribute "interface element" "callbackinterface attribute" "Java interface class" "@Callback" JCA-TA-3004 [JCA30004] <interface.java/> element Conforms to the sca-interface-java.xsd schema "interface element" "schema" JCA-TA-3005 [JCA30005] @remotable attribute on <interface.java/> element Java interface class referenced by @interface attribute of interface.java element contains a @Remotable annotation @remotable attribute has the value "true" "interface element" "remotable attribute" "Java interface class" "@Remotable" JCA-TA-3006 [JCA30006] Java interface class referenced by @interface attribute of a <interface.java/> element Copyright OASIS 2009. All Rights Reserved. Page 11 of 48

97 98 99 100 101 Java interface class does not contain any of the annotations: @AllowsPassByReference, @ComponentName, @Constructor, @Context, @Destroy, @EagerInit, @Init, @Intent, @Property, @Qualifier, @Reference, @Scope, @Service. "interface element" "SCA annotations" "Java interface class" JCA-TA-3007 [JCA30007] Java interface class referenced by @callbackinterface attribute of a <interface.java/> element Java interface class does not contain any of the annotations: @AllowsPassByReference, @Callback, @ComponentName, @Constructor, @Context, @Destroy, @EagerInit, @Init, @Intent, @Property, @Qualifier, @Reference, @Scope, @Service. "interface element" "SCA annotations" "Java interface class" JCA-TA-3008 [JCA30008] Java implementation class referenced by @interface or @callbackinterface attribute of a <interface.java/> element Java implementation class does not contain any of the annotations: @Init, @Reference "interface element" "SCA annotations" "Java implementation class" 102 2.3 Section 4 103 JCA-TA-4001 [JCA40001] Constructor of Java component implementation class Component is at the start of the Constructing state of its lifecycle Copyright OASIS 2009. All Rights Reserved. Page 12 of 48

104 105 106 107 108 109 Constructor is invoked by the SCA runtime "lifecycle" "constructing" "constructor" JCA-TA-4002 [JCA40002] Constructor of Java component implementation class Constructor is invoked by the SCA runtime at the start of the Constructing state of its lifecycle Constructor references and properties are injected when the constructor is invoked "lifecycle" "constructing" "constructor" "injection" "reference" "property" JCA-TA-4003 [JCA40003] Java component implementation class in Constructing state Constructor method completes successfully Component implementation transitions to the Injecting state "lifecycle" "constructing" "injecting" "transition" JCA-TA-4004 [JCA40004] Java component implementation class in Constructing state Constructor method throws an exception Component implementation class is transitioned to the Terminating state "lifecycle" "constructor" "exception" "terminating" JCA-TA-4005 [JCA40005] Java component implementation class in Injecting state Implementation has one or more properties Copyright OASIS 2009. All Rights Reserved. Page 13 of 48

110 111 112 Properties are injected (via field or setter injection) before any other actions occur "lifecycle" "injecting" "property" JCA-TA-4006 [JCA40006] Java component implementation class in Injecting state Implementation has one or more references Implementation has one or more properties References are injected (via field or setter injection) after properties have been injected "lifecycle" "injecting" "reference" 113 JCA-TA-4007 [JCA40007] Java component implementation with one or more injected property / reference Implementation code does not use synchronization Injected properties and references are visible to the component implementation "lifecycle" "injecting" "synchronization" "property" "reference" 114 JCA-TA-4008 [JCA40008] Java component implementation in injecting state Implementation has 1 or more service methods Service methods are not invoked "lifecycle" "injecting" "service methods" JCA-TA-4009 [JCA40009] Java component implementation in injecting state Copyright OASIS 2009. All Rights Reserved. Page 14 of 48

115 116 117 118 119 All properties and references have been injected Component implementation transitions to the Initializing state "lifecycle" "injecting" "transition" "initializing" JCA-TA-4010 [JCA40010] Java component implementation in injecting state Exception is thrown while a property or a reference is being injected Component implementation transitions to the Destroying state "lifecycle" "injecting" "exception" "transition" "destroying" JCA-TA-4011 [JCA40011] Java component implementation entering initializing state Implementation has a method annotated with @Init Method markedannotated with @Init is invoked "lifecycle" "initializing" "@Init" JCA-TA-4012 [JCA40012] Java component implementation in initializing state Implementation has an injected reference of injected reference has not been initialized Implementation invokes a method on the reference Implementation receives a ServiceUnavailableException "lifecycle" "injecting" "exception" "reference" "uninitialized" JCA-TA-4013 [JCA40013] Java component implementation in initializing state Copyright OASIS 2009. All Rights Reserved. Page 15 of 48

120 121 122 123 124 Implementation has 1 or more service methods Service methods are not invoked "lifecycle" "injecting" "service" "invocation" JCA-TA-4014 [JCA40014] Java component implementation in initializing state Invocation of method annotated with @Init completes successfully Component implementation transitions to the Running state "lifecycle" "initializing" "transition" "running" JCA-TA-4015 [JCA40015] Java component implementation in initializing state Exception is thrown by the component implementation Component implementation transitions to the Destroying state "lifecycle" "initializing" "exception" "transition" "destroying" JCA-TA-4016 [JCA400160] Java component implementation in running state Component has one or more service Client component invokes one of the service operations Implementation service method corresponding to the operation is invoked "lifecycle" "running" "service" "invocation" "method" JCA-TA-4017 [JCA40017] Java component implementation in running state Implementation scope ends Copyright OASIS 2009. All Rights Reserved. Page 16 of 48

125 126 127 128 129 Component implementation transitions to the Destroying state "lifecycle" "running" "scope ends" "transition" "destroying" JCA-TA-4018 [JCA40018] Java component implementation entering Destroying state Implementation has a method annotated with @Destroytransitions to Destroying state Implementation mmethod annotated with @Destroy is invoked "lifecycle" "destroying" "@Destroy" "transition" JCA-TA-4019 [JCA40019] Java component implementation in destroying state Implementation has an injected reference Implementation invokes a method on the reference of reference has already been destroyed Implementation receives an InvalidServiceException "lifecycle" "destroying" "exception" "reference" JCA-TA-4020 [JCA40020] Java component implementation in destroying state Implementation has one or more services Client component invokes service operations Implementation service methods are not invoked "lifecycle" "destroying" "service" "method" "invocation" JCA-TA-4021 [JCA40021] Copyright OASIS 2009. All Rights Reserved. Page 17 of 48

130 131 132 133 Java component implementation in Destroying state Method with @Destroy annotation completes Component implementation transitions to terminated state "lifecycle" "destroying" "@Destroy" "transition" "terminated" JCA-TA-4022 [JCA40022] Java component implementation in Destroying state Method with @Destroy annotation throws an exception Component implementation transitions to the terminated state "lifecycle" "destroying" "exception" "transition" "terminated" "@Destroy" JCA-TA-4023 [JCA40023] Java component implementation is in Terminated state Component implementation has service Client component invokes operations on a service Implementation service methods are not invoked "lifecycle" "terminated" "service" "invocation" 134 2.4 Section 5 135 136 JCA-TA-5001 [JCA50001] Copyright OASIS 2009. All Rights Reserved. Page 18 of 48

137 138 139 2.5 Section 8 140 141 142 143 144 145 JCA-TA-8001 [JCA70001] Declaration of a Java annotation that corresponds to an SCA intent Declaration includes the @Intent annotation "annotation" "declaration" "@Intent" "intent" JCA-TA-8002 [JCA70002] Method of Java implementation class Method is annotated with an Intent annotation Method is a setter method for an SCA reference, either through explicit marking with @Reference or through introspection as defined in component implementation specification "annotation" "method" "intent" JCA-TA-8003 [JCA70002] Field of a Java implementation class Field is annotated with an Intent annotation Field is an SCA reference field, either through explicit marking with @Reference or through introspection as defined in the component implementation specification "annotation" "field" "intent" JCA-TA-8004 [JCA70002] Copyright OASIS 2009. All Rights Reserved. Page 19 of 48

146 147 148 149 150 Constructor parameter of a Java implementation class Constructor parameter is annotated with an Intent annotation Constructor parameter is marked as an SCA reference using the @Reference annotation "annotation" "constructor" "parameter" "intent" JCA-TA-8005 [JCA70003] Java element annotated with multiple intent annotations The set of intents which apply to the Java element are the combination of all the separate intents declared by the annotations, following the combination rules defined in the SCA Policy Framework spec "annotation" "multiple" "intent" "combination" JCA-TA-8006 [JCA70004] Method of a Java interface One set of Intent annotations are specified on the Java interface A second set of Intent annotations are specified on the method The set of intents which apply to the method are the combination of the set of intents on the interface with the set of intents on the method, following the merging rules for a structural hierarchy defined in the SCA Policy Framework specification "annotation" "multiple" "intent" "combination" "interface" "method" JCA-TA-8007 [JCA70005] Method of Java implementation class Method is annotated with a PolicySets annotation Method is a setter method for an SCA reference, either through explicit marking with @Reference or through introspection as defined in component implementation specification Copyright OASIS 2009. All Rights Reserved. Page 20 of 48

151 152 153 154 155 156 157 "annotation" "reference" "@PolicySets" "method" JCA-TA-8008 [JCA70005] Field of a Java implementation class Field is annotated with a PolicySets annotation Field is an SCA reference field, either through explicit marking with @Reference or through introspection as defined in the component implementation specification "annotation" "reference" "@PolicySets" "field" JCA-TA-8009 [JCA70005] Constructor parameter of a Java implementation class Constructor parameter is annotated with a PolicySets annotation Constructor parameter is marked as an SCA reference using the @Reference annotation "annotation" "constructor" "@PolicySets" "reference" JCA-TA-8010 [JCA70006] Method of a Java interface Java interface is annotated with @PolicySets annotation Method is annotated with a second @PolicySets annotation The set of intents which apply to the method is the union of the policy sets specificed by the two @PolicySets annotations. "annotation" "@PolicySets" "interface" "method" "combination" Copyright OASIS 2009. All Rights Reserved. Page 21 of 48

158 2.6 Section 9 159 160 161 162 163 164 165 JCA-TA-9001 [JCA80001] invocation of getservice(...) method of ComponentContext API referencename parameter of the method identifies a reference of multiplicity 0..n or multiplicity 1..n getservice(...) method throws an IllegalArgumentException "ComponentContext" "getservice" "0..n" "1..n" "IllegalArgumentException" JCA-TA-9002 [JCA80002] invocation of getrequestcontext(...) method of ComponentContext API invocation takes place during the execution of a Java business method of a service operation invocation take place on the same Java thread use by the SCA runtime to invoke the business method invocation returns a non-null value for the RequestContext "ComponentContext" "getrequestcontext" "business method" "service" JCA-TA-9005 [JCA80002] invocation of getrequestcontext(...) method of ComponentContext API invocation takes place during the execution of a Java business method of a callback operation invocation take place on the same Java thread use by the SCA runtime to invoke the business method invocation returns a non-null value for the RequestContext "ComponentContext" "getrequestcontext" "business method" "callback" JCA-TA-9003 Copyright OASIS 2009. All Rights Reserved. Page 22 of 48

166 167 [JCA80003] invocation of getservicereference() method of RequestContext API invocation takes place during the execution of a Java business method of a service operation getservicereference() method returns a ServiceReference object that represents the service that was invoked "RequestContext" "service operation" "getservicereference" JCA-TA-9004 [JCA80003] invocation of getservicereference() method of RequestContext API invocation takes place during the execution of a Java business method of a callback operation getservicereference() method returns a ServiceReference object that represents the callback that was invoked "RequestContext" "callback operation" "getservicereference" 168 2.7 Section 10 169 JCA-TA-10001 [JCA90001] Component implementation contains an SCA annotation that is improperly used The component which uses the implementation does not run "implementation" "invalid annotation" 170 JCA-TA-10002 [JCA90002] Component implementation class Class has static method Class has an SCA annotation Class does not have SCA annotation applied to static method Copyright OASIS 2009. All Rights Reserved. Page 23 of 48

171 172 173 174 175 176 "SCA annotation" "static method" JCA-TA-10003 [JCA90002] Component implementation class Class has static field Class has an SCA annotation Class does not have SCA annotation applied to static field "SCA annotation" "static field" JCA-TA-10004 [JCA90052] Java class containing @AllowsPassByReference annotation @AllowsPassByRefereence annotation is attached to: - the Java class itself - or a method of a remotable service offered by the class - or an SCA reference of the class, in which case it is attached to the reference in a place where a @Reference annotation is valid "@AllowsPassByReference" "Java class" "attachment" JCA-TA-10031 [JCA90046] @Callback annotation used to annotationon a setter method or on a field of an implementation class, for injection of a callback object @Callback annotation does not specify any attributes "annotation" "Callback" "implementation" "injection" Copyright OASIS 2009. All Rights Reserved. Page 24 of 48

177 178 179 180 JCA-TA-10005 [JCA90003] Constructor of an implementation class Constructor has parameters Constructor is annotated with the @Constructor annotation Each parameter of the Constructor is annotated with either @Reference or with @Property "annotation" "constructor" "parameters" "@Reference" "@Property" JCA-TA-10006 [JCA90004] Method of Java implementation class annotated with @Destroy Method has void return type and no arguments "annotation" "@Destroy" "return type" "arguments" JCA-TA-10007 [JCA90005] Java implementation class with a method annotated with @Destroy Scope of the implementation class ends Method annotated with @Destroy is invoked. "annotation" "@Destroy" "invoke" "scope" JCA-TA-10008 [JCA90007] Java implementation class annotated with @EagerInit Implementation class is Composite scoped Component using the implementation is started Java implementation class is started "annotation" "@EagerInit" "composite scope" "started" JCA-TA-10009 Copyright OASIS 2009. All Rights Reserved. Page 25 of 48

181 182 183 184 185 [JCA90008] Method annotated with @Init in a Java implementation class Method has void return type and no arguments "anotation" "method" "@Init" "return type" "arguments" JCA-TA-10010 [JCA90009] Method annotated with @Init Java class is started Property and Reference injection is complete Method is invoked "annotation" "@Init" "started" "invoked" JCA-TA-10011 [JCA90011] Java implementation class field annotated with @Property Class field is not declared as final "annotation" "@Property" "field" "final" JCA-TA-10012 [JCA90013] @Property annotation of a constructor parameter @Property annotation has a @name attribute present "annotation" "@Property" "@name" "constructor" "parameter" JCA-TA-10013 [JCA90014] Copyright OASIS 2009. All Rights Reserved. Page 26 of 48

186 187 188 @Property annotation of a constructor parameter @Property annotation has @required=true "annotation" "@Property" "@required" "constructor" "parameter" JCA-TA-10014 [JCA90047] Introspected component type of Java implementation class @Property annnotation is applied to a class field or to the input parameter of a setter method or of a constructor Type of the element to which @Property is applied is an array or is a type that implements or extends java.util.collection Component type contains a <property/> element corresponding to the @Property annotation, with @many attribute set to "true" "annotation" "@Property" "componenttype" "@many" "array" "collection" JCA-TA-10015 [JCA90047] Introspected component type of Java implementation class @Property annnotation is applied to a class field or to the input parameter of a setter method or of a constructor Type of the element to which @Property is applied is not an array and is not a type that implements or extends java.util.collection Component type contains a <property/> element corresponding to the @Property annotation, with @many attribute set to "false" "annotation" "@Property" "componenttype" "@many" "array" "collection" JCA-TA-10016 [JCA90015] Definition of an Intent annotation The SCA intent has qualifiers The Intent annotation definition contains the @Qualifier annotation "annotation" "defintion" "intent" "qualifiiers" "@Qualifier" Copyright OASIS 2009. All Rights Reserved. Page 27 of 48

189 190 191 192 JCA-TA-10017 [JCA90016] Java implementation class field annotated with @Reference Class field is not declared as final "annotation" "@Reference" "field" "final" JCA-TA-10018 [JCA90018] @Reference annotation of a constructor method parameter @Reference annotation has a @name attribute present "annotation" "constructor" "parameter" "@Reference" "@name" JCA-TA-10019 [JCA0019] @Reference annotation of a constructor method parameter @Reference annotation has its @required attribute with the value "true" "annotation" "constructor" "parameter" "@Reference" "@required" JCA-TA-10020 [JCA90020] Introspected component type of Java implementation class @Reference annnotation is applied to a class field or to the input parameter of a setter method or of a constructor Type of the element to which @Reference is applied is not an array and is not a type that implements or extends java.util.collection @Reference @required attribute has the value "false" Component type contains a <reference/> element corresponding to the @Refeence annotation, with @multiplicity attribute set to "0..1" "annotation" "@Reference" "componenttype" "@multiplicity" "array" Copyright OASIS 2009. All Rights Reserved. Page 28 of 48

193 194 195 "collection" JCA-TA-10021 [JCA90020] Introspected component type of Java implementation class @Reference annnotation is applied to a class field or to the input parameter of a setter method or of a constructor Type of the element to which @Reference is applied is not an array and is not a type that implements or extends java.util.collection @Reference @required attribute has the value "true" Component type contains a <reference/> element corresponding to the @Refeence annotation, with @multiplicity attribute set to "1..1" "annotation" "@Reference" "componenttype" "@multiplicity" "array" "collection" JCA-TA-10022 [JCA90021] Introspected component type of Java implementation class @Reference annnotation is applied to a class field or to the input parameter of a setter method or of a constructor Type of the element to which @Reference is applied is an array or is a type that implements or extends java.util.collection @Reference @required attribute has the value "false" Component type contains a <reference/> element corresponding to the @Refeence annotation, with @multiplicity attribute set to "0..n" "annotation" "@Reference" "componenttype" "@multiplicity" "array" "collection" JCA-TA-10023 [JCA90021] Introspected component type of Java implementation class @Reference annnotation is applied to a class field or to the input parameter of a setter method or of a constructor Type of the element to which @Reference is applied is an array or is a type that implements or extends java.util.collection @Reference @required attribute has the value "true" Component type contains a <reference/> element corresponding to the @Refeence annotation, with @multiplicity attribute set to "1..n" Copyright OASIS 2009. All Rights Reserved. Page 29 of 48

196 "annotation" "@Reference" "componenttype" "@multiplicity" "array" "collection" 197 JCA-TA-10024 [JCA90022] Reference obtained by the Java implementation either via injection or via the ComponentContext getservice(...) method Reference has multiplicity of 0..1 Component reference is unwired Reference is null "reference" "unwired" "null" "0..1" "multiplicity" 198 199 JCA-TA-10025 [JCA90023] Reference obtained by the Java implementation either via injection or via the ComponentContext getservice(...) method Reference has multiplicity of 0..n Component reference is unwired Reference is an empty array/collection "reference" "unwired" "empty" "0..n" "multiplicity" JCA-TA-10026 [JCA90024] Component reference is rewired during lifetime of an implementation instance Reference object is reinjected into the implementation instance optional "reinjection" "reference" "rewire" "implementation" "instance" JCA-TA-10027 [JCA90025] Implementation class which has a reference reinjected due to wiring changes Copyright OASIS 2009. All Rights Reserved. Page 30 of 48

200 201 202 203 204 SCA Runtime supports reinjection. Implementation is not STATELESS scope "reinjection" "reference" "implementation" "stateless" "scope" JCA-TA-10028 [JCA90025] Implementation class which has a reference reinjected due to wiring changes Implementation does not use constructor based injection for that reference "reinjection" "reference" "implementation" "constructor" JCA-TA-10029 [JCA90026] Reference object of an implementation instance Reference wiring changes so that reference target is changed Reference is not reinjected Reference object continues to work as if the reference target is not changed "reference" "rewire" "reinjection" JCA-TA-10030 [JCA90027] Operation invocation on a reference of an implementation instance of the reference has been undeployed since the reference was injected Operation throws InvalidServiceException recommended "reference" "target" "undeployed" "invocation" "InvalidServiceException" JCA-TA-10032 [JCA90028] Copyright OASIS 2009. All Rights Reserved. Page 31 of 48

205 206 207 208 Operation invocation on a reference of an implementation instance of the reference has become unavailable for some reason Operation throws ServiceUnavailableException recommended "reference" "target" "unavailable" "invocation" "ServiceUnavailableException" JCA-TA-10033 [JCA90029] Operation invocation on a reference of an implementation instance of the reference has been changed since the reference was injected Operation either works or throws InvalidServiceException "reference" "target" "changed" "invocation" "InvalidServiceException" JCA-TA-10034 [JCA90030] ServiceReference obtained from a reference object via the ComponentContext.cast() method Reference is reinjected ServiceReference object continues to work as if the reference target were not changed "ServiceReference" "reference" "reinjection" "cast(...)" JCA-TA-10035 [JCA90031] Operation invocation on ServiceReference object of the ServiceReference is undeployed Operation throws an InvalidServiceException recommended "ServiceReference" "target" "undeployed" "InvalidServiceException" "invocation" JCA-TA-10036 [JCA90032] Operation invocation on ServiceReference object Copyright OASIS 2009. All Rights Reserved. Page 32 of 48

209 210 211 212 of the ServiceReference becomes unavailable Operation throws a ServiceUnavailableException recommended "ServiceReference" "target" "unavailable" "ServiceUnavailableException" "invocation" JCA-TA-10037 [JCA90033] Operation invocation on a ServiceReference object of the ServiceReference has been changed since the ServiceReference was obtained Operation either works or throws InvalidServiceException "ServiceReference" "target" "changed" "InvalidServiceException" "invocation" JCA-TA-10038 [JCA90034] Reference obtained from getservice() method of ComponentContext Domain configuration has changed since the component was started Configuration changes affect the reference Reference configuration reflects the Domain configuration at the time the getservice() method was called "reference" "getservice()" "domain" "configuration" "changed" JCA-TA-10039 [JCA900345] ServiceReference obtained from getservicereference() method of ComponentContext Domain configuration has changed since the component was started Configuration changes affect the reference ServiceReference configuration reflects the Domain configuration at the time the getservicereference() method was called "ServiceReference" "getservicereference()" "domain" "configuration" "changed" Copyright OASIS 2009. All Rights Reserved. Page 33 of 48

213 214 215 216 JCA-TA-10056 [JCA90035] Business method of a reference obtained through the component context getservice() method or of a ServiceReference obtained through the component context getservicereference() method of reference/servicereference has been undeployed or has become unavailable Invocation of the business method throws InvalidServiceException or ServiceUnavailableException "reference" "getservice()" "ServiceReference" "getservicereference()" "target" "undeployed" "unavailable" JCA-TA-10040 [JCA90036] Reference obtained from getservice() method of ComponentContext service of the component reference has changed since the component was started Reference target is the new target for the component reference recommended "reference" "getservice()" "target" "changed" JCA-TA-10041 [JCA90036] ServiceReference obtained from getservicereference() method of ComponentContext service of the component reference has changed since the component was started ServiceReference target is the new target for the reference recommended "ServiceReference" "getservicereference()" "target" "changed" JCA-TA-10042 [JCA90037] Array or Collection object for a reference of multiplicity 0..n or 1..n Changes occur to the wiring of the reference or to the target(s) of the wiring Reference reinjection is not allowed Contents of the Array / Collection do not change Copyright OASIS 2009. All Rights Reserved. Page 34 of 48

217 218 219 220 221 "reference" "multiplicity" "0..n" "1..n" "wiring" "target" "change" "injection" JCA-TA-10043 [JCA90038] Reference with multiplicity 0..n or 1..n with a setter method for injection Changes occur to the wiring of the reference or to the target(s) of the wiring Reference was originally injected with an array or a collection object Runtime supports reference reinjection. Setter method is invoked with an array / collection object containing the new targets of the component reference "reference" "multiplicity" "0..n" "1..n" "wiring" "target" "change" "injection" JCA-TA-10044 [JCA90039] Array or Collection object for a reference, where reinjection takes place Reference of multiplicity 0..n or 1..n Changes occur to the wiring of the reference or to the target(s) of the wiring Runtime supports reinjection Array or Collection object is not the same object that was originally injected for this reference "reference" "multiplicity" "0..n" "1..n" "wiring" "target" "change" "injection" JCA-TA-10045 [JCA90040] Interface of a service marked remotable by the @Remotable annotation The interface is translatable into a WSDL porttype "interface" "service" "remotable" "WSDL" "porttype" "translatable" JCA-TA-10046 Copyright OASIS 2009. All Rights Reserved. Page 35 of 48

222 223 224 225 [JCA90041] @Scope annotation Annotation is applied to a component implementation class "annotation" "@Scope" "implementation class" JCA-TA-10047 [JCA90042] Implementation class annotated with @Service annotation @Service annotation declares a set of services which implies a set of service interfaces Implementation class implements all of the methods of all the declared service interfaces "annotation" "@Service" "methods" "interface" "implementation" JCA-TA-10048 [JCA90048] @Service annotation @name attribute is declared @Service annotation declares a @value attribute "annotation" "@Service" "@name" "@value" JCA-TA-10049 [JCA90049] @Service annotation @names attribute is declared @Service annotation declares a @interfaces attribute "annotation" "@Service" "@names" "@interfaces" JCA-TA-10050 [JCA90050] @names attribute of @Service annotation Copyright OASIS 2009. All Rights Reserved. Page 36 of 48

226 227 228 229 Number of strings in the @names attribute array is the same as the number of element in the @interfaces attribute array "annotation" "@Service" "@names" "@interfaces" "number" JCA-TA-10051 [JCA90043] @Service annotation with @interfaces attribute declared @Service annotation does not declare an @value attribute "annotation" "@Service" "@interfaces" "@value" JCA-TA-10052 [JCA90043] @Service annotation with @value attribute declared @Service annotation does not declare an @interfaces attribute "annotation" "@Service" "@interfaces" "@value" JCA-TA-10053 [JCA90044] @Service annotation with single interface class object Void.class Void.class is either the default value for the @value attribute or the default content of the @interfaces array, or it is explicitly used as the value for the @value or @interfaces attributes @Service annotation is ignored - the implementation class is treated as if the annotation was not present at all "annotation" "@Service" "@interfaces" "@value" "Void.class" "ignored" JCA-TA-10054 [JCA90051] @Service annotation Annotation specifies one or more interface class other than Void.class for Copyright OASIS 2009. All Rights Reserved. Page 37 of 48

230 231 either its @value or @interfaces attributes @Service annotation does not specify Void.class for either its @value or its @interfaces attributes "annotation" "@Service" "@interfaces" "@value" "Void.class" JCA-TA-10055 [JCA90045] Implementation class declaring 2 or more services Each service has a distinct Java simple name "annotation" "@Service" "service" "name" 232 2.8 Section 11 233 234 235 JCA-TA-11001 [JCA100001] Java interface which is mapped to WSDL by SCA runtime Java interface does not have a @WebService annotation Interface is mapped to WSDL as if it did have @WebService annotation "interface" "Java" "WSDL" "mapping" "@WebService" JCA-TA-11002 [JCA100002] Java interface containing @org.oasisopen.sca.annotation.oneway annotation, mapped to WSDL by SCA runtime Interface is mapped to WSDL as if it contained a @javax.jws.oneway annotation "interface" "Java" "WSDL" "mapping" "@OneWay" JCA-TA-11003 Copyright OASIS 2009. All Rights Reserved. Page 38 of 48

236 [JCA100003] WSDL interface mapped to a Java interface by SCA runtime Generated @WebService annotation in Java interface is taken to mean that the service interface is Remotable "interface" "Java" "WSDL" "mapping" "@WebService" "remotable" 237 238 JCA-TA-11004 [JCA100004] Java interface used for service interface Interface contains JAXB 2.1 data types and annotations SCA runtime is able to map the interface to WSDL "interface" "WSDL" "mapping" "JAXB" "2.1" JCA-TA-11005 [JCA100005] Java interface used for service interface Interface contains SDO 2.1 data types and annotations SCA runtime is able to map the interface to WSDL optional "interface" "WSDL" "mapping" "SDO" "2.1" 239 JCA-TA-11006 [JCA100006] Java interface used to declare SCA service interface in <interface.java/> element Java interface does not contain additional client side asynchronous polling and callback methods defined by JAX-WS "interface" "service" "asynchronous" "polling" "callback" "methods" JCA-TA-11007 [JCA100007] Java interface used to declare SCA reference interface in a Java Copyright OASIS 2009. All Rights Reserved. Page 39 of 48

240 241 242 implementation class Java interface contains the additional client side asynchronous polling and callback methods defined by JAX-WS Java interface is treated as valid and is used optional "interface" "reference" "asynchronous" "polling" "callback" "methods" JCA-TA-11008 [JCA100008] SCA reference interface in the component type of a Java implementation class Reference is declared in the implementation class using a Java interface which contains the additional client side asynchronous polling and callback methods defined by JAX-WS Reference interface in the component type does not contain the additional client side asynchronous polling and callback methods defined by JAX-WS "interface" "reference" "componenttype" "asynchronous" "polling" "callback" "methods" JCA-TA-11009 [JCA100009] Java interface used to declare SCA reference interface in a Java implementation class Java interface contains the additional client side asynchronous polling and callback methods defined by JAX-WS The implementation class is able to use the client side asynchronous polling and callback methods, with the semantics as described in the JAX- WS 2.1 specification "interface" "reference" "asynchronous" "polling" "callback" "methods" Copyright OASIS 2009. All Rights Reserved. Page 40 of 48

243 244 3 Cross Mapping of Conformance Statements to Assertions 245 246 247 Conformance statement JCA20001 JCA20002 JCA20003 JCA20004 JCA20005 JCA20006 JCA20007 JCA20008 JCA20009 JCA20010 JCA-TA-2001 JCA-TA-2002 JCA-TA-2003 JCA-TA-2004 JCA-TA-2005 JCA-TA-2006 JCA-TA-2007 JCA-TA-2008 JCA-TA-2009 JCA-TA-2010 JCA-TA-2011 Test Assertion 248 249 Conformance statement JCA30001 JCA30002 JCA30003 JCA30004 JCA30005 JCA30006 JCA30007 JCA30008 Test Assertion JCA-TA-3001 JCA-TA-3002 JCA-TA-3003 JCA-TA-3004 JCA-TA-3005 JCA-TA-3006 JCA-TA-3007 Covered by JCA-TA-30086 and JCA-TA-3007 Conformance statement JCA40001 JCA40002 JCA40003 JCA40004 JCA40005 JCA40006 JCA40007 JCA40008 JCA40009 JCA40010 JCA40011 JCA40012 JCA-TA-4001 JCA-TA-4002 JCA-TA-4003 JCA-TA-4004 JCA-TA-4005 JCA-TA-4006 JCA-TA-4007 JCA-TA-4008 JCA-TA-4009 JCA-TA-4010 JCA-TA-4011 JCA-TA-4012 Test Assertion Copyright OASIS 2009. All Rights Reserved. Page 41 of 48

250 251 252 Conformance statement JCA40013 JCA40014 JCA40015 JCA40016 JCA40017 JCA40018 JCA40019 JCA40020 JCA40021 JCA40022 JCA40023 Conformance statement JCA70001 JCA70002 JCA70003 JCA70004 JCA70005 JCA70006 Conformance statement JCA80001 JCA80002 JCA80003 JCA-TA-4013 JCA-TA-4014 JCA-TA-4015 JCA-TA-4016 JCA-TA-4017 JCA-TA-4018 JCA-TA-4019 JCA-TA-4020 JCA-TA-4021 JCA-TA-4022 JCA-TA-4023 JCA-TA-8001 JCA-TA-8002 JCA-TA-8003 JCA-TA-8004 JCA-TA-8005 JCA-TA-8006 JCA-TA-8007 JCA-TA-8008 JCA-TA-8009 JCA-TA-8010 JCA-TA-9001 JCA-TA-9002 JCA-TA-9005 JCA-TA-9003 JCA-TA-9004 Test Assertion Test Assertion Test Assertion Conformance statement JCA90001 JCA90002 JCA90003 JCA90004 JCA90005 JCA90007 JCA90008 JCA-TA-10001 JCA-TA-10002 JCA-TA-10003 JCA-TA-10005 JCA-TA-10006 JCA-TA-10007 JCA-TA-10008 JCA-TA-10009 Test Assertion Copyright OASIS 2009. All Rights Reserved. Page 42 of 48