急急急!在线等待:Tag Lib问题(100分)

  • 主题发起人 主题发起人 hotsoup
  • 开始时间 开始时间
H

hotsoup

Unregistered / Unconfirmed
GUEST, unregistred user!
定义了一个tag 类在jsp中使用,想要动态给标签属性付值:
<tags:WorkType name='sel_worktype' width='50' focus="<%out.print(jobengine.getWorkType());%>"/>
TLD文件中的 <rtexprvalue>true</rtexprvalue>已经设置,单后台看属性值仍为"<%out.print(jobengine.getWorkType());%>",请问是何原因。在下用的是TOMCAT4199。另外将下面这段话加入TOMCAT的WEB.XML也报错,所以只好写死在jsp中:
<taglib>
<taglib-uri>AllTags</taglib-uri>
<taglib-location>/WEB-INF/classes/com/intacpurun/css/system/tags/tags.tld</taglib-location>
</taglib>
 
版主来帮帮吧,怎么没人啊!
 
实在没有看明白你要做什么:(((
我把我的例子帖出来吧:
mt.tld
<?xml version="1.0" encoding="GB2312"?>
<!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.0</tlib-version>
<jsp-version>1.3</jsp-version>
<short-name>mt</short-name>
<tag>
<name>time</name>
<tag-class>tagtest.mytag</tag-class>
<description>我自己定制的第一个标签</description>
</tag>
</taglib>
web.xml里的描述:

<taglib>
<taglib-uri>http://www.delphibbs.com/lnboy/mt</taglib-uri>
<taglib-location>/WEB-INF/mt.tld</taglib-location>
</taglib>
<%@ page contentType="text/html;
charset=GBK" %>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c_rt" %>
<%@ taglib uri="http://www.delphibbs.com/lnboy/mt" prefix="mt" %>
<jsp:useBean id="date" scope="application" class="tagtest.mytag" />
<html>
<head>
<title>
test
</title>
</head>
<body bgcolor="#ffffff">
<h1>JBuilder Generated JSP</h1>
<c:out value="tagtest ${date.str}" escapeXml="false"/>
<c:set var="testaa" value="aaaaaaa" />
<c:out value="${param.test}"/>
这个是我的标签<mt:time/>
</body>
</html>

据猜测,
你的那句话应该写成focus="${jobengine.workType}"
因为应该使用EL。
 
少个等号吧?
应该是:
focus="<%=out.print(jobengine.getWorkType());%>"
 
Tag lib支持这种赋值方式可能有些麻烦,java带的标准tag也只有少部分支持这种赋值方式
 
给属性赋值,在标记处理程序就如bean的setXXX()方法
而focus="<%out.print(jobengine.getWorkType());%>"/>应该是写法错误
应该是个表达式才对 focus="<%=out.print(jobengine.getWorkType()) %>" />
楼主没有给出自己的标记处理程序写法,错误原因及个数不可预知
2003年的问题,现在回答不知道给不给分,揭不揭贴? :(
 
后退
顶部