This week's book giveaway is in the Jobs Discussion forum.
We're giving away four copies of Java Interview Guide and have Anthony DePalma on-line!
See this thread for details.
The moose likes Web Services and the fly likes Best Web Service practive for traffic/communication Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Java Interview Guide this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Java » Web Services
Bookmark "Best Web Service practive for traffic/communication" Watch "Best Web Service practive for traffic/communication" New topic

Best Web Service practive for traffic/communication

Darren Formosa

Joined: Jan 18, 2013
Posts: 1
Hi all,

I am fairly new to web services and I am looking into creating a service using jax-ws which allow a search of a database to create a list of results.

The setup I am OK with and have done a test to get the web-service working/talking to a test website.

What would be the best practice for handling the search results? Would it be best to create the search results on the initial web service call and send the whole resultset back as the response OR would it be best keep the web service open from the website and then use another web method to allow each individual search result to be returned individually?

I have managed to get the second process mentioned above working - but mainly because I did not know how to send back the Custom resultset object i.e. not Array or List - although I think I have found a way to do it using the JAXB annotations. If I was to go down this route would it be good practice to do it in this manner OR would creating an XML or JSON response be better?

Also, how does a web service process multiple calls, for example if 100 calls were made at the same time would it be one after the other OR would they run in parallel?

Thanks in advance
Adithya Parvatam

Joined: Jan 17, 2013
Posts: 4

WebServices requests are processed in parallel.(if capacity of the server is breached then they will hold those requests and process them in order they received)

Now coming to the result list management

When you get a request and there are 1000's of results,then we can use an option called pager

suppose think that the webpage you are using can show 10 records at a time
the selection would be ,the first webservice call will return 10 records,then from the second call on wards you should get the last record rownum and the pager value.
This way you can manage results for the page.

input=search xml .output=1st call displayed 10 records
2nd call input = start=10 pager=10 with search xml output= 10 records starting from 10th record--> query will be select <columns> from table where rownum>10 and rownum<20(start+pager) or JPA/Hibernate have the pager mechanism you can use that

Response is always good to send back in XML format(after all webservice's process reqs in soap-xml's) create a xml representation of the object and send them in format of xml.

An xml format can be recieved by any service and can be transformed into their specific representation if they want

better create a WSDL for the service with XSD properly defined.

Hope this helps....
I agree. Here's the link:
subject: Best Web Service practive for traffic/communication
jQuery in Action, 3rd edition