Java 在taglib中声明签名中包含内部类的函数
假设我想声明一个具有以下java签名的函数:Java 在taglib中声明签名中包含内部类的函数,java,jsp,taglib,Java,Jsp,Taglib,假设我想声明一个具有以下java签名的函数: public static String getStatusString(ArticleAndStatus aas) { //... } 而ArticleAndStatus是org.example.Outer的内部类 我如何在标记库中声明它?这两者都失败了: <function> ... <function-signature>java.lang.String getStatusStri
public static String getStatusString(ArticleAndStatus aas) {
//...
}
而ArticleAndStatus
是org.example.Outer
的内部类
我如何在标记库中声明它?这两者都失败了:
<function>
...
<function-signature>java.lang.String
getStatusString(org.example.Outer.ArticleAndStatus)
...
</function>
...
java.lang.String
getStatusString(org.example.Outer.ArticleAndStatus)
...
...
java.lang.String
getStatusString(org.example.Outer$ArticleAndStatus)
...
org.example.Outer.ArticleAndStatus
我在使用公共静态内部类时遇到了同样的问题。我想说语法就是点。这可能是org.apache.jasper.compiler中的一个bug。
您不能创建一个让内部类实现的虚拟接口吗,并将其作为方法参数?不起作用:org.apache.jasper.jaspereException:PWC6300:找不到TLD中为函数happy:getStatusString的方法签名中指定的类org.example.Outer.ArticleAndStatus。org.example.Outer.ArticleAndStatus很可能org.example.Outer.ArticleAndStatus不是公共的。但是,从这个问题出发,没有什么可以肯定的。发布代码,了解外部的定义,以及如何在其中定义Article和Status。就我所看到的,我怀疑你没有公开内部阶级?决议是什么?确定了一个bug?
<function>
...
<function-signature>java.lang.String
getStatusString(org.example.Outer$ArticleAndStatus)
...
</function>