[ https://issues.apache.org/jira/browse/WW-3903?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dave Newton closed WW-3903. --------------------------- Resolution: Not A Problem > org.apache.jasper.JasperException: Tag file directory /struts-tags does not > start with "/WEB-INF/tags" > ------------------------------------------------------------------------------------------------------ > > Key: WW-3903 > URL: https://issues.apache.org/jira/browse/WW-3903 > Project: Struts 2 > Issue Type: Bug > Affects Versions: 2.3.4.1 > Environment: Windows 7 ultimate, tomcat 7.0.32, jre 1.7, list of > library applications: > asm-3.3.jar > asm-commons-3.3.jar > asm-tree-3.3.jar > commons-beanutils-1.8.0.jar > commons-chain-1.2.jar > commons-collections-3.1.jar > commons-digester-2.0.jar > commons-fileupload-1.2.2.jar > commons-io-2.0.1.jar > commons-lang-2.4.jar > commons-lang3-3.1.jar > commons-logging-1.1.1.jar > commons-logging-api-1.1.jar > commons-validator-1.3.1.jar > freemarker-2.3.19.jar > javassist-3.11.0.GA.jar > ognl-3.0.5.jar > struts2-convention-plugin-2.3.4.1.jar > struts2-core-2.3.4.1.jar > struts2-jasperreports-plugin-2.3.4.1.jar > struts2-javatemplates-plugin-2.3.4.1.jar > struts2-jfreechart-plugin-2.3.4.1.jar > struts2-json-plugin-2.3.4.1.jar > struts2-junit-plugin-2.3.4.1.jar > xwork-core-2.3.4.1.jar > Reporter: Gulyaev Nikolay > Priority: Critical > Original Estimate: 5h > Remaining Estimate: 5h > > When jasper process a page with <%@ taglib prefix="s" tagdir="/struts-tags" > %> I get the exception: > org.apache.jasper.JasperException: Tag file directory /struts-tags does not > start with "/WEB-INF/tags" > at > org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:56) > at > org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:410) > at > org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:117) > at > org.apache.jasper.compiler.ImplicitTagLibraryInfo.<init>(ImplicitTagLibraryInfo.java:84) > at > org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:432) > at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:475) > at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1427) > at org.apache.jasper.compiler.Parser.parse(Parser.java:138) > at > org.apache.jasper.compiler.ParserController.doParse(ParserController.java:242) > at > org.apache.jasper.compiler.ParserController.parse(ParserController.java:102) > at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:198) > at org.apache.jasper.compiler.Compiler.compile(Compiler.java:373) > at org.apache.jasper.compiler.Compiler.compile(Compiler.java:353) > at org.apache.jasper.compiler.Compiler.compile(Compiler.java:340) > at > org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:646) > at > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357) > at > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) > at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) > at > org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:88) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) > at > org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684) > at > org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:471) > at > org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402) > at > org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329) > at > org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:164) > at > org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186) > at > com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:374) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:278) > at > org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176) > at > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265) > at > org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68) > at > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:236) > at > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:236) > at > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:90) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171) > at > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:192) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187) > at > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) > at > org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54) > at > org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:511) > at > org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77) > at > org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) > at > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) > at > org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:999) > at > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565) > at > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307) > at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) > at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) > at java.lang.Thread.run(Unknown Source) > What this could be the reason? Please help, I'm trying to fix it for the > third day!!! -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira