Announcement Announcement Module
Collapse
No announcement yet.
Spring 3.1: BeanDefinitionStoreException on startup Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Spring 3.1: BeanDefinitionStoreException on startup

    Microsoft Windows 7 Professional
    WebLogic 11g
    Java 1.6 ( the version with weblogic )
    Spring 3.1


    I was using WebLogic 11g and Spring 3.1 to do Java Webapp development on a Windows XP Professional PC. All was fine.

    Then I had to migrate to a new computer running Windows 7 Professional.

    I think I may have missed a step in setting everything up to get it all working again.

    My webapp is "ACME", acme.war

    When I try to navigate to my webapp on my computer I get the following error:

    weblogic.application.ModuleException: [HTTP:101216]Servlet:
    "acme" failed to preload on startup in Web application: "acme.war".
    org.springframework.beans.factory.BeanDefinitionSt oreException:
    Unexpected exception parsing XML document from ServletContext resource [/WEB-INF/acme-servlet.xml];
    nested exception is java.lang.NoSuchMethodError:
    org.springframework.beans.MutablePropertyValues.ad d
    (Ljava/lang/String;Ljava/lang/ObjectLorg/springframework/beans/MutablePropertyValues;
    Here is the full stack trace:
    weblogic.application.ModuleException: [HTTP:101216]Servlet:
    "acme" failed to preload on startup in Web application: "acme.war".
    org.springframework.beans.factory.BeanDefinitionSt oreException:
    Unexpected exception parsing XML document from ServletContext resource [/WEB-INF/acme-servlet.xml];
    nested exception is java.lang.NoSuchMethodError:
    org.springframework.beans.MutablePropertyValues.ad d
    (Ljava/lang/String;Ljava/lang/ObjectLorg/springframework/beans/MutablePropertyValues;

    at org.springframework.beans.factory.xml.XmlBeanDefin itionReader.loadBeanDefinitions(XmlBeanDefinitionR eader.java:342)
    at org.springframework.beans.factory.xml.XmlBeanDefin itionReader.loadBeanDefinitions(XmlBeanDefinitionR eader.java:310)
    at org.springframework.beans.factory.support.Abstract BeanDefinitionReader.loadBeanDefinitions(AbstractB eanDefinitionReader
    .java:143)
    at org.springframework.beans.factory.support.Abstract BeanDefinitionReader.loadBeanDefinitions(AbstractB eanDefinitionReader
    .java:178)
    at org.springframework.beans.factory.support.Abstract BeanDefinitionReader.loadBeanDefinitions(AbstractB eanDefinitionReader
    .java:149)
    Truncated. see log file for complete stacktrace

    Here is a copy of my acme-servlet.xml file:
    Code:
        <beans xmlns="http://www.springframework.org/schema/beans"
          xmlns:context="http://www.springframework.org/schema/context"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:mvc="http://www.springframework.org/schema/mvc"
          xmlns:util="http://www.springframework.org/schema/util"
          xsi:schemaLocation="http://www.springframework.org/schema/mvc
                http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
                http://www.springframework.org/schema/beans     
                http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
                http://www.springframework.org/schema/context 
                http://www.springframework.org/schema/context/spring-context-3.1.xsd
                http://www.springframework.org/schema/util
                http://www.springframework.org/schema/util/spring-util-3.1.xsd">
        
          <context:component-scan base-package="com.acme.controller" />
        
          <mvc:resources mapping = "/**" location = "/,file:/apps1/bea/user_projects/domains/DBS/common/"/>
          <mvc:annotation-driven/>
        
          <!-- define the properties file to use -->
          <util:properties id = "messages" location="classpath:/messages.properties" />
        
          <bean
            class="org.springframework.web.servlet.view.InternalResourceViewResolver">
            <property name = "prefix" value = "/jsp/"/>
            <property name = "suffix" value = ".jsp"/>
          </bean>
        
          <bean name="af" class="com.acme.controller.security.AuthenticationFilter"/>
        
          <!-- Configure the multipart resolver -->
          <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
            <!-- one of the properties available; the maximum file size in bytes -->
            <property name="maxUploadSize" value="100000000"/>
          </bean>
        </beans>

    Here is a list of files I have in my war/WEB-INF/lib inside of acme.war:

    aopalliance-1.0.jar
    commons-beanutils-1.8.2.jar
    commons-collections-3.2.1.jar
    commons-digester-2.0.jar
    commons-fileupload-1.2.2.jar
    commons-io-2.4.jar
    commons-jexl-2.0.1.jar
    commons-lang-2.5.jar
    commons-logging-1.1.1.jar
    commons-validator.jar
    dom4j-1.6.1.jar
    geronimo-stax-api_1.0_spec-1.0.jar
    hibernate-validator-4.3.0.Final.jar
    jackson-core-asl-1.9.7.jar
    jackson-mapper-asl-1.9.7.jar
    jboss-logging-3.1.0.CR2.jar
    jstl-api-1.2-rev-1.jar
    jstl-impl-1.2.jar
    jta-1.1.jar
    log4j-1.2.16.jar
    mail.jar
    poi-3.7.jar
    poi-ooxml-3.7.jar
    poi-ooxml-schemas-3.7.jar
    quartz-1.8.0.jar
    quartz-all-1.8.0.jar
    servlet-api.jar
    slf4j-api-1.5.10.jar
    slf4j-log4j12-1.5.10.jar
    spring-aop-3.0.6.RELEASE.jar
    spring-asm-3.1.1.RELEASE.jar
    spring-beans-3.1.1.RELEASE.jar
    spring-context-3.1.1.RELEASE.jar
    spring-context-support-3.1.1.RELEASE.jar
    spring-core-3.1.1.RELEASE.jar
    spring-expression-3.1.1.RELEASE.jar
    spring-jdbc-3.0.6.RELEASE.jar
    spring-ldap-core-1.3.1.RELEASE.jar
    spring-security-acl-3.1.0.RELEASE.jar
    spring-security-config-3.1.0.RELEASE.jar
    spring-security-core-3.1.0.RELEASE.jar
    spring-security-crypto-3.1.0.RELEASE.jar
    spring-security-ldap-3.1.0.RELEASE.jar
    spring-security-taglibs-3.1.0.RELEASE.jar
    spring-security-web-3.1.0.RELEASE.jar
    spring-tx-3.0.6.RELEASE.jar
    spring-web-3.1.1.RELEASE.jar
    spring-webmvc-3.1.1.RELEASE.jar
    stax-1.2.0.jar
    stax-api-1.0.1.jar
    urlrewritefilter-4.0.3.jar
    validation-api-1.0.0.GA.jar
    xml-apis-1.0.b2.jar
    xmlbeans-2.3.0.jar

    I have my JAVA_HOME envir variable pointed to
    C:\Oracle\Middleware\jdk160_29
    ( this is withing the weblogic 11g installation )

    I have that path in my PATH variable.

    My system wide Windows CLASSPATH is just a '.'

    Thanks in advance for any ideas

    Steve

  • #2
    As usual I'm answering my own question on this forum ( for the sake of others who might have a similar issue ).

    Someone told me that WebLogic 11g comes with its own set of Spring jars, which were likely conflicting with the Spring jars I had inside of my WAR file.

    I couldn't find any WAR files with "spring" in the label. I did see a number of other libraries in the admin page under "Deployments".

    I'm not sure what I did, but after re-installing WebLogic 11g the libraries did not get reinstalled and the problem went away.

    This is okay with me as the the test and production servers don't include those libraries, so I am probably avoiding further conflicts.

    I would still like to know where the Spring libraries were in WebLogic 11g.

    Comment

    Working...
    X