扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:中国IT实验室 来源:中国IT实验室 2007年9月22日
关键字:
在本页阅读全文(共3页)
3.4我们开始实现我们的WebService Server端
      Java6.0实现WebService也很简单,我直接贴代码了。Server端如下,如果不太懂,还是建议看后面的参考资料
package cn.heapstack.ws.server;
import java.net.MalformedURLException;
import java.rmi.Naming;
import java.rmi.NotBoundException;
import java.rmi.RemoteException;
import java.util.Date;
import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import cn.heapstack.rmi.interfaces.IBridge;
@WebService(targetNamespace = "http://www.heapstack.cn/ws/MyTimeServer")
@SOAPBinding(style = SOAPBinding.Style.RPC)
public class MyTimeServer

{
    
    @WebMethod
    public String getServerTime()
    
{
        //通常的做法
        //return new Date(System.currentTimeMillis()).toString();
        
        //这里我想要调用RMI,取得另一个JVM中程序调用的结果,当然这个JVM可以在两外一台机器上运行
        //这里WebService的Server 其实是RMI的 Client
        Date date = null;
        try
        
{
            IBridge bridge = (IBridge) Naming.lookup("bridge");
            date = bridge.getDate();
            return date.toString();
        }
        catch(Exception e)
        
{
            e.printStackTrace();
        }
        return null;
        
    }
}
package cn.heapstack.ws.server;
import javax.xml.ws.Endpoint;
import cn.heapstack.ws.server.MyTimeServer;
public class Main

{
    public static void main(String[] args)
    
{
        Endpoint.publish("http://localhost:8435/MyTimeServer", new MyTimeServer());
    }
}
package cn.heapstack.ws.client;
import cn.heapstack.ws.mytimeserver.*;
public class WSClient

{

    /** *//**
     * @param args
     */
    public static void main(String[] args)
    
{
        //自动生成的代码    WebService的Stub
        MyTimeServerService ws = new MyTimeServerService();
        //自动生成的代码    WebService的实例类
        MyTimeServer service = ws.getMyTimeServerPort();
        //调用WebService,WebSerivce会调用RMI的方法获得返回结果
        String date = service.getServerTime();
        System.out.println("WS Client get:"+ date );
    }
}
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。