一个jsp参数传入action(struts2)取不到值的问题,值为null.跪求大神解答!急!急!

flyingMan_ZUO 2014-10-21 10:21:50
我想做一个删除的功能,但是id传入的值为空,不知道是怎么回事,他报的错误是“id to load is required for loading”,求大神解答!代码如下:
jsp:
<table cellspacing="0" cellpadding="0" class="TableStyle">

<!-- 表头-->
<thead>
<tr align="CENTER" valign="MIDDLE" id="TableTitle">
<td width="200px">岗位名称</td>
<td width="300px">岗位说明</td>
<td>相关操作</td>
</tr>
</thead>

<!--显示数据列表-->
<tbody id="TableData" class="dataContainer" datakey="roleList">

<s:iterator value="#roleList">
<tr class="TableDetail1 template">
<td>${name} </td>
<td>${description} </td>
<td>
<s:a action="role_delete?id=%{id}" onclick="return confirm('确定要删除吗?')">删除</s:a>
<s:a action="role_editUI?id=%{id}">修改</s:a>
<s:a action="role_setPrivilegeUI?id=%{id}">设置权限</s:a>
</td>
</tr>
</s:iterator>

</tbody>
</table>

action类的代码:[b][/b]
@Controller
@Scope("prototype")
public class RoleAction extends BaseAction<Role>{

private static final long serialVersionUID = 1L;

/**
* 系统管理岗位列表
*
* @return
* @throws Exception
*/
public String list() throws Exception {
List<Role> roleList = roleService.findAll();
// ServletActionContext.getRequest().setAttribute("roleList",roleList);
ActionContext.getContext().put("roleList", roleList);
return "list";
}

/**
* 系统岗位删除管理
*
* @return
* @throws Exception
*/
public String delete() {
try {
System.out.println(model.getId());
roleService.delete(model.getId());

} catch (Exception e) {

e.printStackTrace();
}

return "toList";
}。。。。。。。

BaseAction代码:
public abstract class BaseAction<T> extends ActionSupport implements ModelDriven<T> {

// =============== ModelDriven的支持 ==================

protected T model;

public BaseAction() {
try {
// 通过反射获取model的真实类型
ParameterizedType pt = (ParameterizedType) this.getClass().getGenericSuperclass();
Class<T> clazz = (Class<T>) pt.getActualTypeArguments()[0];
// 通过反射创建model的实例
model = clazz.newInstance();
} catch (Exception e) {
throw new RuntimeException(e);
}
}

public T getModel() {
return model;
}

// =============== Service实例的声明 ==================
@Resource
protected RoleService roleService;
。。。。。

错误信息:

null 这个是id传入的值
null
java.lang.IllegalArgumentException: id to load is required for loading
at org.hibernate.event.LoadEvent.<init>(LoadEvent.java:89)
at org.hibernate.event.LoadEvent.<init>(LoadEvent.java:61)
at org.hibernate.impl.SessionImpl.get(SessionImpl.java:1002)
at org.hibernate.impl.SessionImpl.get(SessionImpl.java:998)
at com.spg.oa.base.DaoSupportImpl.findById(DaoSupportImpl.java:75)
at com.spg.oa.base.DaoSupportImpl.delete(DaoSupportImpl.java:52)
at com.spg.oa.service.impl.RoleServiceImpl.delete(RoleServiceImpl.java:42)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy12.delete(Unknown Source)
...全文
328 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lc11422302 2014-10-22
  • 打赏
  • 举报
回复
引用 2 楼 flyingMan_ZUO 的回复:
[quote=引用 1 楼 lc11422302 的回复:] 你用的struts框架怎么action类配置@controller呢 应该配置@Action jsp页面你确定取得到id值 你换用id=%{#id}
action类配置@controller没有错误,[/quote] 你用的是什么框架 。那就是你前端值传错了。语法没有弄对。
lc11422302 2014-10-21
  • 打赏
  • 举报
回复
你用的struts框架怎么action类配置@controller呢 应该配置@Action jsp页面你确定取得到id值 你换用id=%{#id}
flyingMan_ZUO 2014-10-21
  • 打赏
  • 举报
回复
引用 1 楼 lc11422302 的回复:
你用的struts框架怎么action类配置@controller呢 应该配置@Action jsp页面你确定取得到id值 你换用id=%{#id}
action类配置@controller没有错误,

10,612

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 其他
社区管理员
  • 其他
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧