【发布时间】:2011-09-19 11:32:45
【问题描述】:
我使用 tomcat 7 在 Eclipse 中创建了一个动态 web 项目(我使用了动态 web 模块版本 3.0 和 JSF 2.0)。现在,当我不得不从 tomcat 7 切换到 JBoss 4.2.1 时,似乎存在某种兼容性问题,因为 JBoss 不允许动态 Web 模块版本 3.0 而是 2.5 和 JSF 1.2 而不是我使用的 JSF 3.0。因此,当我尝试在将使用 JBoss 的新项目中部署我的旧项目时,出现了这个奇怪的错误:
我有这个实现 2 个接口(@987654322@ 和 CategoryManageable)的 DBManager 类。在UserManageable 我有一个方法void doInsert(User user)、doUpdate(User) 等,但是eclipse 告诉我有一个错误并提供了2 个解决方案:第一个删除@Override 注释,第二个在另一个界面中创建doInsert(User) .如果我删除其他接口,它只会为我提供第一个解决方案。
这是类和接口。
import jsfDP.interfaces.CategoryManageable;
import jsfDP.interfaces.UserManageable;
public class DBManager implements UserManageable, CategoryManageable{
@Override
public void doInsert(User user) {
// here I get
// The method doInsert(User) of type DBManager must override a superclass method
// 2 quick fixes available:
// Create doInsert() in supertype 'CategoryManageable'
// Remove '@Override' annotation
....
}
....
}
接口UserManageable:
import java.util.List;
import jsfDP.beans.User;
public interface UserManageable {
void doInsert(User user);
void doUpdate(User user);
void doDelete(User user);
User getUserById(int userId);
List<Integer> getUserIds();
List<User> getAllUsersInList();
}
接口CategoryManageable:
package jsfDP.interfaces;
import java.util.List;
import jsfDP.beans.Category;
public interface CategoryManageable {
List<Category> getCagegories();
}
【问题讨论】:
-
P.S.我将 jsf 1.2 库添加到 WEB-INF/lib 但仍然没有...
-
这是一个相当大的退步,必须从 Tomcat 7 转到 JBoss 4.x
-
是的……但我必须这样做:(
标签: java jsf-2 tomcat7 jsf-1.2 jboss-4.2.x