错误“绝对uri:http://struts.apache.org/tags-html无法在web.xml或使用此应用程序部署的jar文件中解析”

时间:2014-01-24 08:57:12

标签: web.xml struts-config struts-1

我是Struts.i的新手。我试过一个示例struts1.x应用程序。当我运行它时,它会出错

  

绝对uri:http://struts.apache.org/tags-html无法在web.xml或使用此应用程序部署的jar文件中解析“my jsp page has   '<%@ taglib uri =“http://struts.apache.org/tags-html”prefix =“html”%>   <%@ taglib uri =“http://struts.apache.org/tags-bean”prefix =“bean”%>'

网页:

<html>
  <body>
    <center>
      <html:errors/>
      <html:form action="login">
        <bean:message key="label.uname"/>
        :
        <html:text property="uname"/>
        <br> 
        <bean:message key="label.pwd"/>
        :
        <html:text property="pwd"/>
        <br> 
        <html:submit value="LOGIN"/>
      </html:form>
    </center>
  </body>
</html>

的web.xml:

<web-app>
  <servlet>
    <servlet-name>Action</servlet-name>
    <servlet-class>org.apache.struts.Action.ActionServlet</servlet-class>
    <init-param>
      <param-name>Config</param-name>
      <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>Action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>
</web-app>

2 个答案:

答案 0 :(得分:1)

试试这个

在[{1}}]

中包含以下jar作为依赖项
WEB-INF/lib

在JSP页面中:

 struts-taglib.jar [any version, eg: struts-taglib-1.3.10.jar]

如何工作:标签库描述符[tld]信息在“struts-taglib.jar \ META-INF \ tld”中定义

您可以查看此SO帖子中提到的答案。我在那里有一个运行的例子 No getter method for property... error

因此,您可以将jar文件作为依赖项,或者在WEB-INF中添加标记库描述符,并在<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %> <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %> <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %> 中配置

<强>的web.xml

web.xml

此处配置的内容与您在jsp页面中定义的<taglib> <taglib-uri> http://struts.apache.org/tags-bean </taglib-uri> <taglib-location> /WEB-INF/struts-bean.tld </taglib-location> </taglib> <taglib> <taglib-uri> http://struts.apache.org/tags-html </taglib-uri> <taglib-location> /WEB-INF/struts-html.tld </taglib-location> </taglib> <taglib> <taglib-uri> http://struts.apache.org/tags-logic </taglib-uri> <taglib-location> /WEB-INF/struts-logic.tld </taglib-location> </taglib> 之间存在映射。 jsp页面中的taglib必须与@taglib uri中定义的<taglib-uri>匹配

web.xml

答案 1 :(得分:1)

创建项目时,只需检查添加Struts TLD 选项即可 如下面的屏幕截图所示。 Add Struts TLDs

添加Struts TLD :允许您为Struts标记库生成标记库描述符。标记库描述符是一个XML文档,其中包含有关整个标记库以及每个单独标记的其他信息。通常,这不是必需的,因为您可以引用在线URI而不是本地TLD文件。