Every module that you install in Geronimo, whether it is a service, application, resource, etc., can be configured via a deployment plan. These deployment plans are XML files based on XML Schemas containing the configuration details for a specific application module or component. The Java EE 5 specification defines standard deployment descriptors such as web.xml, application.xml, etc. The Java EE 5 specifications also allows the usage of annotations directly in the Java code to mitigate the development burdens associated with creating Java EE 5 applications.
Annotations in the Java EE specifications is a new metadata facility where many java entities such as classes, fields, packages, methods, etc. can be decorated with annotations. These declarations can reduce, and in many cases eliminate entirely, the necessity of using deployment plans. When both annotations and a declarations in a deployment plan are provided the whe declarations in the deployment plna will take precedence. This allows changes to the deployment characterics of Java EE 5 modules without having to change the code.
Geronimo as a Java EE 5 certified application server supports all the annotations in the Java EE 5 specifications. These annotations are listed and described below, along with the corresponding Java EE 5 specification, and the deployment plan XML element(s) they can replace (if applicable):
Here is a list of all Java EE 5 annotations supported by Geronimo:
JSR |
Annotation |
Deployment |
Supported in |
Notes |
---|---|---|---|---|
JSR 250 |
1. javax.annotation.Generated |
|
|
The only annotation with SOURCE retention. All the others are RUNTIME. |
|
2. javax.annotation.PostConstruct |
<post-construct> |
Client JAR |
See JavaServer |
|
3. javax.annotation.PreDestroy |
<pre-destroy> |
Client JAR |
See JavaServer Pages™ Specification Version 2.1, Section JSP.7.1.11 Resource Injection |
|
4. javax.annotation.Resource |
1. <env-entry> |
EJB JAR |
See JavaServer Pages™ Specification Version 2.1, Section JSP.7.1.11 Resource Injection |
|
4. javax.annotation.Resource |
2. <service-ref> |
EJB JAR |
See JavaServer Pages™ Specification Version 2.1, Section JSP.7.1.11 Resource Injection |
|
4. javax.annotation.Resource |
3. <resource-ref> |
EJB JAR |
See JavaServer Pages™ Specification Version 2.1, Section JSP.7.1.11 Resource Injection |
|
4. javax.annotation.Resource |
4. <message-destination-ref> |
EJB JAR |
See JavaServer Pages™ Specification Version 2.1, Section JSP.7.1.11 Resource Injection |
|
4. javax.annotation.Resource |
5. <resource-env-ref> |
EJB JAR |
See JavaServer Pages™ Specification Version 2.1, Section JSP.7.1.11 Resource Injection |
|
4. javax.annotation.Resource |
6. <webservice-context> |
EJB JAR |
See JavaServer Pages™ Specification Version 2.1, Section JSP.7.1.11 Resource Injection |
|
5. javax.annotation.Resources |
|
|
Same as javax.annotation.Resource |
|
6. javax.annotation.security.DeclareRoles |
<security-role-ref> |
EJB JAR |
|
|
7. javax.annotation.security.DenyAll |
|
EJB JAR |
Not supported in servlets. See Java™ Platform, Enterprise Edition (Java EE) Specification, v5, Page 141, Section EE.6.24, Table EE.6-E |
|
8. javax.annotation.security.PermitAll |
<unchecked> |
EJB JAR |
Not supported in servlets. See Java™ Platform, Enterprise Edition (Java EE) Specification, v5, Page 141, Section EE.6.24, Table EE.6-E |
|
9. javax.annotation.security.RolesAllowed |
<role-name> |
EJB JAR |
Not supported in servlets. See Java™ Platform, Enterprise Edition (Java EE) Specification, v5, Page 141, Section EE.6.24, Table EE.6-E |
|
10. javax.annotation.security.RunAs |
<run-as> |
EJB JAR |
Servlets only. See Java™ Platform, Enterprise Edition (Java EE) Specification, v5, Page 141, Section EE.6.24, Table EE.6-E |
JSR |
Annotation |
Deployment |
Supported in |
Notes |
JSR-220 |
1. javax.ejb.ActivationConfigProperty |
<activation-config-property> |
Client JAR |
|
|
2. javax.ejb.ApplicationException |
<application-exception> |
Client JAR |
|
|
3. javax.ejb.EJB |
1. <ejb-ref> |
Client JAR |
See JavaServer Pages™ Specification Version 2.1, Section JSP.7.1.11 Resource Injection |
|
3. javax.ejb.EJB |
2. <ejb-local-ref> |
Client JAR |
See JavaServer Pages™ Specification Version 2.1, Section JSP.7.1.11 Resource Injection |
|
4. javax.ejb.EJBs |
|
|
Same as javax.ejb.EJB |
|
5. javax.ejb.Init |
|
Client JAR |
|
|
6. javax.ejb.Local |
<local> |
Client JAR |
|
|
7. javax.ejb.LocalHome |
<local-home> |
Client JAR |
|
|
8. javax.ejb.MessageDriven |
<message-driven> |
Client JAR |
|
|
9. javax.ejb.PostActivate |
<post-activate> |
Client JAR |
|
|
10. javax.ejb.PrePassivate |
<pre-passivate> |
Client JAR |
|
|
11. javax.ejb.Remote |
<remote> |
Client JAR |
|
|
12. javax.ejb.RemoteHome |
<home> |
Client JAR |
|
|
13. javax.ejb.Remove |
|
Client JAR |
|
|
14. javax.ejb.Stateful |
<stateful> |
Client JAR |
|
|
15. javax.ejb.Stateless |
<stateless> |
Client JAR |
|
|
16. javax.ejb.Timeout |
|
Client JAR |
|
|
17. javax.ejb.TransactionAttribute |
<trans-attribute> |
Client JAR |
|
|
18. javax.ejb.TransactionManagement |
|
Client JAR |
|
JSR |
Annotation |
Deployment |
Supported in |
Notes |
JSR-220 |
1. javax.interceptor.AroundInvoke |
<around-invoke> |
EJB JAR |
|
|
2. javax.interceptor.ExcludeClassInterceptors |
<exclude-class-interceptors> |
EJB JAR |
|
|
3. javax.interceptor.ExcludeDefaultInterceptors |
<exclude-default-interceptors> |
EJB JAR |
|
|
4. javax.interceptor.Interceptors |
<interceptors> |
EJB JAR |
|
JSR |
Annotation |
Deployment |
Supported in |
Notes |
JSR-181 |
1. javax.jws.HandlerChain |
<handler-chain> |
EJB JAR |
See Web Services Metadata |
|
2. javax.jws.Oneway |
|
EJB JAR |
|
|
3. javax.jws.WebMethod |
|
Client JAR |
|
|
4. javax.jws.WebParam |
|
Client JAR |
|
|
5. javax.jws.WebResult |
|
Client JAR |
|
|
6. javax.jws.WebService |
<service-ref-type> |
Client JAR |
|
|
7. javax.jws.soap.InitParam |
|
EJB JAR |
|
|
8. javax.jws.soap.SOAPBinding |
|
EJB JAR |
|
|
9. javax.jws.soap.SOAPMessageHandler |
|
EJB JAR |
|
|
10. javax.jws.soap.SOAPMessageHandlers |
|
|
Same as javax.jws.soap.SOAPMessageHandler |
JSR |
Annotation |
Deployment |
Supported in |
Notes |
JSR-220 |
1. javax.persistence.AssociationOverride |
|
EJB JAR |
|
|
2. javax.persistence.AssociationOverrides |
|
|
Same as javax.persistence.AssociationOverride |
|
3. javax.persistence.AttributeOverride |
|
EJB JAR |
|
|
4. javax.persistence.AttributeOverrides |
|
|
javax.persistence.AttributeOverride |
|
5. javax.persistence.Basic |
|
EJB JAR |
|
|
6. javax.persistence.Column |
|
EJB JAR |
|
|
7. javax.persistence.ColumnResult |
|
EJB JAR |
|
|
8. javax.persistence.DiscriminatorColumn |
|
EJB JAR |
|
|
9. javax.persistence.DiscriminatorValue |
|
EJB JAR |
|
|
10. javax.persistence.Embeddable |
|
EJB JAR |
|
|
11. javax.persistence.Embedded |
|
EJB JAR |
|
|
12. javax.persistence.EmbeddedId |
|
EJB JAR |
|
|
13. javax.persistence.Entity |
|
EJB JAR |
|
|
14. javax.persistence.EntityListeners |
|
EJB JAR |
|
|
15. javax.persistence.EntityResult |
|
EJB JAR |
|
|
16. javax.persistence.Enumerated |
|
EJB JAR |
|
|
17. javax.persistence.ExcludeDefaultListeners |
|
EJB JAR |
|
|
18. javax.persistence.ExcludeSuperclassListeners |
|
EJB JAR |
|
|
19. javax.persistence.FieldResult |
|
EJB JAR |
|
|
20. javax.persistence.GeneratedValue |
|
EJB JAR |
|
|
21. javax.persistence.Id |
|
EJB JAR |
|
|
22. javax.persistence.IdClass |
|
EJB JAR |
|
|
23. javax.persistence.Inheritance |
|
EJB JAR |
|
|
24. javax.persistence.JoinColumn |
|
EJB JAR |
|
|
25. javax.persistence.JoinColumns |
|
|
Same as javax.persistence.JoinColumn |
|
26. javax.persistence.JoinTable |
|
EJB JAR |
|
|
27. javax.persistence.Lob |
|
EJB JAR |
|
|
28. javax.persistence.ManyToMany |
|
EJB JAR |
|
|
29. javax.persistence.ManyToOne |
|
EJB JAR |
|
|
30. javax.persistence.MapKey |
|
EJB JAR |
|
|
31. javax.persistence.MappedSuperclass |
|
EJB JAR |
|
|
32. javax.persistence.NamedNativeQueries |
|
EJB JAR |
|
|
33. javax.persistence.NamedNativeQuery |
|
EJB JAR |
|
|
34. javax.persistence.NamedQueries |
|
EJB JAR |
|
|
35. javax.persistence.NamedQuery |
|
EJB JAR |
|
|
36. javax.persistence.OneToMany |
|
EJB JAR |
|
|
37. javax.persistence.OneToOne |
|
EJB JAR |
|
|
38. javax.persistence.OrderBy |
|
EJB JAR |
|
|
39. javax.persistence.PersistenceContext |
<persistence-context-ref> |
EJB JAR |
See JavaServer Pages™ Specification Version 2.1, Section JSP.7.1.11 Resource Injection |
|
40. javax.persistence.PersistenceContexts |
|
|
Same as javax.persistence.PersistenceContext |
|
41. javax.persistence.PersistenceProperty |
<persistence-property> |
EJB JAR |
|
|
42. javax.persistence.PersistenceUnit |
<persistence-unit-ref> |
EJB JAR |
See JavaServer Pages™ Specification Version 2.1, Section JSP.7.1.11 Resource Injection |
|
43. javax.persistence.PersistenceUnits |
|
|
Same as javax.persistence.PersistenceUnits |
|
44. javax.persistence.PostLoad |
|
EJB JAR |
|
|
45. javax.persistence.PostPersist |
|
EJB JAR |
|
|
46. javax.persistence.PostRemove |
|
EJB JAR |
|
|
47. javax.persistence.PostUpdate |
|
EJB JAR |
|
|
48. javax.persistence.PrePersist |
|
EJB JAR |
|
|
49. javax.persistence.PreRemove |
|
EJB JAR |
|
|
50. javax.persistence.PreUpdate |
|
EJB JAR |
|
|
51. javax.persistence.PrimaryKeyJoinColumn |
|
EJB JAR |
|
|
52. javax.persistence.PrimaryKeyJoinColumns |
|
|
Same as javax.persistence.PrimaryKeyJoinColumn |
|
53. javax.persistence.QueryHint |
|
EJB JAR |
|
|
54. javax.persistence.SecondaryTable |
|
EJB JAR |
|
|
55. javax.persistence.SecondaryTables |
|
|
Same as javax.persistence.SecondaryTable |
|
56. javax.persistence.SequenceGenerator |
|
EJB JAR |
|
|
57. javax.persistence.SqlResultSetMapping |
|
EJB JAR |
|
|
58. javax.persistence.SqlResultSetMappings |
|
|
Same as javax.persistence.SqlResultSetMapping |
|
59. javax.persistence.Table |
|
EJB JAR |
|
|
60. javax.persistence.TableGenerator |
|
EJB JAR |
|
|
61. javax.persistence.Temporal |
|
EJB JAR |
|
|
62. javax.persistence.Transient |
|
EJB JAR |
|
|
63. javax.persistence.UniqueConstraint |
|
EJB JAR |
|
|
64. javax.persistence.Version |
|
EJB JAR |
|
JSR |
Annotation |
Deployment |
Supported in |
Notes |
JSR-222 |
1. javax.xml.bind.annotation.XmlAccessorOrder |
|
Client JAR |
|
|
2. javax.xml.bind.annotation.XmlAccessorType |
|
Client JAR |
|
|
3. javax.xml.bind.annotation.XmlAnyAttribute |
|
Client JAR |
|
|
4. javax.xml.bind.annotation.XmlAnyElement |
|
Client JAR |
|
|
5. javax.xml.bind.annotation.XmlAttachmentRef |
|
Client JAR |
|
|
6. javax.xml.bind.annotation.XmlAttribute |
|
Client JAR |
|
|
7. javax.xml.bind.annotation.XmlElement |
|
Client JAR |
|
|
8. javax.xml.bind.annotation.XmlElementDecl |
|
Client JAR |
|
|
9. javax.xml.bind.annotation.XmlElementRef |
|
Client JAR |
|
|
10. javax.xml.bind.annotation.XmlElementRefs |
|
|
Same as javax.xml.bind.annotation.XmlElementRef |
|
11. javax.xml.bind.annotation.XmlElementWrapper |
|
Client JAR |
|
|
12. javax.xml.bind.annotation.XmlElements |
|
|
Same as javax.xml.bind.annotation.XmlElement |
|
13. javax.xml.bind.annotation.XmlEnum |
|
Client JAR |
|
|
14. javax.xml.bind.annotation.XmlEnumValue |
|
Client JAR |
|
|
15. javax.xml.bind.annotation.XmlID |
|
Client JAR |
|
|
16. javax.xml.bind.annotation.XmlIDREF |
|
Client JAR |
|
|
17. javax.xml.bind.annotation.XmlInlineBinaryData |
|
Client JAR |
|
|
18. javax.xml.bind.annotation.XmlList |
|
Client JAR |
|
|
19. javax.xml.bind.annotation.XmlMimeType |
|
Client JAR |
|
|
20. javax.xml.bind.annotation.XmlMixed |
|
Client JAR |
|
|
21. javax.xml.bind.annotation.XmlNs |
|
Client JAR |
|
|
22. javax.xml.bind.annotation.XmlRegistry |
|
Client JAR |
|
|
23. javax.xml.bind.annotation.XmlRootElement |
|
Client JAR |
|
|
24. javax.xml.bind.annotation.XmlSchema |
|
Client JAR |
|
|
25. javax.xml.bind.annotation.XmlSchemaType |
|
Client JAR |
|
|
26. javax.xml.bind.annotation.XmlSchemaTypes |
|
|
Same as javax.xml.bind.annotation.XmlSchemaType |
|
27. javax.xml.bind.annotation.XmlTransient |
|
Client JAR |
|
|
28. javax.xml.bind.annotation.XmlType |
|
Client JAR |
|
|
29. javax.xml.bind.annotation.XmlValue |
|
Client JAR |
|
|
30. javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter |
|
Client JAR |
|
|
31. javax.xml.bind.annotation.adapters.XmlJavaTypeAdapters |
|
|
Same as javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter |
JSR |
Annotation |
Deployment |
Supported_in |
Notes |
JSR-224 |
1. javax.xml.ws.BindingType |
|
EJB JAR |
|
|
2. javax.xml.ws.RequestWrapper |
|
Client JAR |
|
|
3. javax.xml.ws.ResponseWrapper |
|
Client JAR |
|
|
4. javax.xml.ws.ServiceMode |
|
EJB JAR |
|
|
5. javax.xml.ws.WebEndpoint |
|
Client JAR |
|
|
6. javax.xml.ws.WebFault |
|
Client JAR |
|
|
7. javax.xml.ws.WebServiceClient |
|
Client JAR |
|
|
8. javax.xml.ws.WebServiceProvider |
|
EJB JAR |
|
|
9. javax.xml.ws.WebServiceRef |
<service-ref> |
EJB JAR |
See JavaServer Pages™ Specification Version 2.1, Section JSP.7.1.11 Resource Injection |
|
10. javax.xml.ws.WebServiceRefs |
|
|
Same as javax.xml.ws.WebServiceRef |
|
11. javax.xml.ws.addressing.Action |
|
EJB JAR |
|
|
12. javax.xml.ws.addressing.FaultAction |
|
EJB JAR |
|