Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Scout/Tutorial/3.7/Advanced Minicrm"

< Scout‎ | Tutorial‎ | 3.7
m (Generate Web Service Classes)
(Replaced content with "The Scout documentation has been moved to https://eclipsescout.github.io/.")
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{ScoutPage|cat=Tutorial}}
+
The Scout documentation has been moved to https://eclipsescout.github.io/.
 
+
=Access Web Services with Scout Eclipse=
+
 
+
==Generate Web Service Classes==
+
In Eclipse Scout it is also pretty easy to access web services. We will use Bing as an example web service. See http://www.bing.com/developers/ for more information.<br/>
+
Go to the ''server'' node of your Scout Project, expand the tree until you see the node ''Axis Web Service Consumers'' and select ''New Webservice consumer'' from the context menu. Paste the following API key into the WSDL URL field http://api.search.live.net/search.wsdl?AppID=F1DFAE1859C73D8B105D99A78F0B027B62C64814 and click ok. An overview will pop-up which you acknowledge.
+
 
+
==Consume the Web Service==
+
In order to consume the web service add a new service operation to your ''StandardOutlineService'' with the following signature: <source lang="java">Object[][] getBingTableData(String query) throws ProcessingException</source><br/>
+
<source lang="java">
+
public Object[][] getBingTableData(String query) throws ProcessingException{
+
  String appId = "BE75364456DF97D980FFDC1420E46B941E7D01CB";
+
  LiveSearchServiceLocator soapClient = new LiveSearchServiceLocator();
+
  SearchRequest request = new SearchRequest();
+
  request.setAppId(appId);
+
  request.setQuery(query);
+
  SourceType[] sources = {SourceType.Web};
+
  request.setSources(sources);
+
  SearchResponse response;
+
  try{
+
    response = soapClient.getLiveSearchPort().search(new SearchRequestType1(request)).getParameters();
+
  } catch(Exception e){
+
    throw new ProcessingException(e.getMessage(), e);
+
  }
+
  WebResult[] result = response.getWeb().getResults();
+
  Object[][] data = new Object[result.length][3];
+
  for (int row=0; row < data.length; row++) {
+
    data[row][0] = result[row].getUrl();
+
    data[row][1] = result[row].getTitle();
+
    data[row][2] = result[row].getDescription();
+
  }
+
  return data;
+
}
+
 
+
</source>
+
==Create the Client Table==
+
Below your ''CompanyNodePage'' add a new ''BingTablePage'', extending ''AbstractPageWithTable''. In order to do that, you have to add a new variable to the ''CompanyNodePage'' containing the name of the company, which is used for calling the Bing-Service.
+

Latest revision as of 07:24, 18 March 2024

The Scout documentation has been moved to https://eclipsescout.github.io/.

Back to the top