关于批量分页查询快速开发 的问题

05-12-14 aquaregia
我在我的系统中加入了Jdon框架的批量查询,在运行时报错

java.lang.NullPointerException

at com.jdon.controller.WebAppUtil.getComponentInstance(WebAppUtil.java:103)

at com.jdon.strutsutil.ModelListAction.execute(ModelListAction.java:56)

我想知道在ModelListAction类中

modelManager = (ModelManager)WebAppUtil.getComponentInstance(ComponentKeys.MODEL_MANAGER, sc);

是不是需要在哪个配置文件中加内容啊,请尽快回复,我在线等!!

banq
2005-12-14 14:17
你的应用一般是调用WebAppUtil的getService方法。

getComponentInstance方法是适合你在Jdon框架上封建自己的框架组件时从微容器调用用。

要使WebAppUtil的getService有效,必须在jdonframework.xml中配置如下:

 <pojoService name="testService" class="com.jdon.framework.test.service.TestServicePOJOImp"/>

WebAppUtil.getService("testService");

aquaregia
2005-12-14 16:41
我的程序里是这样的:

StartService startService = (StartService) WebAppUtil.getService("startService", request);

jdonframework_iBATIS.xml中这么写的:

<services><pojoService name="startService" class="com.cn.project3.service.StartService"/></services>

结果报错说Servlet.service() for servlet action threw exception

java.lang.ClassCastException: $Proxy0

at com.cn.project3.action.PicListAction.getPageIterator(PicListAction.java:20)

不明白WebAppUtil.getService 在做类型转换的时候有什么要求

aquaregia
2005-12-14 16:53
banq

你有MSN吗,我想直接问你,这样太帖子太慢了,我调试的时候总有问题

banq
2005-12-15 09:52

ClassCastException 问题是你的Model主键可能和数据表主键类型不一致。注意:Model的主键类型必须和数据表主键类型一致。如:

数据表userId字段是varchar或char 对应的UserTest类的userId字段类型是String;

数据表userId字段是INT; 对应的UserTest类的userId字段类型是Integer;

数据表userId字段是BIGINT;对应的UserTest类的userId字段类型是Long

猜你喜欢