2013-09-17 2 views
2

Я пытаюсь протестировать следующий код сервлета, используя httpunit servlet runner. Здесь все замечательно, кроме jsp-страниц, включая jstl.Проверьте страницы jsp, которые содержат код jstl в сервлетах с использованием Httpunit и узла сервлета

public class ListTenantServlet extends HttpServlet { 

    private static final long serialVersionUID = 1L; 
    private static final Logger log = Logger.getLogger(ListTenantServlet.class.getName()); 

    public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, 
     IOException { 

    doProcess(req, res); 
    } 

    public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, 
     IOException { 

    doProcess(req, res); 
    } 

    private void doProcess(HttpServletRequest req, HttpServletResponse res) throws ServletException, 
     IOException { 
     CompanyStatus companyStatus = TenantStatus.Paid; 
     req.setAttribute("companyStatus" companyStatus); 
     RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/tenantList.jsp"); 
     dispatcher.forward(req, res); 
    } 

Если я пытаюсь проверить код выше он дает следующее исключение, но сервлет работает нормально в локальном сервере.

Ошибка по запросу HTTP: 500 org.apache.jasper.JasperException: Абсолютный URI: http://java.sun.com/jsp/jstl/core не могут быть разрешены в любом web.xml или баночке файлов, размещенных с этим приложением [HTTP: // локальный/contextParam/tenantmgr/listTenant]

Примечание. В моем ListTenant.jsp есть jstl-код, тест отлично работает, если я удалю код jstl.

Пожалуйста, помогите мне заставить его работать.

ответ

0

Немного поздно, но вам нужно поставить несколько фляг для сервлетов. Во-первых, это не так много. Хорошее решение - это просто копировать те же банки с вашего локального сервера, например. если вы используете tomcat TOMCAT_HOME/lib/*. jar.

У меня есть автоматизация тестирования JSP с помощью ServletUnit + Spring + Maven и добавления некоторых зависимостей. Посмотрите мой ответ here

Смежные вопросы