Hey ihr,
Ich habe einen kleinen REST-Service geschrieben und möchte ihn nun mit dem Advanced Rest Client von Chrome testen. Folgenden Javacode habe ich geschrieben:
Nun möchte ich die POST-Methode des Service testen. Dabei nutze ich den Rest Client wie folgt:

Wenn ich den Request nun ausführe bekomme ich den folgenden Fehler:

Und in der Console in Eclipse erscheint dieser Java-Fehler:
Habt ihr ne Idee woran das liegen könnte? Ich meine der Fehler liegt irgendwie bei dem JSON-Array was ich übergebe, denn am Javacode kanns ja eigentlich nicht liegen. Ich habe bereits versucht eine textdatei mit dem Json-String zu erstellen und diese dem Request anzuhängen. Aber das liefert das gleiche Ergebnise. Wahrscheinlich seh ich den Wald vor lauter Bäumen nicht und ihr findet den Fehler ganz schnell, aber ich weis einfach nicht woran das liegt.
Hoffe ihr habt ne idee.
Liebe Grüße
Domae
Ich habe einen kleinen REST-Service geschrieben und möchte ihn nun mit dem Advanced Rest Client von Chrome testen. Folgenden Javacode habe ich geschrieben:
Java:
package de.dpunkt.myaktion.resources;
import java.util.List;
import javax.inject.Inject;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import de.dpunkt.myaktion.model.Aktion;
import de.dpunkt.myaktion.services.AktionService;
@Path("/organisator/aktion")
public class AktionResource {
@Inject
private AktionService aktionService;
@GET
@Path("/list")
@Produces(MediaType.APPLICATION_JSON)
public List<Aktion> getAllAktionen(){
List<Aktion> allAktionen=aktionService.getAllAktionen();
for(Aktion aktion: allAktionen){
aktion.setSpenden(null);
aktion.setOrganisator(null);
}
return allAktionen;
}
@DELETE
@Path("/{aktionId}")
public void deleteAktion(@PathParam(value="aktionId") Long aktionId){
aktionService.deleteAktion(aktionId);
}
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Aktion addAktion(Aktion aktion){
return aktionService.addAktion(aktion);
}
}
Nun möchte ich die POST-Methode des Service testen. Dabei nutze ich den Rest Client wie folgt:

Wenn ich den Request nun ausführe bekomme ich den folgenden Fehler:

Und in der Console in Eclipse erscheint dieser Java-Fehler:
Java:
16:40:07,555 SCHWERWIEGEND [org.jboss.resteasy.core.SynchronousDispatcher] (http--0.0.0.0-8443-1) Failed executing POST organisator/aktion: org.jboss.resteasy.spi.UnsupportedMediaTypeException: Cannot consume content type
at org.jboss.resteasy.core.registry.Segment.match(Segment.java:117) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.registry.SimpleSegment.matchSimple(SimpleSegment.java:33) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.registry.RootSegment.matchChildren(RootSegment.java:327) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.registry.SimpleSegment.matchSimple(SimpleSegment.java:44) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.registry.RootSegment.matchChildren(RootSegment.java:327) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.registry.RootSegment.matchRoot(RootSegment.java:374) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.registry.RootSegment.matchRoot(RootSegment.java:367) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.ResourceMethodRegistry.getResourceInvoker(ResourceMethodRegistry.java:307) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.SynchronousDispatcher.getInvoker(SynchronousDispatcher.java:173) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:118) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50) [resteasy-jaxrs-2.3.2.Final.jar:]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
at org.jboss.weld.servlet.ConversationPropagationFilter.doFilter(ConversationPropagationFilter.java:62) [weld-core-1.1.5.AS71.Final.jar:2012-02-10 15:31]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:489) [jbossweb-7.0.13.Final.jar:]
at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368) [jbossweb-7.0.13.Final.jar:]
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) [jbossweb-7.0.13.Final.jar:]
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671) [jbossweb-7.0.13.Final.jar:]
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930) [jbossweb-7.0.13.Final.jar:]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_71]
Habt ihr ne Idee woran das liegen könnte? Ich meine der Fehler liegt irgendwie bei dem JSON-Array was ich übergebe, denn am Javacode kanns ja eigentlich nicht liegen. Ich habe bereits versucht eine textdatei mit dem Json-String zu erstellen und diese dem Request anzuhängen. Aber das liefert das gleiche Ergebnise. Wahrscheinlich seh ich den Wald vor lauter Bäumen nicht und ihr findet den Fehler ganz schnell, aber ich weis einfach nicht woran das liegt.
Hoffe ihr habt ne idee.
Liebe Grüße
Domae
Zuletzt bearbeitet: