隨筆 - 41  文章 - 29  trackbacks - 0
          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿(5)

          隨筆分類(28)

          隨筆檔案(23)

          收藏夾(6)

          Inside JVM

          Java

          java performance

          Solr

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          The previous message only explains how to create service, this message will describe how to create client and invoke server side. Actually, JSR-311 only defined the server API, so, each vendor will have different ideas on client. But one common way is to use Apache Http Common Client lib. Please see following examples.

          1. GET a customer

          // Sent HTTP GET request to query customer info

          System.out.println(
          "Sent HTTP GET request to query customer info");

          URL url 
          = new URL("http://localhost:8080/vendor_search/services/customerservice/customers/123");

          InputStream in 
          = url.openStream();

          System.out.println(getStringFromInputStream(in)); 
          //NOTE, return an input stream, you need convert xml to Java Object by yourself
          2. Use PUT to update a customer


          System.out.println("Sent HTTP PUT request to update customer info");

          Client client 
          = new Client();

          String inputFile 
          = client.getClass().getResource("update_customer.txt").getFile();

          File input 
          = new File(inputFile);

          PutMethod put 
          = new PutMethod("http://localhost:8080/vendor_search/services/customerservice/customers");

          RequestEntity entity 
          = new FileRequestEntity(input, "text/xml; charset=ISO-8859-1");

          put.setRequestEntity(entity);

          HttpClient httpclient 
          = new HttpClient();



          try {

          int result = httpclient.executeMethod(put);

          System.out.println(
          "Response status code: " + result);

          System.out.println(
          "Response body: ");

          System.out.println(put.getResponseBodyAsString());

          finally {

          // Release current connection to the connection pool once you are

          // done

          put.releaseConnection();

          }
          3. Use POST to add a customer

          System.out.println(
          "Sent HTTP POST request to add customer");

          inputFile 
          = client.getClass().getResource("add_customer.txt").getFile();

          input 
          = new File(inputFile);

          PostMethod post 
          = new PostMethod("http://localhost:8080/vendor_search/services/customerservice/customers");

          post.addRequestHeader(
          "Accept" , "text/xml");

          entity 
          = new FileRequestEntity(input, "text/xml; charset=ISO-8859-1");

          post.setRequestEntity(entity);

          httpclient 
          = new HttpClient();



          try {

          int result = httpclient.executeMethod(post);

          System.out.println(
          "Response status code: " + result);

          System.out.println(
          "Response body: ");

          System.out.println(post.getResponseBodyAsString());

          finally {

          // Release current connection to the connection pool once you are

          // done

          post.releaseConnection();

          }

          So, for this way provided by Apach Common Http Client, the user still need think about the convention from XML to POJO. It is not so convenience. We will provide a utility class to simply this process.

          posted @ 2008-11-05 22:48 Justin Chen 閱讀(1845) | 評論 (0)編輯 收藏
               摘要: The first article of a series of implementing Restful web service with CXF. This one focus on a very simple service and how to config it in Tomcat container.   閱讀全文
          posted @ 2008-11-05 18:24 Justin Chen 閱讀(3508) | 評論 (1)編輯 收藏
               摘要: This message gives us a brief introduction on Restful web service (All of these information comes from internet and i just re-organized them) and some thoughts on how can we apply this new architecture pattern into our common service services.  閱讀全文
          posted @ 2008-11-05 10:43 Justin Chen 閱讀(2101) | 評論 (3)編輯 收藏
          僅列出標題
          共3頁: 上一頁 1 2 3 
          主站蜘蛛池模板: 大化| 延安市| 西峡县| 西林县| 鞍山市| 平武县| 久治县| 万全县| 台南县| 江城| 上林县| 南投县| 潮安县| 临沂市| 芷江| 济南市| 宁都县| 永年县| 桂阳县| 新竹市| 湘潭市| 宁强县| 张家港市| 会宁县| 东兰县| 新竹市| 肥西县| 谷城县| 隆昌县| 双桥区| 平乡县| 搜索| 如皋市| 新余市| 德阳市| 上蔡县| 武城县| 穆棱市| 肥西县| 特克斯县| 天台县|