Служба RESTful с использованием веб-инфраструктуры Spark на Tomcat

Я хочу создать спокойный API в Java 8, используя веб-фреймворк Spark версии 2.6.0, JSF 2.2, Jstl 1.2, и я хочу развернуть его на сервере Tomcat 8.5.9. У меня есть эта конфигурация в моем web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-appjava.lang.StackOverflowError
    javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
    com.sun.faces.application.ViewHandlerResponseWrapper.setStatus(ViewHandlerResponseWrapper.java:88).1.xsd">
    <filter>        
        <filter-name>SparkFilter</filter-name>
        <filter-class>spark.servlet.SparkFilter</filter-class>
        <init-param>
            <param-name>applicationClass</param-name>
            <param-value>ec.apicorreo.filtro.InicioSpark</param-value>            
        </init-param>       
    </filter>
    <filter-mapping>         
        <filter-name>SparkFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <context-param>
        <param-name>javax.faces.PROJECT_STAGE</param-name>
        <param-value>Production</param-value>
    </context-param>
    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.xhtml</url-pattern>
    </servlet-mapping>

    <welcome-file-list>
        <welcome-file>index.xhtml</welcome-file>
    </welcome-file-list>
...
...
 </web-app>

Но у меня есть это исключение: javax.servlet.ServletException: Servlet execution threw an exception. И основная причина: java.lang.StackOverflowError javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201) com.sun.faces.application.ViewHandlerResponseWrapper.setStatus(ViewHandlerResponseWrapper.java:88). Я не знаю, что мне не хватает.


person David Leonardo Crespín    schedule 18.10.2017    source источник
comment
Похоже, setStatus - это рекурсивный метод. В противном случае что-то вызывается по кругу   -  person OneCricketeer    schedule 18.10.2017
comment
Я не справляюсь с этим, у меня есть только этот фильтр: открытый класс InicioSpark реализует SparkApplication { @Override public void init() { get(/hello, (req, res) -> Hola mundo!); } }   -  person David Leonardo Crespín    schedule 18.10.2017
comment
это похоже на проблему с лицом   -  person Scary Wombat    schedule 18.10.2017
comment
у вас есть файл index.xhtml? возможно, это поможет вам stackoverflow.com/questions/10024312/   -  person Ramires Nascimento    schedule 18.10.2017
comment
Вам нужны лица? Я не думаю, что Искра или кот   -  person OneCricketeer    schedule 18.10.2017
comment
У меня есть index.xhtml, но я не использую Faces-config @RamiresMoreira.   -  person David Leonardo Crespín    schedule 18.10.2017


Ответы (1)


Я решил удалить JSF, и проблема была решена, и я собираюсь использовать представления и шаблоны из искры http://sparkjava.com/documentation.html#views-and-templates

person David Leonardo Crespín    schedule 18.10.2017