Still working ALL week, and simply do not have a working test yet.
Am I just doing something that nobody else in the world is trying to do with
camel?

---
Thank You…

Mick Knutson, President

BASE Logic, Inc.
Enterprise Architecture, Design, Mentoring & Agile Consulting
p. (866) BLiNC-411: (254-6241-1)
f. (415) 685-4233

Website: http://baselogic.com
Linked IN: http://linkedin.com/in/mickknutson
Vacation Rental: http://tahoe.baselogic.com
---



On Tue, Aug 11, 2009 at 12:23 PM, Mick Knutson <mknut...@baselogic.com>wrote:

> I tried what you suggested with this Broker:
>
> <broker xmlns="http://activemq.apache.org/schema/core";>
>     <transportConnectors>
>         <transportConnector name="tcp" uri="tcp://localhost:61616" />
>     </transportConnectors>
>
>     <destinationInterceptors>
>         <virtualDestinationInterceptor>
>             <virtualDestinations>
>                 *<compositeTopic name="VirtualTopic.TEST">*
>                     <forwardTo>
>                         *<topic
> physicalName="Consumer.A.VirtualTopic.TEST" />*
>                     </forwardTo>
>                 </compositeTopic>
>             </virtualDestinations>
>         </virtualDestinationInterceptor>
>     </destinationInterceptors>
>
> </broker>
>
>
>
> And then I was sending messages to both the Topic, and the resulting que to
> determin what was getting through:
>
>         //Send message to
>         producer.sendBody(body+"XXXXXXXXXXXXXXX"+body);
>         producer.sendBodyAndHeader("activemq:VirtualTopic.TEST",
> body+body+body, "foo", "bar");
>         *producer.sendBodyAndHeader("activemq:Consumer.A.VirtualTopic.TEST",
> body+"OOOOOOOOOOOO"+body, "foo", "bar");*
>
>
> But only the last message arrives at my MDP which is the one directly to
> the Consumer itself. The 1st 2 did not arrive as expected:
>
> *[myproject] INFO
> [org.springframework.jms.listener.DefaultMessageListenerContainer#0-1]
> StatusUpdateService.onMessage(17) | //-----------------------------*
> *------------------------------//*
> *[myproject] INFO
> [org.springframework.jms.listener.DefaultMessageListenerContainer#0-1]
> StatusUpdateService.onMessage(18) | //-----------------------------*
> *------------------------------//*
> *[myproject] INFO
> [org.springframework.jms.listener.DefaultMessageListenerContainer#0-1]
> StatusUpdateService.onMessage(19) | //-----------------------------*
> *------------------------------//*
> *[myproject] INFO
> [org.springframework.jms.listener.DefaultMessageListenerContainer#0-1]
> StatusUpdateService.onMessage(20) | //-----------------------------*
> *------------------------------//*
> *[myproject] INFO
> [org.springframework.jms.listener.DefaultMessageListenerContainer#0-1]
> StatusUpdateService.onMessage(21) | //-----------------------------*
> *------------------------------//*
> *[myproject] INFO
> [org.springframework.jms.listener.DefaultMessageListenerContainer#0-1]
> StatusUpdateService.onMessage(22) | //-----------------------------*
> *------------------------------//*
> *ActiveMQTextMessage {commandId = 5, responseRequired = true, messageId =
> ID:L83601HY-3296-1250007358494-2:4:1:1:1, originalDestination = null,
> originalTran*
> *sactionId = null, producerId = ID:L83601HY-3296-1250007358494-2:4:1:1,
> destination = queue://Consumer.A.VirtualTopic.TEST, transactionId = null,
> expiration*
> * = 0, timestamp = 1250007383823, arrival = 0, brokerInTime =
> 1250007383823, brokerOutTime = 1250007383823, correlationId = null, replyTo
> = null, persistent*
> * = true, type = null, priority = 4, groupID = null, groupSequence = 0,
> targetConsumerId = null, compressed = false, userID = null, content = null,
> marshall*
> *edProperties = org.apache.activemq.util.byteseque...@16d3536,
> dataStructure = null, redeliveryCounter = 0, size = 0, properties =
> {foo=bar}, readOnlyProper*
> *ties = true, readOnlyBody = true, droppable = false, text =
> 33OOOOOOOOOOOO33}*
>
>
> I actually zipped up the source here:
> http://baselogic.com/temp/services.zip
>
> It should run on its own if you want to see my issue. I cd into the *
> table-service-su* DIR and run:
> mvn camel:run -e in one cmd prompt.
>
> Then in another one, I run mvn verify -e to run the unit tests.
>
>
>
> ---
> Thank You…
>
> Mick Knutson, President
>
> BASE Logic, Inc.
> Enterprise Architecture, Design, Mentoring & Agile Consulting
> p. (866) BLiNC-411: (254-6241-1)
> f. (415) 685-4233
>
> Website: http://baselogic.com
> Linked IN: http://linkedin.com/in/mickknutson
> Vacation Rental: http://tahoe.baselogic.com
> ---
>
>
>
> On Tue, Aug 11, 2009 at 10:33 AM, Ashwin Karpe <aska...@progress.com>wrote:
>
>>
>> Hi,
>>
>> Looks like you used the little snippet I sent in an as-is mode. I intended
>> this to be an example.
>>
>> In any case, you could use something like this in your broker
>>
>>  <broker xmlns="http://activemq.apache.org/schema/core";>
>>    <destinationInterceptors>
>>      <virtualDestinationInterceptor>
>>        <virtualDestinations>
>>           <compositeTopic name="MY.TOPIC">
>>            <forwardTo>
>>              <topic physicalName="BAR" />
>>            </forwardTo>
>>          </compositeTopic>
>>        </virtualDestinations>
>>      </virtualDestinationInterceptor>
>>    </destinationInterceptors>
>>
>>  </broker>
>>
>> Notice in this example that the real queue is a queue named FOO and a real
>> topic is a topic named BAR.
>>
>> Your consumers should listen on the topic named BAR and your clients
>> should
>> send to the topi named MY.TOPIC which is a virtual topic.
>>
>> All messages sent to MY.TOPIC will be forwarded to subscribers to the
>> topic
>> named BAR.
>>
>> Hope this clarifies things. My previous example showed a virtual topic
>> which
>> had a second level of indirection to a collection of topics which in turn
>> may have been connected to real topics.
>>
>> Cheers,
>>
>> Ashwin...
>>
>>
>> Mick Knutson-3 wrote:
>> >
>> > I changed the Topic to *activemq:VirtualTopic.TEST* and the consumer
>> queue
>> > to *activemq:Consumer.A.VirtualTopic.TEST*
>> >
>> > I see that the MDP and Topic get created:
>> >
>> > [myproject] DEBUG [main]
>> > DefaultInstrumentationAgent.registerMBeanWithServer(293) | Registered
>> > MBean
>> > with objectname:
>> >
>> org.apache.camel:context=mick-knutsons-macbook.local/camel-2,type=processors,nodeid=to1,name="
>> > *To[activemq:VirtualTopic.TEST]"*
>> > [myproject] DEBUG [main] DefaultComponentResolver.resolveComponent(77) |
>> > Found component: activemq via type:
>> > org.apache.activemq.camel.component.ActiveMQComponent via:
>> > META-INF/services/org/apache/camel/component/activemq
>> > *[myproject] DEBUG [main] DefaultComponent.createEndpoint(77) | Creating
>> > endpoint uri=[activemq://VirtualTopic.TEST]*, path=[VirtualTopic.TEST],
>> > parameters=[{}]
>> > *[myproject] DEBUG [main] DefaultCamelContext.getEndpoint(387) |
>> > activemq://VirtualTopic.TEST converted to endpoint:
>> > Endpoint[activemq://VirtualTopic.TEST] by component:
>> > org.apache.activemq.camel.component.activemqcompon...@47b7c1b7*
>> > [myproject] DEBUG [main]
>> > DefaultInstrumentationAgent.registerMBeanWithServer(293) | Registered
>> > MBean
>> > with objectname:
>> >
>> org.apache.camel:context=mick-knutsons-macbook.local/camel-2,type=endpoints,name="activemq://VirtualTopic.TEST\?id=0x5cab2ebd"
>> > [myproject] DEBUG [main] DefaultComponent.createEndpoint(77) | Creating
>> > endpoint uri=[activemq://Consumer.A.VirtualTopic.TEST],
>> > path=[Consumer.A.VirtualTopic.TEST], parameters=[{}]
>> > *[myproject] DEBUG [main] DefaultCamelContext.getEndpoint(387) |
>> > activemq://Consumer.A.VirtualTopic.TEST converted to endpoint:
>> > Endpoint[activemq://Consumer.A.VirtualTopic.TEST] by component:
>> > org.apache.activemq.camel.component.activemqcompon...@47b7c1b7*
>> > [myproject] DEBUG [main]
>> > DefaultInstrumentationAgent.registerMBeanWithServer(293) | Registered
>> > MBean
>> > with objectname:
>> >
>> org.apache.camel:context=mick-knutsons-macbook.local/camel-2,type=endpoints,name="activemq://Consumer.A.VirtualTopic.TEST\?id=0x561756a4"
>> >
>> >
>> >
>> > Each was converted to a AMQ Component. Is that correct?
>> >
>> > The MDP gets initialized as the client gets initialized. Then AFTER the
>> > client and server are both running, then I send a message to the server,
>> > to
>> > have the server create a message to the VirtualTopic.TEST
>> >
>> >
>> >
>> > ---
>> > Thank You…
>> >
>> > Mick Knutson, President
>> >
>> > BASE Logic, Inc.
>> > Enterprise Architecture, Design, Mentoring & Agile Consulting
>> > p. (866) BLiNC-411: (254-6241-1)
>> > f. (415) 685-4233
>> >
>> > Website: http://baselogic.com
>> > Linked IN: http://linkedin.com/in/mickknutson
>> > Vacation Rental: http://tahoe.baselogic.com
>> > ---
>> >
>> >
>> >
>> > On Mon, Aug 10, 2009 at 6:12 PM, Willem Jiang
>> > <willem.ji...@gmail.com>wrote:
>> >
>> >> According to AMQ's document
>> >> "The out-of-the-box defaults are described above. Namely that the only
>> >> virtual topics available must be within the VirtualTopic.> namespace
>> and
>> >> that the consumer queues are named Consumer.*.VirtualTopic.>."
>> >>
>> >> The support is out of box, and there is no addition configuration file
>> >> for
>> >> the unit test.
>> >>
>> >> BTW, did you start to listen the Consumer.A.VirtualTopic.TEST queue
>> >> before
>> >> you send the message to VirtualTopic.TEST ?
>> >>
>> >> Willem
>> >>
>> >>
>> >> Mick Knutson wrote:
>> >>
>> >>> I thought this was already PART of ActiveMQ not a rule that needed to
>> be
>> >>> added.
>> >>> But then again, I am just using an embedded broker for these tests.
>> >>>
>> >>> ---
>> >>> Thank You…
>> >>>
>> >>> Mick Knutson, President
>> >>>
>> >>> BASE Logic, Inc.
>> >>> Enterprise Architecture, Design, Mentoring & Agile Consulting
>> >>> p. (866) BLiNC-411: (254-6241-1)
>> >>> f. (415) 685-4233
>> >>>
>> >>> Website: http://baselogic.com
>> >>> Linked IN: http://linkedin.com/in/mickknutson
>> >>> Vacation Rental: http://tahoe.baselogic.com
>> >>> ---
>> >>>
>> >>>
>> >>>
>> >>> On Mon, Aug 10, 2009 at 2:20 PM, Ashwin Karpe <aska...@progress.com>
>> >>> wrote:
>> >>>
>> >>>  Hi,
>> >>>>
>> >>>> Do you have the rule for the virtual topic setup on the broker. I
>> >>>> wonder
>> >>>> if
>> >>>> this is the issue. This suspiciously sounds like the case. The
>> virtual
>> >>>> queue/topic is like any other queue or topic from a broker
>> perspective
>> >>>> and
>> >>>> only gets interpreted when a payload arrive with the destination name
>> >>>> set
>> >>>> to
>> >>>> a virtual queue/topic.
>> >>>>
>> >>>> If a rule is not found the destination name is treated as a
>> normal/real
>> >>>> queue into which the message is dropped which is why your consumer
>> >>>> seems
>> >>>> to
>> >>>> get the message when it listens on the queue.
>> >>>>
>> >>>> You may want to add a virtual topic rule to the Actiemq broker being
>> >>>> used
>> >>>> using activemq.xml
>> >>>>
>> >>>>
>> >>>> Mick Knutson-3 wrote:
>> >>>>
>> >>>>> from the AMQ list, they suggested I use this JUnit test as an
>> example:
>> >>>>>
>> >>>>>
>> >>>>
>> https://svn.apache.org/repos/asf/activemq/trunk/activemq-core/src/test/java/org/apache/activemq/broker/virtual/VirtualTopicPubSubTest.java
>> >>>>
>> >>>>> In the above test, the Producer sends a message to the VirtualTopic
>> >>>>> and
>> >>>>> 2
>> >>>>> Consumers get this message in individual Durable Queue's.
>> >>>>>
>> >>>>> When I created this, I publish to:
>> >>>>>
>> >>>>> activemq:VirtualTopic.TEST
>> >>>>>
>> >>>>> and then I Consume on:
>> >>>>>
>> >>>>> activemq:Consumer.A.VirtualTopic.TEST
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> But nothing arrives to my Client. When I change my client to listen
>> on
>> >>>>>
>> >>>>> activemq:VirtualTopic.TEST
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> The messages are Consumed by the client. This is not what I want.
>> Does
>> >>>>> anyone have a working Camel AMQ VirtualTopic JUnit Test that can
>> help
>> >>>>> me
>> >>>>> out
>> >>>>> please?
>> >>>>>
>> >>>>> ---
>> >>>>> Thank You…
>> >>>>>
>> >>>>> Mick Knutson, President
>> >>>>>
>> >>>>> BASE Logic, Inc.
>> >>>>> Enterprise Architecture, Design, Mentoring & Agile Consulting
>> >>>>> p. (866) BLiNC-411: (254-6241-1)
>> >>>>> f. (415) 685-4233
>> >>>>>
>> >>>>> Website: http://baselogic.com
>> >>>>> Linked IN: http://linkedin.com/in/mickknutson
>> >>>>> Vacation Rental: http://tahoe.baselogic.com
>> >>>>> ---
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>> -----
>> >>>> ---
>> >>>> Ashwin Karpe, Principal Consultant, PS - Opensource Center of
>> >>>> Competence
>> >>>> Progress Software Corporation
>> >>>> 14 Oak Park Drive
>> >>>> Bedford, MA 01730
>> >>>> ---
>> >>>> +1-972-304-9084 (Office)
>> >>>> +1-972-971-1700 (Mobile)
>> >>>> ----
>> >>>> Blog: http://opensourceknowledge.blogspot.com/
>> >>>>
>> >>>>
>> >>>> --
>> >>>> View this message in context:
>> >>>>
>> >>>>
>> http://www.nabble.com/anyone-have-AMQ-VirtualTopic%27s-working-in-Camel-Test--tp24902737p24904788.html
>> >>>> Sent from the Camel - Users mailing list archive at Nabble.com.
>> >>>>
>> >>>>
>> >>>>
>> >>>
>> >>
>> >
>> >
>>
>>
>> -----
>> ---
>> Ashwin Karpe, Principal Consultant, PS - Opensource Center of Competence
>> Progress Software Corporation
>> 14 Oak Park Drive
>> Bedford, MA 01730
>> ---
>> +1-972-304-9084 (Office)
>> +1-972-971-1700 (Mobile)
>> ----
>> Blog: http://opensourceknowledge.blogspot.com/
>>
>>
>> --
>> View this message in context:
>> http://www.nabble.com/anyone-have-AMQ-VirtualTopic%27s-working-in-Camel-Test--tp24902737p24918802.html
>> Sent from the Camel - Users mailing list archive at Nabble.com.
>>
>>
>

Reply via email to