以前服务器环境linux JDK1.6 tomcat6.0 运行正常
现在服务器环境换成linux JDK1.5 tomcat5.5
但是运行的时候出现下面的异常
org.apache.jasper.JasperException: The absolute uri: http://struts.apache.org/tags-logic cannot be resolved in either web.xml or the jar files deployed with this application
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:51)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:116)
org.apache.jasper.compiler.TagLibraryInfoImpl.generateTLDLocation(TagLibraryInfoImpl.java:317)
org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:148)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:424)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:493)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1557)
org.apache.jasper.compiler.Parser.parse(Parser.java:127)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:212)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:101)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:156)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:296)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:277)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:265)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:302)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)首页代码:
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%>
<logic:redirect forward="indexS"/>以前运行都正常啊,现在就是服务器的版本降低了,但是也不应该不能找到struts标签啊,希望大家帮帮找找原因,我都不耐了!先谢谢大家了!!!!

解决方案 »

  1.   

    http://zkq041.chinaw3.com/tax
    这是测试地址,大家可以看看,谢谢了
      

  2.   

    把Struts的几个tld文件复制到WEB-INF/tld目录下,然后在web.xml中加一段
                      <!-- Struts框架的taglib -->
    <taglib>
    <taglib-uri>http://struts.apache.org/tags-bean</taglib-uri>
    <taglib-location>
    /WEB-INF/tld/struts-bean.tld
    </taglib-location>
    </taglib>
    <taglib>
    <taglib-uri>http://struts.apache.org/tags-html</taglib-uri>
    <taglib-location>
    /WEB-INF/tld/struts-html.tld
    </taglib-location>
    </taglib>
    <taglib>
    <taglib-uri>http://struts.apache.org/tags-logic</taglib-uri>
    <taglib-location>
    /WEB-INF/tld/struts-logic.tld
    </taglib-location>
    </taglib>原因应该是Tomcat6会自动搜索tld文件,而5不会
      

  3.   

    <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%>
    直接换成
    <%@ taglib uri="/WEB-INF/tld/struts-logic.tld" prefix="logic"%>
    实验下,以前好像这么用可以
      

  4.   

    struts.jar包的问题
    打开META-INF/tlds下的struts-bean.tld文件      
      看一下uri节点的值是否与jsp页面中的一致; 
      如果不一致的话 换一个包
     或者将jsp页面中的uri修改成tld文件中uri节
      

  5.   

    同意:
    原因应该是Tomcat6会自动搜索tld文件,而5不会
      

  6.   

    你看那个错误,就是说这个utr无法识别吗,可能是你的tld文件没有放对地方吧,你放在web-inf下试试,不过现在的1.3都把tld放到jar里,Tomcat会自动解压,不要改文件的
      

  7.   

    看看你的tomcat安装路径是不是有空格,如果有空格,有可能会出现这种问题