2016-10-17 55 views
0

我们在房子中使用maven来构建Spring 3.0.X应用程序,所以,我已将所有Tibco相关的jar文件添加到/server/<Profile>/lib文件夹中,在maven pom .xml文件我已经添加了以下变化Spring应用程序无法找到“com.tibco.tibjms.naming.TibjmsInitialContextFactory”

<dependency> 
    <groupId>com.tibco</groupId> 
    <artifactId>tibjms</artifactId> 
    <scope>provided</scope> 
    <version>4.4.1v2</version> 
</dependency> 

部署war文件到文件夹jboss 5.1/server/<Profile>/deploy

在部署中出现以下错误,我重新启动服务器多次,仍然弹簧应用程序无法从配置文件的/ lib文件夹加载类。

春天JMS的config.xml

<?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:jms="http://www.springframework.org/schema/jms" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
    http://www.springframework.org/schema/jms http://www.springframework.org/schema/jms/spring-jms-3.0.xsd"> 

    <bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate"> 
     <property name="environment"> 
      <props> 
       <prop key="java.naming.factory.initial"> 
        initialFactory 
       </prop> 
       <prop key="java.naming.provider.url"> 
        url 
       </prop> 
      </props> 
     </property> 
    </bean> 

    <bean id="queueConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean"> 
     <property name="jndiTemplate" ref="jndiTemplate" /> 
     <property name="jndiName" 
      value="queueConn" /> 
    </bean> 


    <bean id="listener" 
     class="class"> 
    </bean> 

    <jms:listener-container connection-factory="queueConnectionFactory" 
     acknowledge="transacted" concurrency="5"> 
     <jms:listener destination="Outbound.Queue" 
      ref="listener" /> 
    </jms:listener-container> 

</beans> 

更新:我启用了JBoss的类加载,类被加载到内存中,当我检查了boot.log文件tibjms。不明白为什么spring不能从/ lib加载类。

+0

为什么'scope'' provided''? jar是否已经存在于jboss lib中? – sidgate

+0

我很困惑,为什么你用你的方式摆弄罐子。如果你提供作为范围,它告诉maven当它建立你的战争,不用麻烦得到他们从回购作为jboss/tomcat什么已经有他们。所以在我看来,目前你的问题是任何正在为你的应用程序提供服务的问题。你能在你的应用服务器内的任何地方找到这些罐子吗? – nuzz

+0

@nuzz是的,我将罐子添加到'/ server//lib'文件夹。我正在做'提供'范围,因为jar已经在服务器lib文件夹中可用。我期待jboss类加载器为我加载类。 – Zeus

回答

0

属性文件的类名周围有""。删除它,开始工作。

相关问题