天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 2834|回复: 10

外部调用webservice出错

[复制链接]
ykse01 发表于 2011-12-8 15:27:35 | 显示全部楼层 |阅读模式
本帖最后由 shary 于 2011-12-14 11:54 编辑

调用报错org.xml.sax.SAXException: No deserializer for {http://xml.apache.org/xml-soap}mapItem

我在vs2008类库中加入web引用
然后具体代码
            DataSet ds = GetEquipment();
            string EquipmentNo = "";
            string EquipmentName = "";
            WebReference.DocumentServiceService dse = new DocumentServiceService
            {
                Url = "http://127.0.0.1:8080/obpm/services/DocumentService?wsdl"
            };
            WebReference.Map map = new Map { item = new mapItem[2] };
            const string formName = "DC_ATTRIBUTION";
            const string applicationId = "11e0-cc5f-2ad97aac-8c64-fd419902251c";
            foreach (DataRow dataRow in ds.Tables[0].Rows)
            {
                EquipmentNo = dataRow["EquipmentNo"].ToString();
                EquipmentName = dataRow["EquipmentName"].ToString();

                map.item[0] = new mapItem {key = "ART_ID", value = EquipmentNo};
                map.item[1] = new mapItem {key = "ART_NAME", value = EquipmentName};

                dse.createDocumentByDomainUser(formName, map, "XML", applicationId);
            }

WebReference为引入的文件夹命名 dse.createDocumentByDomainUser(formName, map, "XML", applicationId);报错
shary 发表于 2011-12-8 15:57:18 | 显示全部楼层
您好,为什么您这个WebReference.DocumentServiceService dse = new DocumentServiceService
这届这么new了。WebReference.DocumentServiceService 这个是什么类?
 楼主| ykse01 发表于 2011-12-8 16:02:10 | 显示全部楼层

web引用帮我转换的类

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为天翎用户

x
shary 发表于 2011-12-8 16:08:27 | 显示全部楼层
您好,确定有这个方法不?前面的代码都没问题。执行到dse.createDocumentByDomainUser(formName, map, "XML", applicationId);
这里就出问题了?
shary 发表于 2011-12-8 16:10:23 | 显示全部楼层
我在平台DocumentServiceService.java这个类里没有看到这个方法哦
 楼主| ykse01 发表于 2011-12-8 16:13:17 | 显示全部楼层
这个是asp.net里添加web引用后出现的,你们那边有没人用vs2008的,试下添加引用就知道了
shary 发表于 2011-12-8 16:15:04 | 显示全部楼层
.我们的webserver接口对应的这个类没有这个方法

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为天翎用户

x
 楼主| ykse01 发表于 2011-12-8 16:19:44 | 显示全部楼层
你接口下面包含了这些方法……你不是继承了接口嘛
标明是mapitem soap出错喔,是不是mapitem有问题呀
你们有用vs调用过的例子嘛?
 楼主| ykse01 发表于 2011-12-8 16:25:47 | 显示全部楼层
我用那个方法没错的,测试
public void RemoveDoc()
        {
            string docId = "11e0-cca5-f4ffce46-8c64-fd419902251c";
            string appId = "11e0-cc5f-2ad97aac-8c64-fd419902251c";
            WebReference.DocumentServiceService dse = new DocumentServiceService
            {
                Url = "http://127.0.0.1:8080/obpm/services/DocumentService?wsdl"
            };

            dse.removeDocument(docId, appId);
        }
成功!我觉得是mapitem的问题,求解决啊
 楼主| ykse01 发表于 2011-12-8 17:44:23 | 显示全部楼层
是不是在java端的webservice中map的定义和createDocumentByDomainUser的方法不在一个命名空间?那样的话外部调用不知道怎么解决?总返回错误!请开发人员解答下有什么处理方法?

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-12 17:38

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表