我想創建一個自定義標籤庫,但在處理程序類中我想要具有整數屬性。JSP自定義標籤屬性類型整數
在TLD文件中,我有以下代碼:
<tag>
<name>circle</name>
<tag-class>draw.Circle</tag-class>
<body-content>jsp</body-content>
<attribute>
<name>x</name>
<required>true</required>
</attribute>
</tag>
也有其他的整數屬性,但這個例子是有關的人。
處理程序類,就目前看起來是這樣的:
public class Circle extends TagSupport{
private Integer x;
public Integer getX() {
return x;
}
public void setX(String x) {
this.x = Integer.parseInt(x);
System.out.println("Set x");
}
}
我沒有指定的TLD文件的屬性類型和默認應該是字符串。雖然我得到這樣一個錯誤:
Unable to find setter method for attribute: x
我自己也嘗試修改屬性類型:<type>java.lang.Integer</type>
和setter方法來:
public void setX(int x) {
}
我也得到了同樣的錯誤。
我應該如何定義tld文件中的屬性以及處理程序類中的setter,以便我不會遇到setter錯誤?
如果將getter返回類型更改爲String,會發生什麼情況? –
同樣的錯誤:x沒有setter。 –
所有類型匹配(getter返回,setter參數,輸入TLD)? –