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

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

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

    csusky

    常用鏈接

    統計

    最新評論

    SPRING整合IBMMQ實現全局事物

    <?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>
        
        
        
        
        
        
        


        
    <!-- 只是測試 發送消息到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>
        
            
    <!--  發郵件 -->
        
    <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
      
    <property name="host" value="10.0.15.22"/><!-- 郵件服務器地址 -->
      
    <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"/><!-- 設置發件人 -->
      
    <property name="subject" value="MQ 不行了"/><!-- 設置主題 -->
      
    <property name="to"><!-- 設置收件人 -->
      
    <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>

    <!-- 設置監控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 曉宇 閱讀(2414) 評論(0)  編輯  收藏 所屬分類: J2EE


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


    網站導航:
     
    主站蜘蛛池模板: 国产亚洲精品a在线观看| 老牛精品亚洲成av人片| 国内精品99亚洲免费高清| 在线免费视频一区| 美女内射毛片在线看免费人动物| 日韩在线观看免费| 亚洲av无码专区在线观看亚| 亚洲成a人片77777群色| 亚洲av无码一区二区三区乱子伦| 日本不卡在线观看免费v| 色欲色香天天天综合网站免费 | 永久在线观看免费视频| 久久精品国产亚洲av瑜伽| 亚洲最大成人网色香蕉| 亚洲无限乱码一二三四区| 亚洲AV成人无码久久精品老人| 精品成在人线AV无码免费看 | 亚洲男人都懂得羞羞网站| 国产亚洲视频在线播放| 亚洲国产日韩成人综合天堂| 国产一区二区三区在线免费| 噜噜嘿在线视频免费观看| 久久WWW免费人成人片| 国产福利在线免费| 在线观看免费人成视频色9| 国产一卡二卡四卡免费| 亚洲AV网一区二区三区| 亚洲kkk4444在线观看| 亚洲国产日韩在线成人蜜芽| 亚洲精品在线视频观看| 亚洲电影在线播放| 亚洲国产日韩在线一区| 亚洲精品一二三区| 亚洲欧美日韩自偷自拍| 久久精品国产亚洲av麻豆| 亚洲国产女人aaa毛片在线| 亚洲国产人成在线观看69网站| 亚洲狠狠综合久久| 亚洲神级电影国语版| 亚洲国产精品久久网午夜 | 99精品全国免费观看视频|