2014-11-04 48 views
0

我试图实现TrueMD API,如文档所示:http://www.truemd.in/api/documentation#javasdk。 我下载了TrueMD.jar并添加到使用Netbeans8.0的java web servlet应用程序的库中。我能够获得药物建议,但不能获得他们的详细信息。我尝试下面的代码:TrueMD API在java servlet中不起作用

protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
     throws ServletException, IOException { 
     response.setContentType("text/html;charset=UTF-8"); 
     PrintWriter out = response.getWriter(); 
     String drugdetail = request.getParameter("drug"); 
     TrueMDAPI.key="3abb58c093fd817e9cddae75b3de2b"; 

    try{ 
     Medicine medicine= TrueMDAPI.getMedicineData(drugdetail); 
     printMedicine(medicine);   
     }finally {    
     out.close(); 
    } 
} 
private static void printMedicine(Medicine medicine){ 
System.out.println("manufacturer :"+medicine.getManufacturer()); 
System.out.println("brand :"+medicine.getBrand()); 
System.out.println("category :"+medicine.getCategory()); 
System.out.println("d_class :"+medicine.getDClass()); 
System.out.println("unit_type :"+medicine.getUnitType()); 
System.out.println("unit_qty :"+medicine.getUnitQty()); 
System.out.println("package_type :"+medicine.getPackageType()); 
System.out.println("package_qty :"+medicine.getPackageQty()); 
System.out.println("package_price :"+medicine.getPackagePrice()); 
System.out.println("unit_price :"+medicine.getUnitPrice()); 
System.out.println("generic_id :"+medicine.getGenericId()); 

}

我请求你帮我看看这个问题。提前致谢。

回答

0

的代码段之前

try{ 
     Medicine medicine= TrueMDAPI.getMedicineData(drugdetail); 
     printMedicine(medicine);   
     }finally {    
     out.close(); 
    } 

尝试粘贴:

try { 
      drugdetail = URLEncoder.encode(drugdetail, "UTF-8"); 
     } catch (UnsupportedEncodingException ignored) { 
      // Can be safely ignored because UTF-8 is always supported 
     } 

我希望这有助于。

+0

感谢您的带头人。我需要删除前导或尾随的空白。然后在连接到数据库之前用+替换空格。请检查以下链接:http://stackoverflow.com/questions/10786042/java-url-encoding – user2339074 2014-11-10 10:21:15