2009-12-23 68 views
2

我正在運行jetty-6.1.7,並且我有一個ActiveMQConnectionFactory,我想通過JNDITemplate在我的spring配置中引用它。Jetty使用哪些JNDI環境屬性?

我的jetty.xml配置是香草:

<New id="connectionFactory" class="org.mortbay.jetty.plus.naming.Resource"> 
    <Arg>jms/connectionFactory</Arg> 
    <Arg> 
     <New class="org.apache.activemq.ActiveMQConnectionFactory"> 
     <Arg>vm://localhost?broker.persistent=true</Arg> 
     </New> 
    </Arg> 
    </New> 

我無法找到正確的做法是把在JNDI模板在我的Spring配置什麼:

<bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate"> 
    <property name="environment"> 
    <props> 
     <prop key="java.naming.factory.initial"> ???? </prop> 
     <prop key="java.naming.provider.url"> ???? </prop> 
    </props> 
    </property> 
</bean> 
<bean id="connectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean"> 
    <property name="jndiTemplate"> 
    <ref bean="jndiTemplate" /> 
    </property> 
    <property name="jndiName"> 
    <value>jms/connectionFactory</value> 
    </property> 
</bean> 

謝謝提前!

+0

爲什麼不從內部彈簧配置ActiveMQ的?不需要這樣搞亂JNDI。 – skaffman 2009-12-24 10:28:44

回答

0

雖然我沒有嘗試它自己,這樣的事情應該工作

<bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate"> 
    <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> 
3

對於碼頭6,這些都是JNDI性質在

java.naming.factory.url.pkgs=org.mortbay.naming 
java.naming.factory.initial=org.mortbay.naming.InitialContextFactory