java调用DoNet发布的WebService

本文介绍了一种从DoNet发布的WebService中获取并解析返回的DataSet的方法。通过使用Java的Axis2客户端库,实现了对WebService返回的数据进行遍历和提取,最终输出关键信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DoNet发布的WebService返回的结果是一个DataSet,需要对其进行解析,将数据提取出来。

package client;

import java.rmi.RemoteException;
import java.util.Iterator;

import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMNode;
import org.apache.axis2.AxisFault;

public class Stub_Call_DoNet_Service1
{
 public static void main(String[] args)
 {
  try
  {
   Service1Stub stub = new Service1Stub();
   Service1Stub.WsGetCSPO getCSPO = new Service1Stub.WsGetCSPO();
   getCSPO.setFaRen("HFJLH0");
   getCSPO.setCustompo("PZX-B10163");
   getCSPO.setCustompoitem("1");
   getCSPO.setCreateDT("");
   
   Iterator it = stub.wsGetCSPO(getCSPO).getWsGetCSPOResult().getExtraElement().getChildren();
   if(it!=null)
   {
    while(it.hasNext())
    {
     OMNode omNode = (OMNode) it.next();
           if (omNode.getType() == OMNode.ELEMENT_NODE)
           {
      OMElement omElement = (OMElement) omNode;
      Iterator it2 = omElement.getChildren();
      if(it2!=null)
      {
       while(it2.hasNext())
       {
        OMElement omElement2 = (OMElement) it2.next();
        Iterator it3 = omElement2.getChildren();
        if(it3!=null)
        {     
         while(it3.hasNext())
            {
          OMElement oElement3 = ((OMElement)it3.next());
          if(oElement3!=null)
          {
           String ln = oElement3.getLocalName();
           if("custompo".equals(ln))
           {
            System.out.println("custompo:"+oElement3.getText());
           }
           if("custompoitem".equals(ln))
           {
            System.out.println("custompoitem:"+oElement3.getText());
           }
           if("createdt".equals(ln))
           {
            System.out.println("createdt:"+oElement3.getText());
           }
           if("customerpartno".equals(ln))
           {
            System.out.println("customerpartno:"+oElement3.getText());
           }
           if("openpoqty".equals(ln))
           {
            System.out.println("openpoqty:"+oElement3.getText());
           }
           if("pounit".equals(ln))
           {
            System.out.println("pounit:"+oElement3.getText());
           }
           if("customcurrency".equals(ln))
           {
            System.out.println("customcurrency:"+oElement3.getText());
           }
          }          
            }
        }      
       }
      }
     }
    }
   }
  }
  catch (AxisFault e)
  {
   e.printStackTrace();
  }
  catch (RemoteException e)
  {
   e.printStackTrace();
  }
 }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山月神话

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值