在我们的项目中,我们有一个类似下面的taglib,在weblogic中完全正常。目前我们正在迁移到我们面临例外的webshere
Error failed to locate setter method for attribute collection in tag class
标签文件如下:
<tag>
<name>list</name>
<tagclass>com.abc.jsp.taglib.list.ListTag</tagclass>
<bodycontent>JSP</bodycontent>
<info>
A tag that implements a list
</info>
<!-- no default -->
<attribute>
<name>collection</name>
<required>true</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
//more attributes go here
</tag>
相应的java类有像这样的getter和setter
/**
* gets the items to iterate
*/
public Object[] getCollection() {
return collection;
}
/**
* sets the collection to iterate over
*/
public void setCollection(String collectionName) {
Collection colxn = (Collection) pageContext.getRequest().getAttribute(
collectionName);
if (colxn != null) {
collection = colxn.toArray();
}
}
网上的一些解决方案是将SDK1.6升级到SR6中的以下网址
https://issues.liferay.com/browse/LPS-10741
任何人都可以帮助我们。这个问题有解决方法吗?