2015-03-04 5 views
0

У меня есть версия tomcat от tomcat6 до tomcat7 для моего веб-приложения. При нажатии кнопки на странице вызывается AbstractMethod Error.Обновление от tomcat6 до tomcat7, дающее ошибки AbstractMethod Error

Вот снимок:

javax.servlet.ServletException: java.lang.AbstractMethodError 
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:916) 
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:845) 
    com.web.console.jsp.editCDTemplate_jsp._jspService(editCDTemplate_jsp.java:203) 
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:727) 
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
    org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1056) 
    org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:261) 
    org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:388) 
    org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:316) 
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:231) 
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164) 
    org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:620) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:727) 
    com.web.console.CharsetFilter.doFilter(CharsetFilter.java:16) 
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 


root cause 

java.lang.AbstractMethodError 
    javax.servlet.ServletRequestWrapper.isAsyncStarted(ServletRequestWrapper.java:396) 
    com.web.console.jsp.editCDTemplate_jsp._jspService(editCDTemplate_jsp.java:166) 
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:727) 
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
    org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1056) 
    org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:261) 
    org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:388) 
    org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:316) 
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:231) 
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164) 
    org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:620) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:727) 
    com.web.console.CharsetFilter.doFilter(CharsetFilter.java:16) 
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 

выше ошибка происходит по нажатию кнопки. Эта ошибка вызывает только одна кнопка.

EDIT On При нажатии на кнопку следует отображать следующий jsp, но он выбрасывает вышеуказанное исключение. КОД SNIPPET

<console:page url="emptyPage.jsp" 
     title="com.web.template"> 
    <console:menu> 
    </console:menu> 
    <console:header> 
     <%if (request.getParameter("mode").equals("edit")) {%> 
       <bean:message key="com.web.editTemplate"/> 
    <%} else { %> 
     <bean:message key="com.web.create"/> 
    <%}%> 
    </console:header> 
    <console:pageBody> 
     <tr><td><table width="100%"><tr><td> 
     <% 

     ServletContext pwgContext = getServletContext().getContext("/pwg"); 
     ivr_005fcallflow_005fframe_jsp.storeAdminSessionIdInContext(pwgContext, session.getId()); 
     WebConsoleSession webConsoleSession = (WebConsoleSession)session.getAttribute(LoginAction.WEB_CONSOLE_SESSION_KEY); 
     if (webConsoleSession != null) 
       ivr_005fcallflow_005fframe_jsp.storeFPSAAdminSessionIdInContext(pwgContext, webConsoleSession.getSessionId()); 
     RequestDispatcher dispatcher = pwgContext.getRequestDispatcher("/callflow"); 

     InvokeServletTag.FakeRequest subRequest = new InvokeServletTag.FakeRequest(request); 
     if (request.getParameter("template") != null) { 
      subRequest.setParameter("callFlowNumber", request.getParameter("template")); 
     } 
     InvokeServletTag.FakeResponse subResponse = new InvokeServletTag.FakeResponse(); 
     dispatcher.include(subRequest, subResponse); 
     subResponse.flushTo(out); 

      %> 
     </td></tr></table></td></tr> 
    <html:errors/> 
    </console:pageBody> 
</console:page> 

Может кто-нибудь помочь мне в этом.

+0

проверить путь сборки ур и удалить ошибки, вызывающие баночки –

+0

Не могли бы вы также выслать соответствующий код? – Bono

+0

@Bono Добавил фрагмент кода – k00989

ответ

1

Удалить servlet-api, servlet, jsp-api and jasper банки с вашей траектории сборки. Вы увидите некоторые проблемы с компиляцией, но ее позаботятся о контейнере. В качестве альтернативы вы можете редактировать их и указывать на новые файлы jar

+0

, о котором вы говорите? банки из предыдущей версии tomcat для удаления и добавления нового из файлов jar tomcat7. – k00989

+0

Просто удалите из пути сборки и разверните веб-приложение к tomcat7, Эти банки будут там в tomcat 7 – shikjohari

+0

У меня есть следующие банки, доступные в папке tomcat. ant.jar, commons-dbcp-1.2.1.jar, jasper-compiler.jar, naming-common.jar, naming-resources.jar, servlet-api.jar, jsp-api.jar, naming-java.jar но не нашел файл servlet.jar и jasper.jar. Каковы различия в библиотеках между tomcat6 и tomcat7. Не могли бы вы дать мне некоторую ссылку для этого. – k00989

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

  • Нет связанных вопросов^_^