2016-05-17 13 views
0

データベースから取得した情報でString []を返す単純なRESTful Webサービスを開発しました。私はネットビーンズを使用しており、ネットビーンズが自動的にそれらを生成するので、このWebサービスのクライアントとしてクラスを使用する傾向があります。この場合、どのようにWebサービスメソッドがリクエストしているかを処理する方法がわかりません。クラスジェネリッククラスと関係があり、何をすべきかわかりません。あなたはそれが簡単なString []型のオブジェクトを返し、それは私がこのメソッドを呼び出すときに取得したいと思い何ですが、NetBeansは、クライアントを作成するときに見ることができるようにRESTfulサービスがString []オブジェクトを返すのに問題があります

@GET 
@Produces("application/json") 
public String[] tramo(@QueryParam("tramo") String tramo) throws SQLException, ClassNotFoundException, InstantiationException, IllegalAccessException { 

    Class.forName("oracle.jdbc.OracleDriver").newInstance(); 
    Connection conexion = DriverManager.getConnection("jdbc:oracle:thin:@172.17.56.133:1521:TRACK", "oc","oc"); 
    Statement stmt=conexion.createStatement(); 
    ResultSet rs1=stmt.executeQuery("select IDT.ROWID, IDT.ID_ID, IDT.ID_PST_ID, IDT.ID_UM_ID,IDT.ID_POS, IDT.ID_PULSOS, IDT.ID_LANZAR, TEL_FISKERNEL.TEL_COLOR_EXT, TEL_FISKERNEL.TEL_SEC_MONT,TEL_FISKERNEL.TEL_PRS_FAM,TEL_FISKERNEL.TEL_SORTENES_FAM from IDT,TEL_FISKERNEL where IDT.ID_UM_ID = TEL_FISKERNEL.TEL_PIN and ID_PST_ID="+tramo+" order by ID_POS"); 
    int i=0; 
    while(rs1.next()){ 
     pin[i]=rs1.getString("ID_UM_ID"); 
     i++; 
    } 
    rs1.close(); 
    stmt.close(); 
    conexion.close(); 


    return pin; 


} 

、:ここ は、Webサービスからの方法であり、そのメソッドは次のように記述されます:

public <T> T tramo(Class<T> responseType, String tramo) throws ClientErrorException { 
     WebTarget resource = webTarget; 
     if (tramo != null) { 
      resource = resource.queryParam("tramo", tramo); 
     } 
     return resource.request(javax.ws.rs.core.MediaType.APPLICATION_JSON).get(responseType); 
    } 

String []を取得するにはどうすればよいですか?私は多くのチュートリアルをオンラインで試して読みましたが、このメソッドが要求していることは分かりません。 あらかじめありがとうございました!

答えて

1

Tは、あなたがそう呼び出しがこの

String[] resp = tramo(String[].class, tramo) 
+0

OH GODがあなたを祝福ようなものになるだろう使用するタイプのための一般的です。私は昨日朝、それを推測しようとした。今私はいくつかの他の種類のエラーが発生しているが、それは解決される。ありがとうございました:D – Asiertxo

関連する問題