⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 beanstockserviceclient.java

📁 21天精通Java,这是一本英文书
💻 JAVA
字号:
import java.rmi.RemoteException;
import java.net.MalformedURLException;

import org.apache.axis.AxisFault;
import org.apache.axis.client.ServiceClient;
import org.apache.axis.encoding.BeanSerializer;
import org.apache.axis.encoding.BeanSerializer$BeanSerFactory;
import org.apache.axis.encoding.DeserializerFactory;
import org.apache.axis.utils.Options;
import org.apache.axis.utils.QName;

import webservices.StockQuote;

public class BeanStockServiceClient
{
  public static void main(String [] args)
  {
    if (args.length != 1)
    {
      System.err.println("Usage: java BeanStockServiceClient <stock-symbol>");
      System.exit(1);
    }
    
    String symbol = args[0];
    
    String url = "http://localhost:8080/axis/services/BeanStockService";
    
    ServiceClient client = null;
    try
    {
      client = new ServiceClient(url);
    }
    catch (AxisFault fault)
    {
      System.err.println("Fault: " + fault);
      System.exit(2);
    }

    QName quoteAssociatedQName = new QName("urn:com-acme-trade", "stock");
    
    BeanSerializer serializer = new BeanSerializer(webservices.StockQuote.class);
    
    DeserializerFactory deserializerFactory = new BeanSerializer.BeanSerFactory();
    
    client.addSerializer(webservices.StockQuote.class,
                         quoteAssociatedQName,
                         serializer);
                         
    client.addDeserializerFactory(quoteAssociatedQName,
                                  webservices.StockQuote.class,
                                  deserializerFactory);
          
    StockQuote quote = null;
    try {
        Object obj = client.invoke("BeanStockService",
                                   "getQuote",
                                   new Object[] { symbol });

        if (obj != null && obj instanceof StockQuote)
        {
          quote = (StockQuote)obj;
        }
        else
        {
          System.err.println("Error in return value:\n\n" + obj);
        }
    } catch (AxisFault fault) {
        System.err.println("Error : " + fault.toString());
    }
    
    if (quote != null)
    {
      System.out.println("Quote for " + quote.getSymbol() +
                         ": current " + quote.getCurrent() +
                         ", high " + quote.getHigh() +
                         ", low " + quote.getLow());
    }
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -