- bibiye
- 等级:
- 文章: 11
- 积分: 302
|
程序分为dao、Service、XFire层,不用XFire层时程序测试通过,加上XFire后,出现如下异常,疑为XFire不支持类的泛型。
异常 代码
- Exception in thread "Thread-2" org.codehaus.xfire.XFireRuntimeException: Couldn't write stream.. Nested exception is org.codehaus.xfire.XFireRuntimeException: Couldn't get property {http:
- org.codehaus.xfire.XFireRuntimeException: Couldn't get property {http:
- java.lang.reflect.InvocationTargetException
- at sun.reflect.GeneratedMethodAccessor12.invoke(Unknown Source)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
- at java.lang.reflect.Method.invoke(Unknown Source)
- at org.codehaus.xfire.aegis.type.basic.BeanType.readProperty(BeanType.java:467)
-
- ……
- ……
-
- Caused by: java.lang.StackOverflowError
- at java.security.AccessController.doPrivileged(Native Method)
- at java.lang.Class.getClasses(Unknown Source)
- at sun.reflect.GeneratedMethodAccessor12.invoke(Unknown Source)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
- at java.lang.reflect.Method.invoke(Unknown Source)
- at org.codehaus.xfire.aegis.type.basic.BeanType.readProperty(BeanType.java:467)
- at org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:402)
- at org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:417)
- …………
- …………
- at org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:417)
- 2007-10-15 21:31:14,953 ERROR [org.codehaus.xfire.service.binding.PostInvocationHandler] -
- 2007-10-15 21:31:14,953 ERROR [org.codehaus.xfire.handler.DefaultFaultHandler] -
- org.codehaus.xfire.XFireRuntimeException: Couldn't read stream.. Nested exception is com.ctc.wstx.exc.WstxIOException: Write end dead
- com.ctc.wstx.exc.WstxIOException: Write end dead
- at com.ctc.wstx.sr.StreamScanner.throwFromIOE(StreamScanner.java:650)
- at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1071)
- at org.codehaus.xfire.transport.local.LocalChannel.sendViaNewChannel(LocalChannel.java:175)
- at org.codehaus.xfire.transport.local.LocalChannel.send(LocalChannel.java:75)
- at org.codehaus.xfire.handler.OutMessageSender.invoke(OutMessageSender.java:26)
- …………
- …………
关键问题出在Page对象。
java 代码
如果为Page对象加上aegis则程序正常运行。
Page.aegis.xml
- <!---->xml version="1.0" encoding="UTF-8"?>
- <mappings xmlns:my="http://my.bjvsp.tongtech.com">
- <mapping name="my:User">
- <property name="list"
- componentType="cn.cetelem.accounting.model.CsiAcctPmtHistory" />
- mapping>
- mappings>
XFire的版本,我试过1.2.2和1.2.6。 搞了一天,还没找到答案
PS -- 在codehaus上也找到类似的: jira.codehaus.org/browse/XFIRE-1002
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
返回顶楼 |
|
|
- bibiye
- 等级:
- 文章: 11
- 积分: 302
|
目前貌似无法解决!
只好:
1.加配置文件;
2.Page构造放到client端。
希望能听到不同的声音
|
返回顶楼 |
|
|
- peigen
- 等级: 初级会员
- 性别:
- 文章: 35
- 积分: 80
- 来自: 杭州
|
1.2以上支持泛型
我仍用了aegis配置文件
|
返回顶楼 |
|
|
- 小笨熊
- 等级: 初级会员
- 性别:
- 文章: 7
- 积分: 30
- 来自: 西安
|
建议先做一个简单的例子,我用的范型是支持的,你再好好找找!
|
返回顶楼 |
|
|