java.lang.IllegalAccessException

此段代码如果用struts2.*+AJAX:

public class LoginAction extends ActionSupport {
private Siben sb = null;
private ILogin loginService = null;
private ICook cook = null;
private boolean bool = false;// 控制前台的Bool

/**
* 检查是否存在此用户名,如存在则进入主页,不存在重新登录
*
* @return String
* @throws Exception
*/
public String checkUser() throws Exception {

System.out.println(sb.getAccount());
cook = new CookServiceImpl();
if (loginService.hasUser(sb)) {
if (bool == true) {
HttpServletResponse res = ServletActionContext.getResponse();
cook.addCook(res, "account", sb.getAccount());
cook.addCook(res, "password", sb.getPassword());
}
bool = true;
return this.SUCCESS;
}
bool = false;
return this.ERROR;
}

/**
* 检查Cook,如果存在此cook,则进行自动登录,否则跳到登录页
*
* @return String
*/
public String autoLogin() {
HttpServletRequest req = ServletActionContext.getRequest();
bool = false;
if (cook.getCook(req, "account") == null
|| cook.getCook(req, "password") == null)
return this.ERROR;
String account = cook.getCook(req, "account").getValue();// 从COOK获得帐号
String password = cook.getCook(req, "password").getValue();// 从Cook获处密码
sb = new Siben();
sb.setAccount(account);
sb.setPassword(password);
try {
checkUser();// 进行自动登录
bool = true;
return this.SUCCESS;
} catch (Exception e) {
bool = false;
return this.ERROR;
}
}

public ILogin getLoginService() {
return loginService;
}

public void setLoginService(ILogin loginService) {
this.loginService = loginService;
}

public Siben getSb() {
return sb;
}

public void setSb(Siben sb) {
this.sb = sb;
}

public boolean isBool() {
return bool;
}

public void setBool(boolean bool) {
this.bool = bool;
}

public ICook getCook() {
return cook;
}

public void setCook(ICook cook) {
this.cook = cook;
}

}
有可能会出现如下异常:

java.lang.IllegalAccessException: Class com.googlecode.jsonplugin.JSONWriter can not access a member of class org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper with modifiers "public"

正确改法如下:

将上面的代码注思掉以下几部分即可:

/*
public ILogin getLoginService() {
return loginService;
}
*/

/*
public ICook getCook() {
return cook;
}
*/

由此可见,此需注掉其getXXX()方法即可
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值