我正在使用,Maven,Jersey和PostGres。
对于一个学校项目,我尝试开发一个通用休息服务,但我遇到了错误,我不知道如何修复它。
当我想通过id获取一个实体时它工作正常。我从我的数据库中获得了XML生成的文件。
但是当我想要数据库中的所有实体时,我都会遇到错误:
mars 31,2016 7:12:46 PM com.sun.jersey.spi.container.ContainerResponse logException GRAVE:响应映射异常:500(内部服务器错误)
javax.ws.rs.WebApplicationException:com.sun.jersey.api.MessageException:Java类java.util.Vector的消息体编写器,Java类型类java.util.Vector和MIME媒体类型application /找不到xml。
这是AbstractResourceRest类,其中错误似乎是:
GenericEntity<List<T>> genericEntity = new GenericEntity<List<T>>(list){};
我发现在listToResponse方法中,List列表参数应该是Vector,但我从未在整个项目中使用过Vector。
我尝试使用
<properties>
<maven.compiler.target> 1.8</maven.compiler.target>
<maven.compiler.source> 1.8</maven.compiler.source>
<java.version> 1.8</java.version>
<eclipselink.version> 2.5.2</eclipselink.version>
<javax.persistence> 2.1.0</javax.persistence>
</properties>
<dependencies>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava-testlib</artifactId>
<version>19.0</version>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.1.0.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.0.2.GA</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version>1.5.6</version>
</dependency>
<!--<dependency>-->
<!--<groupId>org.eclipse.persistence</groupId>-->
<!--<artifactId>javax.persistence</artifactId>-->
<!--<version>${javax.persistence}</version>-->
<!--<scope>provided</scope>-->
<!--</dependency>-->
<!--<dependency>-->
<!--<groupId>org.eclipse.persistence</groupId>-->
<!--<artifactId>eclipselink</artifactId>-->
<!--<version>${eclipselink.version}</version>-->
<!--<scope>test</scope>-->
<!--</dependency>-->
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.jpa</artifactId>
<version>2.6.0</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.4-1201-jdbc41</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<version>1.19</version>
</dependency>
<dependency>
<groupId>com.owlike</groupId>
<artifactId>genson</artifactId>
<version>0.99</version>
</dependency>
<dependency>
<groupId>com.sun.jersey.contribs</groupId>
<artifactId>jersey-multipart</artifactId>
<version>1.19</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>2.5.1</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-server</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>2.22.2</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jdk8</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-grizzly2</artifactId>
<version>1.19</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
但是我也遇到了同样的错误。
这是我需要时的pom.xml:
{{1}}
如果您有任何想法, 谢谢大家!!