国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
webservice異常機制實驗(2)
webservice異常機制實驗(2)--建議初學(xué)者必做
2007-04-28 15:09

實驗三:web服務(wù)嵌套調(diào)用——CheckPassword.jws異常檢測。

本實驗由Hello.jws來調(diào)用CheckPassword.jws的密碼檢測服務(wù),然后由CheckPassword.jws產(chǎn)生一個異常,在客戶端檢測信息。

1: Web Service服務(wù)端開發(fā)

服務(wù)一:Hello.jws源代碼:

本程序是檢驗用戶名是否正確的一個服務(wù),但是它不存在檢驗密碼的功能,所以需要調(diào)用服務(wù)二來檢驗密碼。如果密碼對則返回對的消息,否則將返回一個遠程異常帶到服務(wù)一。并由服務(wù)一返回給客戶端程序處理。

import java.rmi.RemoteException;

import java.util.Date;

import java.text.DateFormat;

import org.apache.axis.client.Call;

import org.apache.axis.client.Service;

import javax.xml.namespace.QName;

import javax.xml.rpc.ParameterMode;

import javax.xml.rpc.ServiceException;

import java.net.MalformedURLException;

public class Hello{

public String hello(String name,String ps)throws RemoteException,ServiceException,MalformedURLException

{

String result=null;

try{

if(name.equals("vegauser"))

{

      try{

     String endpoint = "http://localhost:8080/axis/CheckPassword.jws?wsdl";//標(biāo)示webservice路徑

      Service service = new Service();//創(chuàng)建service實例

      Call call = (Call) service.createCall();//通過service創(chuàng)建call實例

      call.setTargetEndpointAddress(endpoint);//webservice的服務(wù)路徑放在call實例中,為call設(shè)置服務(wù)位置

      call.setOperationName("CheckPassword");//調(diào)用webservice方法

      //call.addParameter(ps, org.apache.axis.encoding.XMLType.XSD_DATE,javax.xml.rpc.ParameterMode.IN);

      //call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);

      //call.setUseSOAPAction(true);

     // call.setSOAPActionURI("http://localhost:8080/axis/Hello.jws");

      result = (String)call.invoke(new Object[]{ps});//

      }catch(Exception ee)

      {

        return ee.getMessage();

     }

      //CheckPasswordService service = new CheckPasswordServiceLocator();

      //CheckPassword cps=service.getCheckPassword();

      if(result.equals("password is true"))

           return "你好"+name+",your"+result+",歡迎來到Web服務(wù)的世界!";

           else

           return result;

}

else

throw new RemoteException("A RemoteException occurs:username is wrong! In the Hello.jws");

}catch(RemoteException e)

{

   //e.printStackTrace(System.err);

   return e.getMessage();

}

}

}

服務(wù)一Hello.jws中調(diào)用的服務(wù)二:CheckPassword.jws

import java.rmi.RemoteException;

public class CheckPassword{

public String CheckPassword(String ps)throws RemoteException{

try{

if(ps.equals("vegauser"))

return "password is true";

else

throw new RemoteException("A RemoteException occurs:password is wrong! In the CheckPassword.jws");

}catch(RemoteException e)

{

   //e.printStackTrace(System.err);

   return e.getMessage();

}

}

}

2: Web Service客戶端開發(fā)

//該程序是在本地輸入用戶名,如果不為空,則調(diào)用web服務(wù)一予以響應(yīng),如果為空,則在本地報錯。

package localhost.axis.Hello_jws;

import java.io.*;

public class Main{

public static void main(String args[])throws IOException,Exception

{

   HelloService service = new HelloServiceLocator();

   Hello hello = service.getHello();

   System.out.println("請輸入你的用戶名: ");

   BufferedReader in1=new BufferedReader(new InputStreamReader(System.in));

   //String s,ss;

   String s=in1.readLine();

   System.out.println("請輸入你的密碼: ");

   BufferedReader in2=new BufferedReader(new InputStreamReader(System.in));

   String ss=in2.readLine();

   try

   {

    if(s.length()!=0)

    System.out.println("Response:"+hello.hello(s,ss));

    else if(s.length()==0)

    {

           throw new IOException("username is empty in local machine!");

    }

   }catch(IOException e)

    {

           //System.err.println(e);//輸出結(jié)果:java.io.IOExcepion:username is empty

           e.printStackTrace(System.err);//輸出結(jié)果java.io.IOExcepion:username is empty at yhInput.main(yhInput.java:14)

          }

}

}

3:執(zhí)行結(jié)果示例


 

                     圖三:服務(wù)嵌套異常機制

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
如何使用Axis開發(fā)Webservice應(yīng)用程序
利用AXIS開發(fā)Webservice(一) —— 如何發(fā)布自己的webservice
WebServic開發(fā)之Axis權(quán)限控制
axis1.4與myeclipse開發(fā)webservice
Tomcat Axis Eclipse實例講解
搭建簡單的axis1.4 web服務(wù)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服