I decided to use the debugger and found that the destination is an instance
of org.apache.cxf.transport.servlet.ServletDestination
In JMSConfigFeature it does this check.
@Override
public void initialize(Server server, Bus bus) {
checkJmsConfig();
Destination destination = server.getDestination();
if (!(destination instanceof JMSDestination)) {
throw new ConfigurationException(new
Message("JMSCONFIGFEATURE_ONLY_JMS", LOG));
}
Doesn't the destination get retrieved from jndi based on the value of
targetDestination?
jp4 wrote:
>
> I am currently using cxf 2.2. I have several http endpoints (which are
> generated from wsdl). These endpoints work great since dumping the jboss
> native stack!
>
> Now I'd like one of my endpoints to support both http as well as jms.
> I've read the cxf docs, but it's unclear whether or not I can do this
> without modifying the WSDL. Ideally, I'd just like to configure another
> endpoint which listens on a request queue (and delegates to the endpoint
> that I have already configured in spring).
>
> I have the following configuration which throws the following exception on
> startup... I have configured the address="jms://". Can anyone point me
> in the right direction?
>
> Thanks,
>
> John
>
> Caused by: org.apache.cxf.configuration.ConfigurationException: You can
> only use JMSConfigFeature with the jms transport
> at
> org.apache.cxf.transport.jms.JMSConfigFeature.initialize(JMSConfigFeature.java:61)
>
>
> <bean id="wsCtx"
> class="org.apache.cxf.jaxws.context.WebServiceContextImpl"/>
>
> <jaxws:endpoint id="JMSSingleSignOnServicesImpl_1_0_0"
> address="jms://"
>
> implementor="#singleSignOnServicesImpl_1_0_0">
> <jaxws:features>
> <bean
> class="org.apache.cxf.transport.jms.JMSConfigFeature"
> p:jmsConfig-ref="jmsConfig" />
> </jaxws:features>
> </jaxws:endpoint>
>
> <bean id="jndiConfig"
> class="org.apache.cxf.transport.jms.JNDIConfiguration">
> <property name="environment">
> <props>
> <prop
> key="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</prop>
> <prop key="java.naming.provider.url">tcp://localhost:61616</prop>
> </props>
> </property>
> </bean>
>
> <bean id="wrappedConnectionFactory"
> class="org.springframework.jms.connection.SingleConnectionFactory">
> <property name="targetConnectionFactory">
> <bean class="org.apache.activemq.ActiveMQConnectionFactory">
> <property name="brokerURL"
> value="tcp://localhost:61616" />
> </bean>
> </property>
> </bean>
>
> <bean id="jmsConfig" class="org.apache.cxf.transport.jms.JMSConfiguration"
> p:jndiConfig-ref="jndiConfig"
> p:connectionFactory-ref="wrappedConnectionFactory"
> p:jndiTemplate-ref="jndiTemplate"
> p:targetDestination="accountServicesRequestQueue"
> p:replyDestination="accountServicesResponseQueue">
> </bean>
>
--
View this message in context:
http://www.nabble.com/CXF-JMS-Integration-tp23767613p23768664.html
Sent from the cxf-user mailing list archive at Nabble.com.