[
https://issues.apache.org/jira/browse/AMQ-5224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14635349#comment-14635349
]
Arthur Naseef commented on AMQ-5224:
------------------------------------
This change breaks backward compatibility by changing the signature of the
public method. Here is one example impact:
{noformat}
Error during dispatch. (java.lang.NoSuchMethodError:
org.apache.activemq.jms.pool.PooledConnectionFactory.setConnectionFactory(Ljavax/jms/ConnectionFactory;)V)
java.lang.NoSuchMethodError:
org.apache.activemq.jms.pool.PooledConnectionFactory.setConnectionFactory(Ljavax/jms/ConnectionFactory;)V
{noformat}
It seems to me that rather than changing the appropriate method signature
taking a {{ConnectionFactory}} to accepting any {{Object}} because some
XAConnectionFactory implementations do not properly implement
{{ConnectionFactory}} is a bad way to go - introducing complexity where it is
unneeded. It would be far simpler to wrap those XAConnectionFactory with thin
ConnectionFactory implementations.
Anyway, the damage is done here - if we change the signature back, another
non-backward-compatible change will be introduced.
Please consider all the impacts of these changes, especially since we do not
have plans to bump the ActiveMQ major version number.
> XA pooled connection factories are not recoverable
> --------------------------------------------------
>
> Key: AMQ-5224
> URL: https://issues.apache.org/jira/browse/AMQ-5224
> Project: ActiveMQ
> Issue Type: Bug
> Affects Versions: 5.9.1, 5.10.0
> Reporter: Guillaume Nodet
> Fix For: 5.11.0
>
>
> PooledConnectionFactory#setConnectionFactory hides the XAConnectionFactory
> interface which is used by the resource manager.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)