Hi,
On 01/14/2013 12:45 PM, Sivakumar Thyagarajan wrote:
> 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.
>
Correct.
>> * 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.
>
Vendor A:
public OurMEF implements MessageEndpointFactory
{
public MessageEndpoint createEndpoint(XAResource xaResource)
{
...
}
public boolean isDeliveryTransacted(Method method)
{
...
}
}
Compile against JCA 1.5 => Works.
EE Vendor - supplies JCA 1.6.
Vendor B:
public OurRA implements ResourceAdapter
{
public void endpointActivation(MessageEndpointFactory endpointFactory,
ActivationSpec spec)
throws ResourceException
{
MessageEndpoint me = endpointFactory.createEndpoint(xar, 1000L);
...
}
Compile against JCA 1.6 => Works.
User:
* Deploys MEF from Vendor A
* Deploys RA from Vendor B
on to EE Vendor.
I don't know if that is 'implied' for this scenario for the 'User' -
they don't know either of the implementations, they only see the
NoSuchMethodException.
I think the additional documentation could help in this case.
Best regards,
Jesper