Jsp 将函数导出到TLD

Jsp 将函数导出到TLD,jsp,taglib,Jsp,Taglib,我想将此函数导出到我的自定义函数.tld文件: package com.site.vo; public class Utils { public static String concat(String... values) { String out = ""; for (String value : values) { out.concat(value); } return out; }

我想将此函数导出到我的
自定义函数.tld
文件:

package com.site.vo;

public class Utils {
    public static String concat(String... values) {
        String out = "";

        for (String value : values) {
            out.concat(value);
        }

        return out;
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
        version="2.0">
<tlib-version>2.0</tlib-version>
<uri>/WEB-INF/custom-functions.tld</uri>
 <function>
  <description>Concatenate strings</description>
  <name>concat</name>
  <function-class>com.site.vo.Utils</function-class>
  <function-signature>java.lang.String concat(java.lang.String...)</function-signature>
 </function>
</taglib>
这是我的
自定义函数tld
文件:

package com.site.vo;

public class Utils {
    public static String concat(String... values) {
        String out = "";

        for (String value : values) {
            out.concat(value);
        }

        return out;
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
        version="2.0">
<tlib-version>2.0</tlib-version>
<uri>/WEB-INF/custom-functions.tld</uri>
 <function>
  <description>Concatenate strings</description>
  <name>concat</name>
  <function-class>com.site.vo.Utils</function-class>
  <function-signature>java.lang.String concat(java.lang.String...)</function-signature>
 </function>
</taglib>

2
/WEB-INF/custom-functions.tld
连接字符串
海螺
com.site.vo.Utils
java.lang.String concat(java.lang.String…)
函数签名
不起作用,我得到以下异常:

org.apache.jasper.JasperException:类java.lang.String。。。找不到TLD中为函数f:concat指定的方法签名。java.lang.String…

尝试了
java.lang.String[]
,但该参数只需要一个参数(一个列表,哦!)。我正在寻找正确的函数签名以导出具有多个参数的函数


提前谢谢你

您应该尝试转移到JavaEE6。然后,您可以使用新的标记库,使自己免于创建自己的标记库的噩梦

它允许您直接调用已定义bean上的方法