簡體   English   中英

Web Services Client中的NullPointerException(日食)

[英]NullPointerException in Web Services Client (eclipse)

我是相當新的Java Web服務,我試圖用它來訪問Oracle數據庫。 我的項目試圖做的是輸入郵政編碼,然后從數據庫返回信息。

使用本教程,我得到了一個針對動物類型的Web服務客戶端,我正嘗試從我的項目中學到的東西: http : //javapapers.com/web-service/java-web-service-using-eclipse /

這是我正在使用的主類的代碼:

package com.zipws.test;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

//import javax.jws.WebService;
//import javax.jws.soap.SOAPBinding;
//import javax.jws.soap.SOAPBinding.Style;

public class ZipWebServiceImpl {
public String cityFinder(String zip) {
    Connection con = null;         
    String str = "";

    try{
        String user = "IVRDEVUSR";
        String pass = "voice001";
        String url = "jdbc:oracle:thin:@UIQ-UAT-ORA-02:1521/IVRST01";
        Class.forName("oracle.jdbc.driver.OracleDriver");
        con = DriverManager.getConnection(url, user, pass);

        Statement stmt = con.createStatement();

        ResultSet rsZip = stmt.executeQuery("SELECT *FROM ZIPLOC WHERE ZIP = " + zip);

        while(rsZip.next()){
            if(zip.equals(rsZip.getString("ZIP"))){
                str = rsZip.getString("CITY");
            }
            else{
                str = "Zip code for city not found!";
            }

        }
        rsZip.close();
        stmt.close();
    }
    catch(SQLException e){
        //System.out.println("Connection Failed.");
        str = "connection failed";

    }
    catch(ClassNotFoundException cnfe){
        //System.out.println("Unable to load driver.");
        str = "Unable to load driver";
    }
    finally{
        try{
            con.close();
        }
        catch(SQLException e){
            //System.out.println("Failed to close connection.");
            str = "Failed to close connection.";
        }
    }
    return str;
}
}

Web服務客戶端類是由Eclipse生成的,這是我從前面的教程中學到的。 當我運行客戶端並輸入郵政編碼以嘗試調用上述類時,它將返回NullPointerException,但我不知道為什么。 誰能解釋為什么?

如果“ con!= null”,則應簽入finally塊。 否則,即使在無法加載驅動程序的情況下,您也試圖關閉永遠無法成功的連接。

調試該方法並檢查發生了什么異常。 也許Oracle驅動程序在類路徑中丟失了?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM