You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Adam Lewandowski (JIRA)" <ji...@apache.org> on 2007/02/12 17:10:03 UTC
[jira] Created: (AMQ-1161) PooledConnectionFactory / PooledSession
generates UnsupportedOperationException when publishing to a topic
PooledConnectionFactory / PooledSession generates UnsupportedOperationException when publishing to a topic
----------------------------------------------------------------------------------------------------------
Key: AMQ-1161
URL: https://issues.apache.org/activemq/browse/AMQ-1161
Project: ActiveMQ
Issue Type: Bug
Components: JMS client
Affects Versions: 4.1.0
Reporter: Adam Lewandowski
Attachments: PooledTopicPublisherTest.java
PooledSession does not appear to use the Topic supplied to the createPublisher(topic) method. When the publish(Message) method is called on the returned TopicPublisher instance, an UnsupportedOperationException is thrown ("A destination must be specified.").
Some simple digging turns up the fact that the ActiveMQTopicPublisher instance nested inside PooledTopicPublisher gets initialized with a ProducerInfo whose destination is null. Looks like PooledSession.getTopicPublisher() is responsible for creating the publisher from the contained ActiveMQSession, but does not supply a destination (explicitly passes null).
Sample code to recreate issue (also attached is Junit test case):
ActiveMQTopic topic = new ActiveMQTopic("test");
PooledConnectionFactory pcf = new PooledConnectionFactory();
pcf.setConnectionFactory(new ActiveMQConnectionFactory("vm://test"));
TopicConnection conn = (TopicConnection)pcf.createConnection();
TopicSession session = conn.createTopicSession(false, Session.AUTO_ACKNOWLEDGE);
TopicPublisher publisher = session.createPublisher(topic);
publisher.publish(session.createMessage());
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (AMQ-1161) PooledConnectionFactory / PooledSession
generates UnsupportedOperationException when publishing to a topic
Posted by "james strachan (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/activemq/browse/AMQ-1161?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
james strachan resolved AMQ-1161.
---------------------------------
Resolution: Fixed
Fix Version/s: 4.2.0
> PooledConnectionFactory / PooledSession generates UnsupportedOperationException when publishing to a topic
> ----------------------------------------------------------------------------------------------------------
>
> Key: AMQ-1161
> URL: https://issues.apache.org/activemq/browse/AMQ-1161
> Project: ActiveMQ
> Issue Type: Bug
> Components: JMS client
> Affects Versions: 4.1.0
> Reporter: Adam Lewandowski
> Fix For: 4.2.0
>
> Attachments: PooledTopicPublisherTest.java
>
>
> PooledSession does not appear to use the Topic supplied to the createPublisher(topic) method. When the publish(Message) method is called on the returned TopicPublisher instance, an UnsupportedOperationException is thrown ("A destination must be specified.").
> Some simple digging turns up the fact that the ActiveMQTopicPublisher instance nested inside PooledTopicPublisher gets initialized with a ProducerInfo whose destination is null. Looks like PooledSession.getTopicPublisher() is responsible for creating the publisher from the contained ActiveMQSession, but does not supply a destination (explicitly passes null).
> Sample code to recreate issue (also attached is Junit test case):
> ActiveMQTopic topic = new ActiveMQTopic("test");
> PooledConnectionFactory pcf = new PooledConnectionFactory();
> pcf.setConnectionFactory(new ActiveMQConnectionFactory("vm://test"));
> TopicConnection conn = (TopicConnection)pcf.createConnection();
> TopicSession session = conn.createTopicSession(false, Session.AUTO_ACKNOWLEDGE);
> TopicPublisher publisher = session.createPublisher(topic);
> publisher.publish(session.createMessage());
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.