REST Java web service using protobuf - Stack Overflow



REST Java web service using protobuf - Stack Overflow

You can see inside the post how we can create a JX-RS web service which is producing Google protocol Buffer in response. Source code is available at my blog

what I am doing is converting the protocol buffer object int byte array from server side and sending is array via service: Service code is blow , populating object and puting it in response.

UserDTO.User user = UserDTO.User.newBuilder(). //protocol buffer object            setSessionId(id).            setName("l070020").            build();  return Response.ok(user.toByteArray(),MediaType.APPLICATION_OCTET_STREAM).status(200).build();

Protocol buffer object has ability to parse populate the protocol buffer object via stream. So i am using by stream for data communication. On client side I am making connection to web service

HttpGet request = new HttpGet("http://localhost:8080/maven.work/service/mainServices/get_user");  request.addHeader("accept","application/octet-stream");  HttpResponse response = httpClient.execute(request);

Protocol buffer has build in method to parse stream,blow I ma parsing stream from the response

User user = User.parseFrom(response.getEntity().getContent());

Similarly you can send the protocol buffer object in the form of byte array to server and server can get it from HTTP Servlet Request stream and parse it same like the client is doing.


Read full article from REST Java web service using protobuf - Stack Overflow


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts