package com.hollycrm.hollyv8.zsptest.zsp.service.impl;import ...
public class UserManagerServiceImpl implements UserManagerService {
private UserManagerDao userDao;
public void setUserManagerDao(UserManagerDao userDao){
this.userDao = userDao ;
}
public UserManagerDao getUserManagerDao(){
return this.userDao ;
}
public void addUser(UserInfo user) { this.userDao.add(user) ; } public void deleteUser(String account) {
// TODO Auto-generated method stub
this.userDao.delete(account) ;
}
public UserInfo getUser(String account) {
// TODO Auto-generated method stub
return this.userDao.getUserInfo(account);
}
public UserInfo getUser(String name, String account) {
// TODO Auto-generated method stub
List<UserInfo> list = this.userDao.getUserInfo(name, account);
if(list != null&&list.size() > 0){
return list.get(0);
}else{
return null;
}
}
public List<UserInfo> listUser() {
// TODO Auto-generated method stub
return this.userDao.getUserInfos();
}
public void saveOrUpdate(UserInfo user) {
// TODO Auto-generated method stub
this.userDao.saveOrUpdate(user);
}
public UserInfo query(){
return this.userDao.query();
} }
com.hollycrm.hollyv8.zsptest.zsp.service.impl.UserManagerServiceImpl cannot be cast to java.util.Collection
大家帮我看看这是怎么回事?
public class UserManagerServiceImpl implements UserManagerService {
private UserManagerDao userDao;
public void setUserManagerDao(UserManagerDao userDao){
this.userDao = userDao ;
}
public UserManagerDao getUserManagerDao(){
return this.userDao ;
}
public void addUser(UserInfo user) { this.userDao.add(user) ; } public void deleteUser(String account) {
// TODO Auto-generated method stub
this.userDao.delete(account) ;
}
public UserInfo getUser(String account) {
// TODO Auto-generated method stub
return this.userDao.getUserInfo(account);
}
public UserInfo getUser(String name, String account) {
// TODO Auto-generated method stub
List<UserInfo> list = this.userDao.getUserInfo(name, account);
if(list != null&&list.size() > 0){
return list.get(0);
}else{
return null;
}
}
public List<UserInfo> listUser() {
// TODO Auto-generated method stub
return this.userDao.getUserInfos();
}
public void saveOrUpdate(UserInfo user) {
// TODO Auto-generated method stub
this.userDao.saveOrUpdate(user);
}
public UserInfo query(){
return this.userDao.query();
} }
com.hollycrm.hollyv8.zsptest.zsp.service.impl.UserManagerServiceImpl cannot be cast to java.util.Collection
大家帮我看看这是怎么回事?
解决方案 »
- 救急,我认为是难点,xmlhhtp,请过目
- iText生成PDF表格中,把单元格的边框变成虚线
- 求:获得服务器SESSION的IP,在线时间,以及关闭SESSION的JSP页面
- 这段代码什么功能啊? 急!
- 朋友给了个Jsp的程序,现在不知道怎么运行
- static 问题,噢对了在java中应该是final?
- 怎样执行Bean里的函数?
- 请问怎么编译jspsmart的.java文件啊?
- JSP最好的开发工具是什么啊?难道要用jbuilder+dreamweaver 吗? 请大师门指点迷津!
- 关于Struts2+Hibernate+Spring整合的sessionFactory的close问题
- 一连接项目就报错Servlet.service() for servlet jsp threw exception
- 链表和动态数组的问题
倒是发现你的注入怪怪的。public void setUserManagerDao(UserManagerDao userDao){
this.userDao = userDao ;
}
public UserManagerDao getUserManagerDao(){
return this.userDao ;
}
应该是想用setter注入吧,但是你的方法名为什么不是setUserDao,却是setUserManagerDao,你这样如何注入?
我是在打开jsp页面的时候报这个错误的。
你用setter注入, private UserManagerDao userDao;必须是setUserDao。你jsp中如何写的,贴一下。
<%@ page language="java" import="java.util.*,com.hollycrm.hollyv8.constant.*" pageEncoding="GBK"%>
<%@ taglib prefix="view" uri="/WEB-INF/hollycrm-view.tld" %>
<%@ taglib prefix="sv" uri="/WEB-INF/hollycrm-services.tld" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%@ page import="java.util.ArrayList"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html>
<head><title>人员查询系统</title>
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath() %>/framework/css/style.css">
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath() %>/framework/css/hollycrm.css">
<script language="javascript" src="<%=request.getContextPath() %>/framework/js/util.js"></script>
<script src="<%=request.getContextPath() %>/framework/js/ScrollGrid.js"></script>
<script src="<%=request.getContextPath() %>/framework/js/leftMenu.js"></script>
<script type="text/javascript" src="<%=request.getContextPath() %>/frame/js/frame.js" charset="gb2312"></script>
<script type="text/javascript">
function submitform(){
with(document.getElementById('queryallform')){
action="ZspAction";
method="get";
submit();
}
}
</script>
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
<form action="ZspAction!query.action">
<view:formtable>
<view:formtitle name="人员查询">
<view:buttons>
<view:button name="查 询" type="submit" onclick="submitform();" />
<view:button name="重 置" type="reset"/>
</view:buttons>
</view:formtitle>
<view:formCondition>
<view:formtr>
<view:formlabel text="账 号:"></view:formlabel>
<view:forminput><input name="account" type="text"> </view:forminput>
<view:formlabel text="姓 名:" ></view:formlabel>
<view:forminput><INPUT name="name" type="text"> </view:forminput>
</view:formtr>
<view:formtr>
<view:formlabel text="生日:"></view:formlabel>
<view:forminput width="20%"><view:datepicker name="stateHireDate"/></view:forminput>
<view:formlabel text="性别:" ></view:formlabel>
<view:forminput>
男<input type="radio" checked="checked" name="sex" value="b" />
女<input type="radio" name="sex" value="g" /><br />
<!--<sv:codeMap name="user.status" codeType="<%=CodeType.USERSTATE%>" ></sv:codeMap>-->
</view:forminput>
</view:formtr>
</view:formCondition>
</view:formtable>
</form>
</body>
</html>showresult.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ page import="java.util.ArrayList"%>
<%@ taglib prefix="view" uri="/WEB-INF/hollycrm-view.tld" %>
<%@ taglib prefix="sv" uri="/WEB-INF/hollycrm-services.tld" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%@ page import="com.hollycrm.framework.util.ToFormQueryCondition"%>
<%@page import="com.hollycrm.hollyv8.constant.CodeType"%>
<%@page import="com.hollycrm.hollyv8.zsptest.zsp.action.ZspAction"%>
<%@ page import="com.hollycrm.hollyv8.zsptest.zsp.vo.UserInfo"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<TITLE>人员增删改查</TITLE>
</head>
<body>
<table>
<tr>
<td>账号</td>
<td>姓名</td>
<td>生日</td>
<td>性别</td>
</tr>
<s:iterator value="users" >
<tr>
<td><s:property value="account"/></td>
<td><s:property value="name"/></td>
<td><s:property value="birthday"/></td>
<td><s:property value="sex"/></td>
<td> <s:a href="ZspAction!add.action">增加</s:a></td>
<td><a href="ZspAction!update?id=<s:property value="account"/>">修改</a>
<a href="ZspAction!delete?id=<s:property value="account"/>">删除</a></td>
</tr>
</s:iterator>
</table>
</body>
</html>
这是结果显示页面,我刚才说错了,如果在zsp_search.jsp页面中什么都不输入,直接点查询,没有错误,如果输入点东西,就会报上面的错误。
强制转换呢?List<UserInfo> list =(UserInfo) this.userDao.getUserInfo(name, account);
import java.util.Collection;
import java.util.List;import javax.servlet.http.HttpServletRequest;import org.apache.log4j.Logger;
import org.apache.struts2.interceptor.ServletRequestAware;import com.hollycrm.framework.DefaultBeanFactory;
import com.hollycrm.hollyv8.organization.user.action.UserAction;
import com.hollycrm.hollyv8.zsptest.zsp.service.UserManagerService;
import com.hollycrm.hollyv8.zsptest.zsp.vo.UserInfo;
import com.opensymphony.xwork2.ActionSupport;public class ZspAction extends ActionSupport implements ServletRequestAware{
private HttpServletRequest request;
private static final long serialVersionUID = 8729730792551753250L;
private static Logger logger = Logger.getLogger(UserAction.class);
public void setServletRequest(HttpServletRequest request) {
this.request=request;
}
public String ZspAction(){
return "list_success";
}
private UserManagerService userManager;
private List<UserInfo> users;
private UserInfo user;
// private String id;
private String account;
private String name;
private String birthday;
private String sex;
private String[] accounts;
public String[] getAccounts() {
return accounts;
} public void setAccounts(String[] accounts) {
this.accounts = accounts;
} public UserManagerService getUserManager() {
return userManager;
} public void setUserManager(UserManagerService userManager) {
this.userManager = userManager;
} public List<UserInfo> getUsers() {
return users;
} public void setUsers(List<UserInfo> users) {
this.users = users;
} public UserInfo getUser() {
return user;
} public void setUser(UserInfo user) {
this.user = user;
} /*public String getId() {
return id;
} public void setId(String id) {
this.id = id;
}*/ public String getAccount() {
return account;
} public void setAccount(String account) {
this.account = account;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getBirthday() {
return birthday;
} public void setBirthday(String birthday) {
this.birthday = birthday;
} public String getSex() {
return sex;
} public void setSex(String sex) {
this.sex = sex;
}
public String query1(){
users=new ArrayList<UserInfo>();
UserInfo u=new UserInfo();
u.setAccount("zhangpf");
u.setName("zhangpengfei");
u.setBirthday("1981-12-02");
u.setSex("m");
users.add(u);
return "list1_success";
}
public String query(){
users=new ArrayList<UserInfo>();
UserManagerService b=(UserManagerService) DefaultBeanFactory.getBean("UserManagerService");
if(b.getUser(account)!=null){
users.addAll((Collection<? extends UserInfo>) b);
}
return "list1_success";
}
public String add() {
if (this.userManager.getUser(user.getName(),user.getAccount()) != null) {
return INPUT;
} else {
this.userManager.addUser(user);
return "success_add";
} } public String list() {
this.users = this.userManager.listUser();
if (this.users.size() > 0) {
return "list1_success";
// return SUCCESS;
} else {
return INPUT;
}
} public String delete() {
if (this.account !="0" ) {
this.userManager.deleteUser(this.account);
} else {
if (accounts.length > 0) {
for (String account : accounts) {
this.userManager.deleteUser(account);
}
}
}
if (this.userManager.listUser().size() > 0) {
return "list1_success";
// return SUCCESS;
} else {
return INPUT;
}
}
public String saveOrUpdate() { this.userManager.saveOrUpdate(user);
return SUCCESS; } public String edit() { this.user = this.userManager.getUser(account);
return "success_edit"; } public String save() {
String account = this.user.getAccount();
user = this.userManager.getUser(account);
return SUCCESS;
} public String update() { String account = this.user.getAccount();
this.userManager.saveOrUpdate(user);
//return SUCCESS;
return "success_update";
} public String login() {
UserInfo emp = this.userManager.getUser(name, account);
List list = this.userManager.listUser();
if (null != emp) {
return SUCCESS;
} else {
if (list.size() > 0) {
return INPUT;
} else {
return ERROR;
}
}
}
}
users=new ArrayList<UserInfo>();
UserManagerService b=(UserManagerService) DefaultBeanFactory.getBean("UserManagerService");
if(b.getUser(account)!=null){
users.addAll((Collection<? extends UserInfo>) b);
}
return "list1_success";
}
users.addAll((Collection<? extends UserInfo>) b);
這一句有問題。
users.addAll((Collection<? extends UserInfo>) b);
users=new ArrayList<UserInfo>();
UserManagerService b=(UserManagerService) DefaultBeanFactory.getBean("UserManagerService");
if(b.getUser(account)!=null){
users.addAll((Collection<? extends UserInfo>) b);
}
return "list1_success";
}
这一段要怎么写呢?我试了半天都不行,我是新手,请大家帮忙。
怎麽改?你的整個IOC都有問題。
你的b是UserManagerService類型,
怎麽可以強制轉換為(Collection<? extends UserInfo>)?
users=new ArrayList<UserInfo>();
UserManagerService b= (UserManagerService) DefaultBeanFactory.getBean("UserManagerService");
b.addUser(user);
return "list1_success";
}
我把它改成上面这样,倒是不报那个错误了,但是报另外一个错误attempt to create saveOrUpdate event with null entity我真是崭新崭新的新手,求求大家帮帮我,我快疯啦!!
<tr>
<td><s:property value="account"/></td>
<td><s:property value="name"/></td>
<td><s:property value="birthday"/></td>
<td><s:property value="sex"/></td>
<td> <s:a href="ZspAction!add.action">增加</s:a></td>
<td><a href="ZspAction!update?id=<s:property value="account"/>">修改</a>
<a href="ZspAction!delete?id=<s:property value="account"/>">删除</a></td>
</tr>
</s:iterator>
在action中,可以用request.setAttribute("users",users);存起來