给出部分代码,jsp中出现unknown tag(html:text),unknown tag(html:error)等标签警告
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了给出部分代码,jsp中出现unknown tag(html:text),unknown tag(html:error)等标签警告相关的知识,希望对你有一定的参考价值。
JSP:
<%@ page language="java" pageEncoding="UTF-8" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>
<html>
<head>
<title>Welcome to Login</title>
</head>
<body>
<form action="/Login">
userName:<html:text name="userName" />
<html:errors property="userName" /><br />
passWord:<html:password property="userPass" />
<html:errors property="userPass" /><br />
<html:submit property="Submit">
<bean:message key="jsp.user.login.loginbut" /></html:submit>
<html:reset property="reset">
<bean:message key="jsp.user.login.rebut" /></html:reset>
</html:form>
</body>
</html>
struts-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config
PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
"http://struts.apache.org/dtds/struts-config_1_2.dtd">
<struts-config>
<data-sources />
<form-beans>
<form-bean name="loginForm" type="com.wrox.login.LoginForm" />
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings>
<action attribute="loginForm"
input="/Login.jsp"
name="loginForm"
path="/Login"
scope="request"
type="com.wrox.action.LoginAction">
<forward name="failure" path="/Login.jsp" />
<forward name="success" path="/index.jsp" />
</action>
</action-mappings>
<message-resources parameter="com.wrox.ApplicationResources" />
</struts-config>
web.xml部分
<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/src/com/wrox/login/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>Login.jsp</welcome-file>
</welcome-file-list>
<jsp-config>
<taglib>
<taglib-uri>/struts-bean.tld</taglib-uri>
<taglib-location>/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/struts-html.tld</taglib-uri>
<taglib-location>/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/struts-logic.tld</taglib-uri>
<taglib-location>/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/struts-tiles.tld</taglib-uri>
<taglib-location>/struts-tiles.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/struts-nested.tld</taglib-uri>
<taglib-location>/struts-nested.tld</taglib-location>
</taglib>
</jsp-config>
来访者麻烦提出错误地方,并给出解决方案,谢谢~!
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
将web.xml中的jsp-config删除。
PS:<jsp-config><taglib>..<taglib>/</jsp-config>是tomcat 5以上(j2ee2.4)的版本配置的方式 .本回答被提问者采纳 参考技术B 标签引入的时候不要用
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>
用你在web.xml里配置的uri也就是
<%@ taglib uri="/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/struts-html.tld" prefix="html"%>
试试 参考技术C 你的jsp页面没有包含struts的页面标记.
要使用struts的标签应该在页面中加如
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>等语句,一般就这两个. 参考技术D formbean你没写或<html:text ><html:error>不在<html:form>中 第5个回答 2009-07-20 有2处错误 你看看改了是不是还出错
1: <form action="/Login">
应该是
<html:form action="/Login">
2: <html:text name="userName" />
应该是
<html:textproperty="userName" />
JSP学习 —— 开篇:JSP,servlet容器,Tomcat,servlet容器之间的关系
JSP(JAVA SERVER PAGE)的缩写,其本身就是servlet的简化,是一种动态网页标准,其特点是在HTML代码中嵌入JAVA代码,JSP标签或用户标签来生成网页。至于它为什么会出现,主要原因在于早期的servlet技术在编写代码时经常通篇性的写一大堆HTML标签,静态文本及文本格式等表现逻辑,其开发效率非常之低下;为了解决这种情况,便随之出现了JSP,其静态部分(包括表现逻辑,如图片,文字等等)全用HTML语言来编写,只有需要动态生成的逻辑才由嵌入的JAVA代码来实现。
说到最后,JSP其实还是一种对servlet的简化语言,所有的JSP页面最终都会被servlet容器编译成servlet类(其实就是java类),而至于什么是servlet容器,在此简单说下,仅从字面意思上看,它就是一种存放东西的容器,存放什么东西呢?存放维护和创建servlet相关的逻辑(懂C++的JSP新手注意:千万不要将这里的容器和C++中的VECTOR容器相混淆,这里的容器就是一个简单的存东西的容器)。而servlet的实现逻辑大体如下(5个方法):
- public void init(ServletConfig config) throws ServletException
- public void service(ServletRequest request, ServletResponse response)
- throws ServletException, java.io.IOException
- public void destroy()
- ServletConfig getServletConfig()
- public java.lang.String getServletInfo()
最主要的方法就是init,service和destroy,它们是servlet对象的生存周期,当一个页面被编译成servlet类,再进行实例化后,这个页面就开始了真正的生命周期,servlet容器会先加载init方法进行初始化,初始化后才可进行接收和相应客户端的消息,之后容器会再加载service,这部分就是真正相应客户端请求的实现逻辑,它实现客户端的请求响应,然后动态生成HTML页面显示到客户端;而destory方法则是在servlet生命周期即将结束时进行的清理工作。
而事实上,Tomcat在大多数情况下充当servlet的容器,也就是说:在写完JSP代码后进行第一次执行时,tomcat(servlet容器)先将JSP代码翻译成servlet类(java代码),然后实例化该类,再调用该类的init,service,destory等进行生命周期服务。当客户端再进行第二次访问请求时,此时就没有servlet容器的翻译这一步了,因为之前翻译的java代码会一直保存,以便于后面的访问不再进行翻译,可大大提高访问效率。所以,JSP页面在第一次被访问时,其所花费的时间是最长的。
以上是关于给出部分代码,jsp中出现unknown tag(html:text),unknown tag(html:error)等标签警告的主要内容,如果未能解决你的问题,请参考以下文章
解决容器运行 Go 代码 unknown time zone 的正确姿势
JSP学习 —— 开篇:JSP,servlet容器,Tomcat,servlet容器之间的关系
在JSP页面中 怎样实现点击按钮弹出选择框。能给出代码吗??