users@connector-spec.java.net

[connector-spec-users] [jsr322-experts] Re: MessageEndpointFactory

From: Sivakumar Thyagarajan <sivakumar.thyagarajan_at_oracle.com>
Date: Mon, 14 Jan 2013 23:15:38 +0530

Hi Jesper

On Friday 11 January 2013 11:14 PM, Jesper Pedersen wrote:
> Hi,
>
> As Wilson pointed out during our call we have a problem with the
>
> MessageEndpointFactory::createEndpoint(XAResource, long)
>
> method.
>
> Implementation of MessageEndpointFactory / MessageEndpoint against older
> versions of the JCA specification doesn't contain this method, so in that
> light I think we should improve our documentation.

As I had said in our meeting, as per the EE compat requirements
(http://java.net/projects/javaee-spec/pages/CompatibilityRequirements) and
the JLS binary compatibility requirements
(http://docs.oracle.com/javase/specs/jls/se7/html/jls-13.html), addition
of a method to a SPI is backwards compatible.

> For the JavaDoc part:
>
> * Add a @since 1.6

I shall add this.

> * Add a @throws NoSuchMuchException Thrown in cases where the
> implementation targets JCA 1.0 or JCA 1.5

This is not needed as it is implied. A 1.6 RA that uses the new MEF method
could *only* be deployed against a connector container that supports 1.6
or above.

Thanks
--Siva.

> For specification 13.3:
>
> "Note, that MessageEndpointFactory implementations that have been
> implemented against previous versions of this specification will not
> contain the method createEndpoint(XAResource, long) and will therefore
> throw a NoSuchMethodException. It is recommended that this exception is
> caught and createEndpoint(XAResource) is tried as a fall-back.".
>
>
> Or something like that :)
>
> Best regards,
> Jesper