Hi,

I have existing web service (SEI and not provider) working fine for soap
over http.  Here is the request printed in server log.

<?xml version="1.0" ?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/";>
<S:Body>
<ns2:save_product xmlns:ns2="http://webservice.mkyong.com/";>
  <product>
    <productCode>Laptop</productCode>
    <productDesc>Laptop Computer</productDesc>
  </product>
  <qoh>10</qoh>
</ns2:save_product></S:Body></S:Envelope>

I want to have the same webservice/webmethod be invoked when I post above
message to activemq queue.
To enable that I added following to cxf-servlet.xml (I deploy war to
tomcat).
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans";
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:jaxws="http://cxf.apache.org/jaxws";
        xmlns:soap="http://cxf.apache.org/bindings/soap";
<b>     xmlns:jms="http://cxf.apache.org/transports/jms";
        xmlns:ct="http://cxf.apache.org/configuration/types";
*       xsi:schemaLocation="http://www.springframework.org/schema/beans 
        http://www.springframework.org/schema/beans/spring-beans-2.5.xsd 
        http://cxf.apache.org/bindings/soap 
        http://cxf.apache.org/schemas/configuration/soap.xsd 
        http://cxf.apache.org/jaxws 
        http://cxf.apache.org/schemas/jaxws.xsd
*       http://cxf.apache.org/transports/jms
    http://cxf.apache.org/schemas/configuration/jms.xsd";
*       >
        <import resource="classpath:META-INF/cxf/cxf-extension-policy.xml"/>
        <jaxws:endpoint xmlns:tns="http://webservice.mkyong.com/";
                id="productwebservice" implementor="#myProductWebService"
                wsdlLocation="wsdl/ProductWebService.wsdl"
endpointName="tns:ProductWebServicePort"
                serviceName="tns:ProductWebServiceService"
address="/ProductWebServicePort">
                <jaxws:features>
                        <bean class="org.apache.cxf.feature.LoggingFeature" />
                </jaxws:features>
        </jaxws:endpoint>
        <jaxws:endpoint xmlns:tns="http://webservice.mkyong.com/";
                id="productwebservice_javafirst" 
                implementor="#myProductWebServiceJavaFirst"
                address="/IProductWebServicePort">
                <jaxws:features>
                        <bean class="org.apache.cxf.feature.LoggingFeature" />
                </jaxws:features>
        </jaxws:endpoint>
        <import resource="classpath:spring/config/BeanLocations.xml" />
        <bean id="myProductWebService"
class="com.mkyong.webservice.ProductWebService">
                <property name="productBo" ref="productBoProxy"></property>
        </bean>
        <bean id="myProductWebServiceJavaFirst"
class="com.mkyong.webservice.ProductWebServiceImpl">
                <property name="productBo" ref="productBoProxy"></property>
        </bean>
        
  *  <jms:destination
name="{http://webservice.mkyong.com}ProductWebServicePort.jms-destination";>     
<jms:address destinationStyle="queue"
               jndiConnectionFactoryName="ConnectionFactory"
               jndiDestinationName="miten.test.request.queue"
               jndiReplyDestinationName="miten.test.reply.queue"
               connectionUserName=""
               connectionPassword="">
            <jms:JMSNamingProperty name="java.naming.factory.initial"
                 
value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
            <jms:JMSNamingProperty name="java.naming.provider.url"
                 value="tcp://localhost:61616"/>
            </jms:address>
            
        </jms:destination>*
        
</beans>


I do not see any messages in tomcat log which gives me any indication of jms
setup nor does activemq webconsole show any subscribers.  Even after posting
the message to queue there is no effect or action of webservice being
invoked.  

I followed the information on  http://cxf.apache.org/docs/jms-transport.html
website 

I have added following jms related dependency to pom.
        <dependency>
                <groupId>org.apache.activemq</groupId>
                *<artifactId>activemq-core</artifactId>*
                <version>${cxf.amq.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.cxf</groupId>
            *<artifactId>cxf-rt-transports-jms</artifactId>*
            <version>${cxf.version}</version>
         </dependency>


I do not see any errors for jms while loading in tomcat in fact I do not see
any logs related to jms in tomcat.

Regards,

Miten.

--
View this message in context: 
http://cxf.547215.n5.nabble.com/cxf-2-5-2-webservice-jms-activemq-5-1-0-integration-tp5661590p5661590.html
Sent from the cxf-user mailing list archive at Nabble.com.

Reply via email to