[ 
https://issues.apache.org/jira/browse/CXF-6199?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14282963#comment-14282963
 ] 

EasternWahoo commented on CXF-6199:
-----------------------------------

Configuration using the URI doesn't work for me.  The problem seems to be in 
JMSConfigFactory: 
public static JMSConfiguration createFromEndpointInfo(...) {                    
  
#1                   JMSEndpoint jmsEndpoint = new JMSEndpoint(endpointInfo, 
target);
#2              return createFromEndpoint(bus, jmsEndpoint); 
} 

At #1, the endpoint contains the concurrentConsumers value configured from the 
endpoint URI.
At #2, the values is not copied to the result object, and is lost. 

My config looks like this:

        <jaxws:endpoint xmlns:tns="http://service.soapjms.sandbox.com/";
                id="helloJms" 
                
address="jms:queue:test.cxf.jmstransport.queue?concurrentConsumers=5"
                implementor="com.sandbox.Hello"
                wsdlLocation="wsdl/hello.wsdl" >
                <jaxws:features>                        
                        <bean class="org.apache.cxf.feature.LoggingFeature" />  
                
                        <bean 
class="org.apache.cxf.transport.jms.ConnectionFactoryFeature">
                                <constructor-arg ref="jmsConnectionFactory" />  
                                                        
                        </bean>
                        </jaxws:features>
        </jaxws:endpoint>


> Allow scalability for slow services on jms
> ------------------------------------------
>
>                 Key: CXF-6199
>                 URL: https://issues.apache.org/jira/browse/CXF-6199
>             Project: CXF
>          Issue Type: Improvement
>          Components: Transports
>    Affects Versions: 3.0.3
>            Reporter: Christian Schneider
>            Assignee: Christian Schneider
>             Fix For: 3.1.0
>
>
> Currently the CXF transport does not scale well if the service implementation 
> is slow.
> We need a facility to work with several threads.
> There are two options for this:
> 1. Allow to use more than one consumer
> 2. Use an executor in JMSDestination.onMessage
> Option 1 works well with PollingMessageListener but not with the event driven 
> MessageListener. It is also depending on the JMS provider how it scales with 
> number of consumers.
> Option 2 works in all cases but does not allow to profit from more than one 
> consumer if the provider is slow with a single consumer.
> So probably we will need both variants.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to