安顿的近义词 访问JAVA的WebService使用SOAP头
进来做的项目需要和JAVA的WebServices进行交互,其中访问WS的时候需要传入SOAP头进行验证。其中关键就是SOAP头内容。由于JAVA的WS在下生成的代理是没有SOAP头的内容,所以需要手工修改代理类,达到可以传输SOAP头的目的。
1:修改代理类,建立SOAP头的对象:
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "2.0.50727.3053")]腹部呼吸
欧沃顿桥 [System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")] 航空制造技术
[System.Xml.Serialization.XmlRootAttribute(Namespace = "", IsNullable = true)]
巢湖面积 public partial class MySoapHeader : System.Web.Services.Protocols.SoapHeader
{
private string tokenValue;
private System.Xml.XmlAttribute[] anyAttrField;
/// <remarks/>
//[XmlIgnoreAttribute]
//[XmlAttribute("")]
[XmlTextAttribute()]
public string TokenValue
{
get
{
kenValue;
}
t
{
沉的反义词 kenValue = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlAnyAttributeAttribute()]
public System.Xml.XmlAttribute[] AnyAttr
{
get
{
return this.anyAttrField;
}
t
{
this.anyAttrField = value;
}
}
}
2:修改代理类,添加一个SOAP对象:
private mySoapHeader soapHeaderValue;
父爱的事例 public MySoapHeader SoapHeaderValue
{
get
{
return this.soapHeaderValue;
}
t
{
this.soapHeaderValue = value;
}
}
3:在需要SOAP上方法上添加如下的代码:
[System.Web.Services.Protocols.SoapHeaderAttribute("SoapHeaderValue")]
public bool verifyWebrviceTest()
{
object[] results = this.Invoke("verifyWebrviceTest", new object[0]);
return ((bool)(results[0]));
}
小猫钓鱼故事
调用的时候使用如下代码:
ArcWS.ManDispCmdSessionBeanService ws = new ARSSMonSite.ArcWS.ManDispCmdSessionBeanService();
ArcWS.loginToken soapHeader = new ARSSMonSite.ArcWS.loginToken();
soapHeader.TokenValue = "arsssongguixiang#19990101010101";
ws.SoapHeaderValue = soapHeader;
ws.verifyWebrviceTest();
这样,就可以正确的向JAVS的WS传送SOAP头的信息。