[ 
https://issues.apache.org/jira/browse/ARTEMIS-2842?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Bertram updated ARTEMIS-2842:
------------------------------------
    Description: 
I am trying to have clients connect to a queue configured in {{broker.xml}} 
(not auto-created by the client) over STOMP.  Connections always fail with
{noformat}
DEBUG o.a.a.a.c.p.s.StompConnection [Thread-3 (activemq-netty-threads)] 
STOMP(/127.0.0.1:55122, f2bb6e64):OUT >> StompFrame[command=ERROR, 
headers=\{message=AMQ339001 Destination does not exist pitch.demo}, content= 
null, bytes= []
{noformat}
Excerpt from my {{broker.xml}}:
{code:xml}
      <acceptors>
         <acceptor name="STOMPWssMicroservice">
            
tcp://localhost:61612?sslEnabled=true;needClientAuth=true;verifyHost=false;enabledProtocols=TLSv1.2;keyStoreProvider=PKCS12;keyStorePath=/myfile.p12;keyStorePassword=mypassword;trustStorePath=/myfile.pfx;trustStorePassword=mypassword;protocols=STOMP;anycastPrefix=queue/;multicastPrefix=topic/;
         </acceptor>
      </acceptors>

      <wildcard-addresses>
         <delimiter>/</delimiter>
      </wildcard-addresses>

      <address-settings>

         <address-setting match="#">
            <expiry-address>expiry</expiry-address>
            <redelivery-delay>0</redelivery-delay>
            <redelivery-delay-multiplier>1.0</redelivery-delay-multiplier>
            <max-delivery-attempts>1</max-delivery-attempts>
            <!-- with -1 only the global-max-size is in use for limiting -->
            <max-size-bytes>104857600</max-size-bytes>
            <page-size-bytes>10485760</page-size-bytes>
            <address-full-policy>PAGE</address-full-policy>
            <page-max-cache-size>10</page-max-cache-size>
            <send-to-dla-on-no-route>false</send-to-dla-on-no-route>
            <slow-consumer-threshold>-1</slow-consumer-threshold>
            <slow-consumer-policy>NOTIFY</slow-consumer-policy>
            <slow-consumer-check-period>5</slow-consumer-check-period>
            
<message-counter-history-day-limit>1</message-counter-history-day-limit>
            <auto-create-queues>true</auto-create-queues>
            <auto-delete-created-queues>false</auto-delete-created-queues>
            <auto-delete-queues-delay>60000</auto-delete-queues-delay>
            
<auto-delete-queues-message-count>0</auto-delete-queues-message-count>
            <auto-create-addresses>false</auto-create-addresses>
            <management-browse-page-size>200</management-browse-page-size>
            <default-max-consumers>-1</default-max-consumers>
            
<default-address-routing-type>MULTICAST</default-address-routing-type>
            <default-queue-routing-type>MULTICAST</default-queue-routing-type>
            <default-consumer-window-size>4194304</default-consumer-window-size>
         </address-setting>
      </address-settings>

      <addresses>
         <address name="demo">
            <anycast>
               <queue name="pitch.demo"/>
            </anycast>
         </address>
      </addresses>
{code} 

>From the client side, this STOMP frame is sent to the broker for subscription:
{noformat}
[1.2][1.1]Frame: <SUBSCRIBE>
accept-version:1.2
client-id:pitcherclient0
priority:1
destination:queue/demo/pitch.demo
ack:auto

<body>null<body>
{noformat}
 

The 
[documentation|https://activemq.apache.org/components/artemis/documentation/latest/address-model.html]
 states that a FQQN should be used:
{noformat}
destination: demo::pitch.demo
{noformat}
but that still gives me the same destination not found error. In this case, the 
"::" are stripped from the destination name before they are parsed by the 
CompositeAddress. The above address becomes:
{noformat}
demopitch.demo
{noformat}
which cannot be found in the registered addresses.

  was:
Hello,

I am trying to have clients connect to a queue configured in broker.xml (not 
auto-created by the client) over STOMP.  Connections always fail with

DEBUG o.a.a.a.c.p.s.StompConnection [Thread-3 (activemq-netty-threads)] 
STOMP(/127.0.0.1:55122, f2bb6e64):OUT >> StompFrame[command=ERROR, 
headers=\{message=AMQ339001 Destination does not exist pitch.demo}, content= 
null, bytes= []

 

Excerpt from my broker.xml:

<{color:#0033b3}acceptors{color}>
 <{color:#0033b3}acceptor 
{color}{color:#174ad4}name{color}{color:#067d17}="STOMPWssMicroservice"{color}>
 
tcp://localhost:61612?sslEnabled=true;needClientAuth=true;verifyHost=false;enabledProtocols=TLSv1.2;keyStoreProvider=PKCS12;keyStorePath=/myfile.p12;keyStorePassword=mypassword;trustStorePath=/myfile.pfx;trustStorePassword=mypassword;protocols=STOMP;anycastPrefix=queue/;multicastPrefix=topic/;
 </{color:#0033b3}acceptor{color}>{color:#8c8c8c}
{color} </{color:#0033b3}acceptors{color}>

<{color:#0033b3}wildcard-addresses{color}>
 <{color:#0033b3}delimiter{color}>/</{color:#0033b3}delimiter{color}>
 </{color:#0033b3}wildcard-addresses{color}>

{color:#8c8c8c}
{color} <{color:#0033b3}address-settings{color}>


 <{color:#0033b3}address-setting 
{color}{color:#174ad4}match{color}{color:#067d17}="#"{color}>
<{color:#0033b3}expiry-address{color}>expiry</{color:#0033b3}expiry-address{color}>
 
<{color:#0033b3}redelivery-delay{color}>0</{color:#0033b3}redelivery-delay{color}>
 
<{color:#0033b3}redelivery-delay-multiplier{color}>1.0</{color:#0033b3}redelivery-delay-multiplier{color}>
 
<{color:#0033b3}max-delivery-attempts{color}>1</{color:#0033b3}max-delivery-attempts{color}>
 {color:#8c8c8c}<!-- with -1 only the global-max-size is in use for limiting -->
{color} 
<{color:#0033b3}max-size-bytes{color}>104857600</{color:#0033b3}max-size-bytes{color}>
 
<{color:#0033b3}page-size-bytes{color}>10485760</{color:#0033b3}page-size-bytes{color}>
 
<{color:#0033b3}address-full-policy{color}>PAGE</{color:#0033b3}address-full-policy{color}>
 
<{color:#0033b3}page-max-cache-size{color}>10</{color:#0033b3}page-max-cache-size{color}>
 
<{color:#0033b3}send-to-dla-on-no-route{color}>false</{color:#0033b3}send-to-dla-on-no-route{color}>
 
<{color:#0033b3}slow-consumer-threshold{color}>-1</{color:#0033b3}slow-consumer-threshold{color}>
 
<{color:#0033b3}slow-consumer-policy{color}>NOTIFY</{color:#0033b3}slow-consumer-policy{color}>
 
<{color:#0033b3}slow-consumer-check-period{color}>5</{color:#0033b3}slow-consumer-check-period{color}>
 
<{color:#0033b3}message-counter-history-day-limit{color}>1</{color:#0033b3}message-counter-history-day-limit{color}>
 
<{color:#0033b3}auto-create-queues{color}>true</{color:#0033b3}auto-create-queues{color}>
 
<{color:#0033b3}auto-delete-created-queues{color}>false</{color:#0033b3}auto-delete-created-queues{color}>
 
<{color:#0033b3}auto-delete-queues-delay{color}>60000</{color:#0033b3}auto-delete-queues-delay{color}>
 
<{color:#0033b3}auto-delete-queues-message-count{color}>0</{color:#0033b3}auto-delete-queues-message-count{color}>
 
<{color:#0033b3}auto-create-addresses{color}>false</{color:#0033b3}auto-create-addresses{color}>
 
<{color:#0033b3}management-browse-page-size{color}>200</{color:#0033b3}management-browse-page-size{color}>
 
<{color:#0033b3}default-max-consumers{color}>-1</{color:#0033b3}default-max-consumers{color}>
 
<{color:#0033b3}default-address-routing-type{color}>MULTICAST</{color:#0033b3}default-address-routing-type{color}>
 
<{color:#0033b3}default-queue-routing-type{color}>MULTICAST</{color:#0033b3}default-queue-routing-type{color}>
 
<{color:#0033b3}default-consumer-window-size{color}>4194304</{color:#0033b3}default-consumer-window-size{color}>
 </{color:#0033b3}address-setting{color}>
 </{color:#0033b3}address-settings{color}>


 </{color:#0033b3}address{color}>
 <{color:#0033b3}address 
{color}{color:#174ad4}name{color}{color:#067d17}="demo"{color}>
 <{color:#0033b3}anycast{color}>
 <{color:#0033b3}queue 
{color}{color:#174ad4}name{color}{color:#067d17}="pitch.demo"{color}/>
 </{color:#0033b3}anycast{color}>
 </{color:#0033b3}address{color}>
</{color:#0033b3}addresses{color}>

 

>From the client side, this STOMP frame is sent to the broker for subscription:

[1.2][1.1]Frame: <SUBSCRIBE>
accept-version:1.2
client-id:pitcherclient0
priority:1
destination:queue/demo/pitch.demo
ack:auto

<body>null<body>

 

The 
[documentation|https://activemq.apache.org/components/artemis/documentation/latest/address-model.html]
 states that a FQQN should be used:

destination: demo::pitch.demo

but that still gives me the same destination not found error. In this case, the 
"::" are stripped from the destination name before they are parsed by the 
CompositeAddress. The above address becomes:

demopitch.demo

which cannot be found in the registered addresses.

 

 

 

 


> Point-to-point subscription queue name not parsed correctly - STOMP
> -------------------------------------------------------------------
>
>                 Key: ARTEMIS-2842
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2842
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: Broker, STOMP
>    Affects Versions: 2.13.0
>         Environment: 
> [documentation|https://activemq.apache.org/components/artemis/documentation/latest/address-model.html]
>            Reporter: nicolasbelanger
>            Assignee: Justin Bertram
>            Priority: Major
>
> I am trying to have clients connect to a queue configured in {{broker.xml}} 
> (not auto-created by the client) over STOMP.  Connections always fail with
> {noformat}
> DEBUG o.a.a.a.c.p.s.StompConnection [Thread-3 (activemq-netty-threads)] 
> STOMP(/127.0.0.1:55122, f2bb6e64):OUT >> StompFrame[command=ERROR, 
> headers=\{message=AMQ339001 Destination does not exist pitch.demo}, content= 
> null, bytes= []
> {noformat}
> Excerpt from my {{broker.xml}}:
> {code:xml}
>       <acceptors>
>          <acceptor name="STOMPWssMicroservice">
>             
> tcp://localhost:61612?sslEnabled=true;needClientAuth=true;verifyHost=false;enabledProtocols=TLSv1.2;keyStoreProvider=PKCS12;keyStorePath=/myfile.p12;keyStorePassword=mypassword;trustStorePath=/myfile.pfx;trustStorePassword=mypassword;protocols=STOMP;anycastPrefix=queue/;multicastPrefix=topic/;
>          </acceptor>
>       </acceptors>
>       <wildcard-addresses>
>          <delimiter>/</delimiter>
>       </wildcard-addresses>
>       <address-settings>
>          <address-setting match="#">
>             <expiry-address>expiry</expiry-address>
>             <redelivery-delay>0</redelivery-delay>
>             <redelivery-delay-multiplier>1.0</redelivery-delay-multiplier>
>             <max-delivery-attempts>1</max-delivery-attempts>
>             <!-- with -1 only the global-max-size is in use for limiting -->
>             <max-size-bytes>104857600</max-size-bytes>
>             <page-size-bytes>10485760</page-size-bytes>
>             <address-full-policy>PAGE</address-full-policy>
>             <page-max-cache-size>10</page-max-cache-size>
>             <send-to-dla-on-no-route>false</send-to-dla-on-no-route>
>             <slow-consumer-threshold>-1</slow-consumer-threshold>
>             <slow-consumer-policy>NOTIFY</slow-consumer-policy>
>             <slow-consumer-check-period>5</slow-consumer-check-period>
>             
> <message-counter-history-day-limit>1</message-counter-history-day-limit>
>             <auto-create-queues>true</auto-create-queues>
>             <auto-delete-created-queues>false</auto-delete-created-queues>
>             <auto-delete-queues-delay>60000</auto-delete-queues-delay>
>             
> <auto-delete-queues-message-count>0</auto-delete-queues-message-count>
>             <auto-create-addresses>false</auto-create-addresses>
>             <management-browse-page-size>200</management-browse-page-size>
>             <default-max-consumers>-1</default-max-consumers>
>             
> <default-address-routing-type>MULTICAST</default-address-routing-type>
>             <default-queue-routing-type>MULTICAST</default-queue-routing-type>
>             
> <default-consumer-window-size>4194304</default-consumer-window-size>
>          </address-setting>
>       </address-settings>
>       <addresses>
>          <address name="demo">
>             <anycast>
>                <queue name="pitch.demo"/>
>             </anycast>
>          </address>
>       </addresses>
> {code} 
> From the client side, this STOMP frame is sent to the broker for subscription:
> {noformat}
> [1.2][1.1]Frame: <SUBSCRIBE>
> accept-version:1.2
> client-id:pitcherclient0
> priority:1
> destination:queue/demo/pitch.demo
> ack:auto
> <body>null<body>
> {noformat}
>  
> The 
> [documentation|https://activemq.apache.org/components/artemis/documentation/latest/address-model.html]
>  states that a FQQN should be used:
> {noformat}
> destination: demo::pitch.demo
> {noformat}
> but that still gives me the same destination not found error. In this case, 
> the "::" are stripped from the destination name before they are parsed by the 
> CompositeAddress. The above address becomes:
> {noformat}
> demopitch.demo
> {noformat}
> which cannot be found in the registered addresses.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to