java 调用 .net webservice 去掉方法里参数的命名空间前缀

背景:这段时间对接医院webservice接口,java调用C#写的接口,大家都按照医院信息平台交互规范总则来开发。

问题:规定了报文的命名空间和签名(方法名及参数)。

    /// <summary>    
    /// HIPService 的摘要说明 
    /// </summary> 
    [WebService(Namespace = "urn:hl7-org:v3")]
    //[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。 
    // [System.Web.Script.Services.ScriptService]
    public class HIPService : System.Web.Services.WebService
    {
        [SoapRpcMethod(Use = SoapBindingUse.Literal)]
        [WebMethod(Description = "平台对接(科室、人员)")]
        public string HIPMessageServer(string action, string message)
        {
             return "";
        }   
     }

    使用VS创建默认的服务,修改默认的Namspace命名空间,修改后使用soupui会发现请求报文的方法名及参数有命名空间前缀,然后再使用SoapRpcMethod去掉。

   默认创建服务的报文:

      

   修改之后的请求报文:

          

 

posted @ 2021-05-21 16:19  超级驼鹿  阅读(431)  评论(0编辑  收藏  举报
/*