【发布时间】:2017-05-17 21:37:06
【问题描述】:
我在这里看到了一些关于此的问题,但似乎没有人有答案。我正在从 Weblogic 和 Java 6 迁移到 Tomcat 和 Java 8,除了我们拥有的几个标签库之外,一切都进行得很顺利。
这是结构:
-src
-main
-java
-misckPkg
-tags.fav
- FavTagSupport.java
-webapp
-WEB-INF
-fav.tld
-faVer.jsp
来自 FavTagSupport.java 的代码 sn-p
abstract class FavTagSupport extends TagSupport {
protected FavEnum.type vType = null;
public FavTagSupport() {
super();
this.init();
}
public FavEnum.type getVType() {
return this.vType;
}
public void setVType(FavEnum.type vType) {
this.vType = vType;
}
来自 fav.tld 的代码 sn-p
<?xml version = '1.0' encoding = 'windows-1252'?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
<taglib>
<tlib-version>1.1</tlib-version>
<jsp-version>1.2</jsp-version>
<short-name>fav</short-name>
<uri>/WEB-INF/fav.tld</uri>
<tag>
<attribute>
<name>vType</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
来自 faVer.jsp 的代码 sn-p
<%@ taglib uri="/WEB-INF/fav.tld" prefix="f" %>
错误
org.apache.jasper.JasperException: /faVer.jsp (line: 166, column: 6) Unable to find setter method for attribute: vType
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:41)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:275)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:107)
org.apache.jasper.compiler.Generator$GenerateVisitor.evaluateAttribute(Generator.java:3003)
org.apache.jasper.compiler.Generator$GenerateVisitor.generateSetters(Generator.java:3223)
org.apache.jasper.compiler.Generator$GenerateVisitor.generateCustomStart(Generator.java:2404)
org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1901)
org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1536)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2376)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2428)
org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2434)
org.apache.jasper.compiler.Node$Root.accept(Node.java:464)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2376)
org.apache.jasper.compiler.Generator.generate(Generator.java:3646)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:250)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:356)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:336)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:323)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:585)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:363)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
miscPkg.LoggerFilter.doFilter(LoggerFilter.java:72)
编辑:我越是搞砸这个,很明显它没有找到我的 FavTagSupport 类。我将尝试移动它,但我不确定为什么会有所帮助
【问题讨论】: