MongoDB some data not loading into java tomcat application -
i @ loss causing problem. have java webapp connected hosted mongo database. have added new collection app using new repository looks this.
public interface contractrepository extends pagingandsortingrepository<contract, string> { public contract findbynameignorecase(string name); public list<contract> findbyownercompany(company c); } everything worked fine data being added db, , being loaded app. pushed new version , no longer pull data db there no data loss in db. added new records manually , show fine. since hand added of records in , worked fine until update. same issue.
pom:
http://maven.apache.org/maven-v4_0_0.xsd"> net.company.com applicant-tracking-system 1.0.0
<modelversion>4.0.0</modelversion> <groupid>net.company.com</groupid> <artifactid>ats-web</artifactid> <packaging>war</packaging> <version>1.0.0-build-snapshot</version> <properties> <org.slf4j-version>1.7.7</org.slf4j-version> <java-version>1.8</java-version> <debug>true</debug> </properties> <dependencymanagement> <dependencies> <!-- <dependency> <groupid>org.springframework</groupid> <artifactid>spring-framework-bom</artifactid> <version>4.0.6.release</version> <type>pom</type> <scope>import</scope> </dependency>--> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-parent</artifactid> <version>1.2.2.release</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencymanagement> <dependencies> <dependency> <groupid>net.acesinc.ats</groupid> <artifactid>ats-model</artifactid> <version>1.0.0-build-snapshot</version> </dependency> <dependency> <groupid>net.company.com</groupid> <artifactid>ats-resume-parser</artifactid> <version>1.0.0</version> </dependency> <!-- spring --> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-web</artifactid> <exclusions> <!-- exclude default logging logback can use log4j --> <exclusion> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-logging</artifactid> </exclusion> </exclusions> </dependency> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-tomcat</artifactid> <scope>provided</scope> </dependency> <dependency> <groupid>org.springframework.cloud</groupid> <artifactid>spring-cloud-spring-service-connector</artifactid> <version>1.0.0.release</version> </dependency> <dependency> <groupid>org.springframework.cloud</groupid> <artifactid>spring-cloud-cloudfoundry-connector</artifactid> <version>1.0.0.release</version> </dependency> <dependency> <groupid>com.googlecode.json-simple</groupid> <artifactid>json-simple</artifactid> <version>1.1</version> </dependency> <!-- include log4j logger --> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-log4j</artifactid> </dependency> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-websocket</artifactid> </dependency> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-messaging</artifactid> </dependency> <!-- spring data --> <dependency> <groupid>org.springframework.data</groupid> <artifactid>spring-data-commons</artifactid> <version>1.9.1.release</version> </dependency> <dependency> <groupid>org.springframework.data</groupid> <artifactid>spring-data-mongodb</artifactid> <version>1.6.1.release</version> </dependency> <dependency> <groupid>com.mysema.querydsl</groupid> <artifactid>querydsl-mongodb</artifactid> <version>3.5.1</version> </dependency> <!-- security --> <dependency> <groupid>org.springframework.security</groupid> <artifactid>spring-security-core</artifactid> <version>4.0.0.release</version> <exclusions> <!--exclude commons logging in favor of slf4j--> <exclusion> <groupid>commons-logging</groupid> <artifactid>commons-logging</artifactid> </exclusion> </exclusions> </dependency> <dependency> <groupid>org.springframework.security</groupid> <artifactid>spring-security-web</artifactid> <version>4.0.0.release</version> <exclusions> <!-- exclude commons logging in favor of slf4j --> <exclusion> <groupid>commons-logging</groupid> <artifactid>commons-logging</artifactid> </exclusion> </exclusions> </dependency> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-test</artifactid> <version>4.0.0.release</version> <scope>test</scope> </dependency> <dependency> <groupid>org.mockito</groupid> <artifactid>mockito-all</artifactid> <version>1.9.5</version> <scope>test</scope> </dependency> <dependency> <groupid>org.springframework.security</groupid> <artifactid>spring-security-taglibs</artifactid> <version>4.0.0.release</version> <exclusions> <!-- exclude commons logging in favor of slf4j --> <exclusion> <groupid>commons-logging</groupid> <artifactid>commons-logging</artifactid> </exclusion> </exclusions> </dependency> <dependency> <groupid>org.springframework.security</groupid> <artifactid>spring-security-config</artifactid> <version>4.0.0.release</version> <exclusions> <!-- exclude commons logging in favor of slf4j --> <exclusion> <groupid>commons-logging</groupid> <artifactid>commons-logging</artifactid> </exclusion> </exclusions> </dependency> <dependency> <groupid>org.springframework.security</groupid> <artifactid>spring-security-crypto</artifactid> <version>4.0.0.release</version> </dependency> <dependency> <groupid>org.thymeleaf</groupid> <artifactid>thymeleaf-spring4</artifactid> <version>2.1.3.release</version> </dependency> <!-- servlet --> <dependency> <groupid>javax.servlet</groupid> <artifactid>javax.servlet-api</artifactid> <version>3.1.0</version> <scope>provided</scope> </dependency> <dependency> <groupid>javax.servlet.jsp</groupid> <artifactid>jsp-api</artifactid> <version>2.1</version> <scope>provided</scope> </dependency> <dependency> <groupid>javax.servlet</groupid> <artifactid>jstl</artifactid> <version>1.2</version> </dependency> <dependency> <groupid>com.sun.jersey</groupid> <artifactid>jersey-client</artifactid> <version>1.8-ea02</version> <scope>compile</scope> </dependency> <dependency> <groupid>javax.ws.rs</groupid> <artifactid>jsr311-api</artifactid> <version>1.1.1</version> <scope>compile</scope> </dependency> <!-- apache commons file upload --> <dependency> <groupid>commons-fileupload</groupid> <artifactid>commons-fileupload</artifactid> <version>1.3.1</version> </dependency> <dependency> <groupid>org.apache.httpcomponents</groupid> <artifactid>httpclient</artifactid> <version>4.3.5</version> </dependency> <dependency> <groupid>junit</groupid> <artifactid>junit</artifactid> <version>4.10</version> <scope>test</scope> </dependency> <dependency> <groupid>org.apache.httpcomponents</groupid> <artifactid>httpmime</artifactid> <version>4.3.5</version> </dependency> <!-- apache commons io --> <dependency> <groupid>commons-io</groupid> <artifactid>commons-io</artifactid> <version>2.4</version> </dependency> </dependencies> <repositories> <!-- these set in settings.xml our nexus repo --> </repositories> <pluginrepositories> <!-- these set in settings.xml our nexus repo --> </pluginrepositories> <build> <finalname>${project.artifactid}</finalname> <plugins> <plugin> <groupid>org.apache.maven.plugins</groupid> <artifactid>maven-compiler-plugin</artifactid> <configuration> <source>${java-version}</source> <target>${java-version}</target> </configuration> </plugin> <!-- <plugin> <groupid>org.eclipse.jetty</groupid> <artifactid>jetty-maven-plugin</artifactid> <version>9.2.1.v20140609</version> <configuration> <systempropertiesfile>${project.basedir}/src/main/resources/jetty/jetty.properties</systempropertiesfile> <jettyxml>${project.basedir}/src/main/resources/jetty/jetty.xml,${project.basedir}/src/main/resources/jetty/jetty-http.xml,${project.basedir}/src/main/resources/jetty/jetty-ssl.xml,${project.basedir}/src/main/resources/jetty/jetty-https.xml</jettyxml> <jettyxml>${project.basedir}/src/main/resources/jetty/jetty.xml,${project.basedir}/src/main/resources/jetty/jetty-http.xml</jettyxml> <war>${project.build.directory}/${project.build.finalname}</war> <scanintervalseconds>1</scanintervalseconds> </configuration> </plugin>--> <plugin> <groupid>org.apache.tomcat.maven</groupid> <artifactid>tomcat7-maven-plugin</artifactid> <version>2.2</version> <configuration> <systemproperties> <spring.profiles.active>dev</spring.profiles.active> </systemproperties> <path>/</path> <url>http://localhost:1234/mymanager</url> </configuration> </plugin> </plugins> </build> any suggestions appreciated.
if structure of contract has changed possible old data present in database have different structure not possible load in instance of class contract.
check json structure of old value of contract , new value of contract see if there differences.
or if have control on class contract inspect old version of contract , new 1 see if data can compatible or not.
imagine example if company name has been refactored
private string companyname; to
private string name; you can't extract old data method
public contract findbynameignorecase(string name);
Comments
Post a Comment