Wie Sie vorwärts von einer JAX-RS-service zu JSP?

JBoss Version: 4.2.3 GA. Dies funktioniert in apache tomcat 6.0. In JBoss, hatte ich die folgende Einstellung hinzufügen: -Dorg.apache.catalina.STRICT_SERVLET_COMPLIANCE=false um die nach vorne zu arbeiten, aber jetzt wenn ich das laden der Seite bekomme ich die Fehlermeldung unten. Es fühlt sich an wie ich bin, dies zu tun in einer Weise, JBoss nicht wie, aber ich habe nicht gesehen, alle anderen Beispiele. Kennt jemand einen Weg, diese zu arbeiten?

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;

...


@GET
@Path("/forward")
public String forward(
    @Context final HttpServletRequest request,
    @Context final HttpServletResponse response) throws Exception
{
  RequestDispatcher dispatcher = request.getRequestDispatcher("/index.html");
  dispatcher.forward(request, response);
  return "";
}

Ausnahme:

java.lang.ClassCastException: $Proxy114 cannot be cast to javax.servlet.ServletRequestWrapper
    com.itt.scout.server.servlet.admin.config.ConfigController.forward(ConfigController.java:46)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$VoidOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:151)
    com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:70)
    com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:279)
    com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:136)
    com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:86)
    com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:136)
    com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:74)
    com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1357)
    com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1289)
    com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1239)
    com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1229)
    com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:420)
    com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:497)
    com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:684)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
Sie sind nicht mit servlets direkt. Sie werden mithilfe von JAX-WS (webservices). Ich entfernte die "servlet" Referenz und tag. Um zu erfahren, was eine echte servlet tatsächlich ist, können Sie unsere servlets wiki-Seite stackoverflow.com/tags/servlets/info
Ich mache MVC mit einer restlet-controller und eine jsp-view. Dieser wohl sah komisch aus, in meinem Beispiel, denn ich hätte nicht die Weiterleitung der Anfragen wie.

InformationsquelleAutor Bob B | 2011-08-08

Schreibe einen Kommentar