簡體   English   中英

Openbravo休息網絡服務

[英]Openbravo rest web services

我正在通過Restful WS Layer(可能是json)啟動一個包含OpenBravo集成的項目。這種集成在開始時很簡單,因為它只包含一個休息Web服務客戶端,它將執行GET,PUT,POST和DELETE動作。

我的問題是如何管理json對象,以及OpenBravo是否帶來了一些轉換數據訪問對象中json對象的方法,以便於處理。

我見過OpenBravo DAL(數據訪問層),有沒有辦法混合其余的和dal來討論OB對象?

最好的祝福,

Openbravo有一個名為org.openbravo.service.json的模塊

上面的模塊使用了openbravo的JSON和DAL層。

當我們對產品發出get請求時,JSON模塊使用DAL查詢數據庫並將OB Object轉換為JSON對象。

當我們想要創建新產品時,JSON模塊使用DAL來創建新的OB對象。

您可能需要關注openbravo方面的主要類是,

  • 1)DefaultJsonDataService
  • 2)JsonToDataConverter - 將json數據轉換為Openbravo業務對象。

  • 3)DataToJsonConverter - 負責將Openbravo業務對象轉換為json表示。

重要鏈接: Openbravo JSON REST

這是一個可能對您有幫助的示例...首先讓我們看看這段代碼

 public class SimpleRestClass extends BaseWebServiceServlet {
   private static final long serialVersionUID = 1L;

   @Override
   public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException {
     String Name = request.getParameter("Name");
     String Email = request.getParameter("Email");

     List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
     Map<String, Object> map = new HashMap<String, Object>();

     map.put("Name", Name);
     map.put("Email", Email);
     // map.put("Path", request.getPathInfo().toString());

     list.add(map);
     final String json = new DataToJsonConverter().convertToJsonObjects(list).toString();

     // write to the response
    response.setContentType("application/json");
    response.setCharacterEncoding("utf-8");
    final Writer w = response.getWriter();
    w.write(json);
    w.close();

  }

}

在上面的代碼中

final String json = new DataToJsonConverter().convertToJsonObjects(list).toString();

是你在找什么。 convertToJsonObjects()方法的簽名是

List<JSONObject> convertToJsonObjects(List<Map<String, Object>> data)

用於REST Json WS的openbravo中的重要類是注意到的

import org.openbravo.service.json.DataToJsonConverter

這個類有更多與Json相關的方法。 希望這會幫助你。

如果您有任何疑問,請隨時提出。

暫無
暫無

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

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