apache soap2中应用程序错误,不知是什么原因!还有一个,类似的!

wrffree 2003-04-03 11:35:29
出现如下提示:
Generated fault: Fault Code = SOAP-ENV:Server Fault String = java.lang.IllegalArgumentException: No Serializer found to serialize a 'com.wrox.jobresume.common.Resume' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.

那里出错了?请帮忙。谢谢。
...全文
5 点赞 收藏 5
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
DavidBone 2003-04-20
ding
回复
wrffree 2003-04-03
client端,服务器端没有报错。
回复
Norwaywoods 2003-04-03
你这是服务端报的还是Client报的错?
回复
wrffree 2003-04-03
如果com.wrox.jobresume.common.Resume这个类不存在,会出现这种情况吗?我写了这个类,但是怎么访问不清楚,可以解答一下打包后怎么访问?放到lib下就可以了吗?不清楚!我怀疑访问有问题。BeanSerializer这个方法我用org.apache.soap.encoding.soapenc.BeanSerializer已经在Type Mappings中设置了。
谢谢Norwaywoods!
回复
Norwaywoods 2003-04-03
应该是你没有注册负责序列化和反序列化com.wrox.jobresume.common.Resume的类:
注册的代码如下:
SOAPMappingRegistry smr = new SOAPMappingRegistry();
BeanSerializer serializer = new BeanSerializer();

smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName(xmlns, qName), soapClass, serializer, serializer);
call = new Call();
call.setSOAPMappingRegistry(smr);
call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
call.setTargetObjectURI(serviceName);

如果你的Resume类可以用现成的序列化类序列化,就像上面的代码,直接使用现成的BeanSerializer serializer = new BeanSerializer();如果没有现成的序列化类,就得自己写了。
回复
相关推荐
发帖
Java EE
创建于2007-09-28

6.6w+

社区成员

J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
申请成为版主
帖子事件
创建了帖子
2003-04-03 11:35
社区公告
暂无公告