<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    csusky

    常用鏈接

    統(tǒng)計

    最新評論

    SPRING整合IBMMQ實現(xiàn)全局事物

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi
    ="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation
    ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">


        
    <bean id="jndiTemplate"
            
    class="org.springframework.jndi.JndiTemplate">
            
    <property name="environment">
                
    <props>
                    
    <prop key="java.naming.factory.initial">
                        com.sun.jndi.fscontext.RefFSContextFactory
                    
    </prop>
                    
    <prop key="java.naming.provider.url">
                        file:
    /C:/JMSDEMO/JNDI/mes
                    
    </prop>
                
    </props>
            
    </property>
        
    </bean>

        
    <!--<bean id="queueConnectionFactory"
            
    class="org.springframework.jndi.JndiObjectFactoryBean">
            
    <property name="jndiTemplate">
                
    <ref bean="jndiTemplate" />
            
    </property>
            
    <property name="jndiName">
                
    <value>JMSDEMOCF</value>
            
    </property>
        
    </bean>
        
        
        
    -->
        
        
        
        
        
    <bean id="ConnectionFactoryBean" class="bitronix.tm.resource.jms.JndiXAConnectionFactory">
    <!--        <property name="className" value="com.ibm.mq.jms.MQXAQueueConnectionFactory" />-->
    <!--        <property name="uniqueName" value="MQSeries" />-->
    <!--        <property name="poolSize" value="2" />-->
            
    <property name="name" value="JMSDEMOCF"></property>
            
    <property name="initialContextFactory" value="com.sun.jndi.fscontext.RefFSContextFactory"></property>
            
    <property name="providerUrl" value="file:/C:/JMSDEMO/JNDI/mes"></property>
        
    </bean>
        
        
    <bean id="des"
            
    class="org.springframework.jndi.JndiObjectFactoryBean">
            
    <property name="jndiTemplate">
                
    <ref local="jndiTemplate" />
            
    </property>
            
    <property name="resourceRef">
                
    <value>false</value>
            
    </property>
            
    <property name="jndiName">
                
    <value>JMSDEMOQueue</value>
            
    </property>
        
    </bean>
        
        
    <bean id="connectionFactory"
            
    class="org.springframework.jms.connection.SingleConnectionFactory">
            
    <property name="targetConnectionFactory">
                
    <ref bean="ConnectionFactoryBean" />
            
    </property>
        
    </bean>
        
        
        

    <!--<bean id="ConnectionFactory" factory-bean="ConnectionFactoryBean" factory-method="createXAConnection" />-->

      
        
    <bean id="BitronixTransactionManager" factory-method="getTransactionManager"
            
    class="bitronix.tm.TransactionManagerServices" depends-on="btmConfig,connectionFactory" destroy-method="shutdown" />
        
    <bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager">
            
    <property name="transactionManager" ref="BitronixTransactionManager" />
            
    <property name="userTransaction" ref="BitronixTransactionManager" />
        
    </bean>

        
    <bean id="btmConfig" factory-method="getConfiguration" class="bitronix.tm.TransactionManagerServices">
            
    <property name="serverId" value="spring-btm-consumer" />
        
    </bean>

        
    <bean id="dataSourceFactoryBean" class="bitronix.tm.resource.jdbc.DataSourceBean">
            
    <property name="className" value="oracle.jdbc.xa.client.OracleXADataSource" />
            
    <property name="uniqueName" value="oracle" />
            
    <property name="poolSize" value="2" />
            
    <property name="driverProperties">
                
    <props>
                    
    <prop key="user">cdh_dev</prop>
                    
    <prop key="password">cdh_dev</prop>
                    
    <prop key="URL">jdbc:oracle:thin:@10.0.24.130:1521:mixdb98</prop>
                
    </props>
            
    </property>
        
    </bean>


        
    <bean id="dataSource" factory-bean="dataSourceFactoryBean" factory-method="createResource" />





        
    <!--<bean id="atomikosConnectionFactory"
            
    class="com.atomikos.jms.QueueConnectionFactoryBean" init-method="init">
            
    <property name="xaQueueConnectionFactory">
                
    <ref bean="queueConnectionFactory" />
            
    </property>
            
    <property name="resourceName" value="MQSeries_XA_RMI" />
        
    </bean>
        
        
        
    <bean id="connectionFactory"
            
    class="org.springframework.jms.connection.SingleConnectionFactory">
            
    <property name="targetConnectionFactory">
                
    <ref bean="atomikosConnectionFactory" />
            
    </property>
        
    </bean>
        
        
        
    -->
        
    <!--<bean id="dataSource" class="com.atomikos.jdbc.SimpleDataSourceBean"
            init
    -method="init" destroy-method="close">
            
    <property name="uniqueResourceName">
                
    <value>oracle</value>
            
    </property>
            
    <property name="xaDataSourceClassName">
                
    <value>oracle.jdbc.xa.client.OracleXADataSource</value>
            
    </property>

            
    <property name="xaDataSourceProperties">
                
    <value>user=cdh_dev;password=cdh_dev;URL=jdbc:oracle:thin:@10.0.24.130:1521:mixdb98</value>
            
    </property>
            
    <property name="exclusiveConnectionMode">
                
    <value>true</value>
            
    </property>
            
    <property name="connectionPoolSize" value="3" />
        
    </bean>

        
    -->
        
    <!--<bean id="atomikosTransactionManager"
            
    class="com.atomikos.icatch.jta.UserTransactionManager"
            init
    -method="init" destroy-method="close">
            
    <property name="forceShutdown">
                
    <value>false</value>
            
    </property>
        
    </bean>

        
    <bean id="atomikosUserTransaction"
            
    class="com.atomikos.icatch.jta.UserTransactionImp">
            
    <property name="transactionTimeout" value="300" />
        
    </bean>

        
    <bean id="transactionManager"
            
    class="org.springframework.transaction.jta.JtaTransactionManager">
            
    <property name="transactionManager">
                
    <ref bean="atomikosTransactionManager" />
            
    </property>
            
    <property name="userTransaction">
                
    <ref bean="atomikosUserTransaction" />
            
    </property>
        
    </bean>

        
    -->
        
    <bean id="messageDao" class="com.sfexpress.mes_c2.dao.MessageDAO">
            
    <property name="dataSource">
                
    <ref bean="dataSource" />
            
    </property>
        
    </bean>

        
    <bean id="dataSourceNoTx"
            
    class="org.springframework.jdbc.datasource.DriverManagerDataSource">
            
    <property name="driverClassName">
                
    <value>oracle.jdbc.driver.OracleDriver</value>
            
    </property>
            
    <property name="url">
                
    <value>jdbc:oracle:thin:@10.0.24.130:1521:mixdb98</value>
            
    </property>
            
    <property name="username">
                
    <value>cdh_dev</value>
            
    </property>
            
    <property name="password">
                
    <value>cdh_dev</value>
            
    </property>
        
    </bean>

        
    <bean id="updateMessageto" class="com.sfexpress.mes_c2.dao.UpdateMessageto">
            
    <property name="dataSource" ref="dataSourceNoTx"></property>
        
    </bean>

        
    <bean id="converter"
            
    class="com.sf.framework.integration.converter.JiBXConverter" />

        
    <bean id="messageHandler" class="com.sfexpress.mes_c2.message.MessageHandler">
            
    <property name="process" ref="messagetoProcess" />
            
    <property name="converter" ref="converter" />
        
    </bean>

        
    <bean id="listenerContainer"
            
    class="org.springframework.jms.listener.DefaultMessageListenerContainer" >
            
    <property name="concurrentConsumers" value="10" />
            
            
    <property name="connectionFactory" ref="connectionFactory" />
            
    <property name="destination" ref="des" />
            
    <property name="messageListener" ref="messageHandler" />
            
    <property name="transactionManager" ref="transactionManager" />
            
    <property name="sessionTransacted" value="false" />
            
    <property name="receiveTimeout" value="3000" />
            
    <property name="recoveryInterval" value="6000"/>
        
    </bean>


        
    <bean id="messagetoProcess" class="com.sfexpress.mes_c2.service.MessageToProcess">
            
    <property name="messageDao" ref="messageDao"></property>

        
    </bean>


        
        
    <bean id="sendSms" class="com.sfexpress.mes_c2.send.SendSms">
            
    <property name="sendNumEachTime" value="500"></property>
            
    <property name="resendNumLimited" value="5"></property>
            
    <property name="process" ref="messagetoProcess"></property>
            
    <property name="updateMessageto" ref="updateMessageto"></property>
        
    </bean>
        
        

        
    <bean id="methodInvokingJobDetail"
            
    class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
            
    <property name="targetObject">
                
    <ref bean="sendSms" />
            
    </property>
            
    <property name="targetMethod">
                
    <value>sendMsg</value>
            
    </property>
        
    </bean>


        
    <bean id="cronTrigger1"
            
    class="org.springframework.scheduling.quartz.CronTriggerBean">
            
    <property name="jobDetail">
                
    <ref bean="methodInvokingJobDetail" />
            
    </property>
            
    <property name="cronExpression">
                
    <value>0/30 * 08-21 * * ?</value>
            
    </property>
        
    </bean>

        
    <bean id="cronTrigger2"
            
    class="org.springframework.scheduling.quartz.CronTriggerBean">
            
    <property name="jobDetail">
                
    <ref bean="methodInvokingJobDetail" />
            
    </property>
            
    <property name="cronExpression">
                
    <value>0 5,10,15,20,25,30 21 * * ?</value>
            
    </property>
        
    </bean>


        
    <bean
            
    class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
            
    <property name="triggers">
                
    <list>
    <!--                <ref local="cronTrigger1" />-->
    <!--                <ref local="cronTrigger2" />-->
    <!--                <ref local="cronTriggerMonitorMQ" />-->
                
    </list>
            
    </property>
        
    </bean>
        
        
        
        
        
        
        


        
    <!-- 只是測試 發(fā)送消息到MQ的隊列里,實際不需要-->
        
    <bean id="jmsQueueConnectionFactory"
            
    class="org.springframework.jms.connection.SingleConnectionFactory">
            
    <property name="targetConnectionFactory">
                
    <ref bean="queueConnectionFactory" />
            
    </property>
        
    </bean>

        
    <bean id="jmsDestinationResolver"
            
    class="org.springframework.jms.support.destination.JndiDestinationResolver">
            
    <property name="jndiTemplate">
                
    <ref bean="jndiTemplate" />
            
    </property>
            
    <property name="cache">
                
    <value>true</value>
            
    </property>

        
    </bean>
        
    <bean id="jmsQueueTemplate"
            
    class="org.springframework.jms.core.JmsTemplate">
            
    <property name="connectionFactory">
                
    <ref bean="jmsQueueConnectionFactory" />
            
    </property>
            
    <property name="destinationResolver">
                
    <ref bean="jmsDestinationResolver" />
            
    </property>
            
    <property name="pubSubDomain">
                
    <value>false</value>
            
    </property>

        
    </bean>
        
    <bean id="jmsSender" class="com.sfexpress.mes_c2.test.SendMsgToMQ">
            
    <property name="jmsTemplate">
                
    <ref bean="jmsQueueTemplate" />
            
    </property>
            
    <property name="topicNames">
                
    <value>JMSDEMOQueue</value>
            
    </property>
        
    </bean>
    <!-- aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -->

    <bean id="monitorMQ"
            
    class="com.sfexpress.mes_c2.monitorMQ.MonitorMQ">
            
    <property name="jmsTemplate" ref="jmsQueueTemplate"></property>
            
    <property name="destinations">
                
    <list>
                    
    <ref local="des" />
                
    </list>
            
    </property>
        
    </bean>
        
        
    <bean id="c2LogDao" class="com.sfexpress.mes_c2.dao.C2LogDAO">
                
    <property name="dataSource" ref="dataSourceNoTx"></property>
        
    </bean>
        
            
    <!--  發(fā)郵件 -->
        
    <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
      
    <property name="host" value="10.0.15.22"/><!-- 郵件服務(wù)器地址 -->
      
    <property name="username" value="089244"></property><!-- 用戶名 -->
      
    <property name="password" value="089244"></property><!-- 密碼 -->
       
    <!--<property name="javaMailProperties">
                  
    <props>
                      
    <prop key="mail.smtp.auth">true</prop>
                     
    <prop key="mail.smtp.timeout">25000</prop>
                  
    </props>
              
    </property>
      
    --></bean>


    <bean id="mailMessage" class="org.springframework.mail.SimpleMailMessage">
      
    <property name="from" value="zhongzhenyang@sf-express.com"/><!-- 設(shè)置發(fā)件人 -->
      
    <property name="subject" value="MQ 不行了"/><!-- 設(shè)置主題 -->
      
    <property name="to"><!-- 設(shè)置收件人 -->
      
    <list>
      
    <value>zhongzhenyang@sf-express.com</value>
      
    </list>
      
    </property>
    </bean>

    <bean id="monitorMqMailImpl" class="com.sfexpress.mes_c2.monitorMQ.MonitorMqMailTextImpl">
     
    <property name="mailSender" ref="mailSender"/>
      
    <property name="message" ref="mailMessage"/>
    </bean>
        
        
        
    <bean id="monitorMQService"
            
    class="com.sfexpress.mes_c2.monitorMQ.MonitorMQService">
            
    <property name="monitor" ref="monitorMQ"></property>
            
            
    <property name="mail" ref="monitorMqMailImpl"></property>
            
    <property name="logDao" ref="c2LogDao"></property>
        
    </bean>
        
        
        
    <bean id="jobMonitorMQ"
            
    class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
            
    <property name="targetObject">
                
    <ref bean="monitorMQService" />
            
    </property>
            
    <property name="targetMethod">
                
    <value>service</value>
            
    </property>
        
    </bean>

    <!-- 設(shè)置監(jiān)控mq的時間間隔 -->
        
    <bean id="cronTriggerMonitorMQ"
            
    class="org.springframework.scheduling.quartz.CronTriggerBean">
            
    <property name="jobDetail">
                
    <ref bean="jobMonitorMQ" />
            
    </property>
            
    <property name="cronExpression">
                
    <value>0/30 * * * * ?</value>
            
    </property>
        
    </bean>







    </beans>

    posted on 2008-10-27 17:01 曉宇 閱讀(2412) 評論(0)  編輯  收藏 所屬分類: J2EE


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 男人的好免费观看在线视频| 国内精品99亚洲免费高清| 亚洲av午夜精品无码专区| 亚洲精品熟女国产| 亚洲老熟女@TubeumTV| 亚洲黄色网址在线观看| 亚洲欧洲日产专区| 亚洲宅男精品一区在线观看| 亚洲综合色婷婷在线观看| 亚洲乱亚洲乱妇无码| 亚洲国产欧洲综合997久久| 亚洲成av人在线观看网站| 爱情岛亚洲论坛在线观看| 国产精品亚洲专区无码唯爱网| 朝桐光亚洲专区在线中文字幕| 国产亚洲精品美女2020久久| 色多多A级毛片免费看| 国产精品免费αv视频| 国产午夜精品免费一区二区三区 | 在线综合亚洲欧洲综合网站| 亚洲日韩一区二区一无码| 理论亚洲区美一区二区三区| 亚洲免费日韩无码系列| 亚洲免费观看视频| 国产人在线成免费视频| 国产猛烈高潮尖叫视频免费| 亚洲午夜日韩高清一区| 亚洲国产精华液网站w| 337p日本欧洲亚洲大胆色噜噜| 精品亚洲国产成人| 美女无遮挡免费视频网站| 成人爽a毛片免费| 青娱乐免费视频在线观看| 日本一道高清不卡免费| 国产L精品国产亚洲区久久| 亚洲AV无码久久| 波多野结衣亚洲一级| 菠萝菠萝蜜在线免费视频| 很黄很污的网站免费| 国产在线观看片a免费观看| 免费一级特黄特色大片在线观看|