javaee / ejb-spec

See javax.ejb project for API. Contains legacy issues only.
https://github.com/javaee/javax.ejb
6 stars 1 forks source link

Local and Remote annotation javadoc do not reflect relaxed calculation rules #81

Closed glassfishrobot closed 11 years ago

glassfishrobot commented 11 years ago

The javadoc still says "is only required when the bean class does not implement only a single interface"

Affected Versions

[3.2]

glassfishrobot commented 11 years ago

Reported by mvatkina

glassfishrobot commented 11 years ago

mvatkina said: Proposed changes for @Local:

Use of the Local annotation is required when the bean class exposes one or more local business interface and any of the following is true:

The following interfaces are excluded when determining whether the bean class has business interfaces: java.io.Serializable; java.io.Externalizable; any of the interfaces defined in javax.ejb.

glassfishrobot commented 11 years ago

mvatkina said: The new text for the Local.value:

Specifies the local business interface(s) of the bean. The value element is specified only when the annotation is applied to the bean class. It is required to be specified if any of the following is true:

The new text for the Remote.value:

Specifies the remote business interface(s) of the bean. The value element is specified only when the annotation is applied to the bean class. It is required to be specified if any of the following is true:

glassfishrobot commented 11 years ago

mvatkina said: Marking it fixed (see rev 58234). Please reopen if any further changes are required.

glassfishrobot commented 11 years ago

jlmonteiro said: Marina,

sorry for the late feedback.

Specifies the local business interface(s) of the bean. The value element is specified only when the annotation is applied to the bean class. It is required to be specified if any of the following is true:

I would keep the "only" as it was before. --> "It is only required".

  • the bean class does not implement its local business interface

If the bean class does not explicitly implement the interface, it can not be used through its business interface. Did I miss sthg? It refers to the following in the current spec doc "Note that while it is expected that the bean class will typically implem ent its business interface(s), if the bean class uses annotations or the deployment descriptor to designate its business interface(s), it is not required that the bean class also be specified as implementing the interface(s)."

But dunno when it makes sense.

  • any of the implemented interfaces is designated as a remote interface

"At least one of" instead of "any of" ?

  • some of the implemented interfaces are designated as local business interfaces using Local annotation on the interface, while others (excluding java.io.Serializable, java.io.Externalizable, and any of the interfaces defined by the javax.ejb package) are not designated as such.

The previous phrasing was not that bad for me

glassfishrobot commented 11 years ago

mvatkina said: Which previous was not bad? The 3.1 version, or the text I proposed in my 1st comment?

glassfishrobot commented 11 years ago

mvatkina said: The new text (similar for Remote):

Specifies the local business interface(s) of the bean. The value element is specified only when the annotation is applied to the bean class. It is only required to be specified if any of the following is true:

glassfishrobot commented 11 years ago

jlmonteiro said: Thanks Marina, yes it sounds better for me. Dunno for others.

glassfishrobot commented 11 years ago

mvatkina said: Thanks Jean-Louis. As others had never objected, I'm closing this issue.

glassfishrobot commented 11 years ago

Was assigned to mvatkina

glassfishrobot commented 7 years ago

This issue was imported from java.net JIRA EJB_SPEC-81

glassfishrobot commented 11 years ago

Marked as fixed on Friday, March 1st 2013, 12:22:03 pm