Apache CXF вперед на страницу JSP с моделью



Я использую Apache CXF. И у меня есть этот контроллер



@GET
@Path("/benchmark")
@Produces("text/html")
public Response getForbiddenBrowserList() {
MyModel model = generateMyModel();
//And now I want to do something like:
return Response.ok( JspView("WEB-INF/pages/benchmark.jsp", model) ).build();
}


Я не могу найти что-то вроде "JspView" в Apache CXF. Как вернуть страницу JSP в apace CXF и передать "модель" в JSP?



Не могли бы вы привести мне простой пример, пожалуйста? (Я нашел эту документацию , но она не работает для меня)
701   1  

1 ответ:

Ну, у меня есть одно возможное решение. Это не сработало у меня раньше, потому что я забыл зарегистрировать jaxrs: provider

Контроллер:

@GET
@Path("/benchmark")
@Produces("text/html")
public MyModel getForbiddenBrowserList() {
    MyModel model = generateMyModel();
    //And now I want to do something like:
    return MyModel;
}

JAX-rs spring config:

    <jaxrs:server id="notesService" address="/">
    ...
        <jaxrs:providers>
            <ref bean="dispatchProvider"/>
        </jaxrs:providers>
    </jaxrs:server>

  <bean id="dispatchProvider" class="org.apache.cxf.jaxrs.provider.RequestDispatcherProvider">
      <property name="classResources">
          <map>
              <entry key="com.acme.MyModel" value="/WEB-INF/pages/model.jsp"/>
          </map>
      </property>
      <property name="beanNames">
          <map>
              <entry key="com.acme.MyModel" value="myModel"/>
          </map>
      </property>
 </bean>

И модель.jsp:

<%@ page import="com.acme.MyModel" %>
<%
    MyModel myModel= (MyModel) request.getAttribute("myModel");
%>
<html>
    <head></head>
    <body>
        Model: <%= myModel.value %>
    </body>
</html>

Comments

    Ничего не найдено.