2015-10-16 69 views
0

我有一個資源適配器爲WebSphere MQ 7.5對於WMQ 7.5取默認值,而不是指定CONFIGS的ResourceAdapter配置屬性

   <resource-adapter id="wmq.jmsra.rar"> 
       <archive> 
        wmq.jmsra.rar 
       </archive> 
       <transaction-support>NoTransaction</transaction-support> 
       <connection-definitions> 
        <connection-definition class-name="com.ibm.mq.connector.outbound.ManagedConnectionFactoryImpl" jndi-name="java:/ctm/ConnectionFactory" use-java-context="true" pool-name="ConnectionFactory"> 
         <config-property name="hostName"> 
          devel.comp.net 
         </config-property> 

         <config-property name="username"> 
          mqm 
         </config-property> 
         <config-property name="channel"> 
          COMP.DIR.SVRCONN 
         </config-property> 
         <config-property name="password"> 
          mqm 
         </config-property> 
         <config-property name="transportType"> 
          CLIENT 
         </config-property> 
         <config-property name="queueManager"> 
          devel.queue.manager 
         </config-property> 
         <config-property name="port"> 
          1414 
         </config-property>   
         <security> 
          <application/> 
         </security> 
        </connection-definition> 
       </connection-definitions> 

如果我改變端口號2414,然後它拿起這些屬性,但如果我不更改端口號,默認爲1414 localhost和queumanager name'',就像默認值一樣。任何人都可以告訴我這是什麼錯誤。

一旦我將端口號從2414恢復到1414,它就開始採取失控措施,當我將其更改回2414時,它將正確使用主機名和隊列管理器名稱。

感謝

回答

0

我不能弄清楚如何以及爲什麼要加載的端口變化會使性能。相反,我用systemproperties在standlaone-full.xml

<system-properties> 
     <property name="websphere.hostName" value="devel.comps.net"/> 
     <property name="websphere.port" value="1414"/> 
     <property name="websphere.channel" value="BLOBBER.DIR.SVRCONN"/> 
     <property name="websphere.transportType" value="CLIENT"/> 
     <property name="websphere.queueManager" value="devel.queue.manager"/> 

並啓用它

<subsystem xmlns="urn:jboss:domain:ee:3.0">    
     <jboss-descriptor-property-replacement>true</jboss-descriptor-property-replacement> 
</subsystem> 

然後使用ejb-jar.xml中找出我需要使用

的屬性
 <message-driven> 
        <ejb-name>MyAppInboundBean</ejb-name> 
        <messaging-type>javax.jms.MessageListener</messaging-type> 
        <transaction-type>Container</transaction-type> 
        <message-destination-type>javax.jms.Queue</message-destination-type> 
        <activation-config> 
         <activation-config-property> 
          <activation-config-property-name> 
           destinationType 
          </activation-config-property-name> 
          <activation-config-property-value> 
           javax.jms.Queue 
          </activation-config-property-value> 
         </activation-config-property> 
         <activation-config-property> 
          <activation-config-property-name> 
           destination 
          </activation-config-property-name> 
          <activation-config-property-value> 
           java:/myapp/FromCTM 
          </activation-config-property-value> 
         </activation-config-property> 
<activation-config-property> 
         <activation-config-property-name> 
          hostName 
         </activation-config-property-name> 
         <activation-config-property-value>${websphere.hostName}</activation-config-property-value> 
        </activation-config-property> 
        <activation-config-property> 
         <activation-config-property-name> 
          queueManager 
         </activation-config-property-name> 
         <activation-config-property-value>${websphere.queueManager}</activation-config-property-value> 
        </activation-config-property>