Bug 738352 - Can't send QMFv2 requests from JMS due to inability to set app-id
Summary: Can't send QMFv2 requests from JMS due to inability to set app-id
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-java
Version: 2.0
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: 2.0.3
: ---
Assignee: messaging-bugs
QA Contact: MRG Quality Engineering
URL:
Whiteboard:
Depends On: 732534
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-09-14 15:31 UTC by Justin Ross
Modified: 2011-09-28 15:53 UTC (History)
5 users (show)

Fixed In Version: qpid-java-0.10-9
Doc Type: Bug Fix
Doc Text:
Clone Of: 732534
Environment:
Last Closed: 2011-09-28 15:53:10 UTC


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2011:1340 normal SHIPPED_LIVE Red Hat Enterprise MRG Messaging 2.0.3 bug fix update 2011-09-28 15:53:05 UTC

Description Justin Ross 2011-09-14 15:31:43 UTC
+++ This bug was initially created as a clone of Bug #732534 +++

Description of problem:
Sending QMFv2 requests from the Java client fails because the the app-id is not set.


Version-Release number of selected component (if applicable):
qpid-java-0.10-6

How reproducible:
100%

Steps to Reproduce:
Write a java client app to send a map message QMFv2 request to the broker.
  
Actual results:
Broker ignores request.

Expected results:
Broker acts on request.

Additional info:

The Java client needs to set the x-amqp-0-10.app-id property.

See https://issues.apache.org/jira/browse/QPID-3302 for the patch.

--- Additional comment from zkraus@redhat.com on 2011-08-26 05:21:49 EDT ---

Hi Mike,

could you write some short example, that reproduces failure ?

--- Additional comment from zkraus@redhat.com on 2011-08-29 05:39:03 EDT ---

Hi Rajith,

you wrote at JIRA, that you fixed this bug with some test case. 
We found you commit r1153274 and there was no test case attached.
Would you kindly post a link or upload this test case to bugzilla ?

Thank you.

--- Additional comment from rattapat@redhat.com on 2011-08-30 14:02:12 EDT ---

This issue is tracked in upstream via QPID-3302
A fix is committed in upstream, details as follows,

http://svn.apache.org/viewvc?view=rev&rev=1140412

test case,
http://svn.apache.org/viewvc?view=rev&rev=1140413

--- Additional comment from rattapat@redhat.com on 2011-08-30 14:10:09 EDT ---

Hi Zdenek,

The test case is committed at http://svn.apache.org/viewvc?view=rev&rev=1140413
It's a junit test case that is run as part of the java build.

The basic idea of the test case is,

1. Create a JMS connection, session and a message consumer & producer.
   Connection con = new AMQConnection("amqp://username:password@clientid/test?brokerlist='tcp://localhost:5672'");
   con.start();

   Session ssn = (AMQSession) con.createSession(false, Session.CLIENT_ACKNOWLEDGE);

   Topic topic = ssn.createTopic("test");
   MessageConsumer consumer = ssn.createConsumer(topic);
   MessageProducer prod = ssn.createProducer(topic);

2. Create a message and set the app id as follows,
   Message m = ssn.createMessage();
   m.setObjectProperty("x-amqp-0-10.app-id", "my-app-id");

3. Send the msg and try to receive it.
   prod.send(m);
   Message msg = consumer.receive(1000);
   
4. Verify that you can retrieve the app id from the message and verify it.
   msg.getStringProperty("x-amqp-0-10.app-id")

--- Additional comment from zkraus@redhat.com on 2011-09-01 09:27:01 EDT ---

Created attachment 521012 [details]
Example of QMF usage

Hi Rajith,

I took the new testcase and compile it with other unit tests, but the test case is already passing with the old version, which it should not.

I think the new 'testApplicationProperties()' in .../JMSPropertiesTest.java does not testing exactly the bug. But I found an example of QMF usage and it looks like to be a good reproducer. Could you please look at it and check it, if it's correct ?


Source:
http://apache-qpid-users.2158936.n2.nabble.com/QMF-java-example-td6462608.html

--- Additional comment from rattapat@redhat.com on 2011-09-08 11:29:06 EDT ---

Created attachment 522148 [details]
Simple reproducer

--- Additional comment from rattapat@redhat.com on 2011-09-08 11:34:55 EDT ---

Zdenek,

That QMF example is correct and you could use that to verify it.
I also attached a simple reproducer that tests specifically for this.

Feel free to use both to verify the fixes. Ping me on irc if u have questions.

Regards,

Rajith

--- Additional comment from zkraus@redhat.com on 2011-09-14 08:00:36 EDT ---

Fix was tested on:
RHEL 5.7 x86/x64
qpid-java-common-0.10-9.el5
qpid-java-client-0.10-9.el5
qpid-java-jca-0.10-9.el5
qpid-java-example-0.10-9.el5

RHEL 6.1 x86/x64
qpid-java-jca-0.10-9.el6.noarch
qpid-java-common-0.10-9.el6.noarch
qpid-java-example-0.10-9.el6.noarch
qpid-java-client-0.10-9.el6.noarch

changing to VERIFIED

Comment 1 errata-xmlrpc 2011-09-28 15:53:10 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2011-1340.html


Note You need to log in before you can comment on or make changes to this bug.