Page History
Scrollbar | ||
---|---|---|
|
Page info | ||||
---|---|---|---|---|
|
Section | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Warning | ||
---|---|---|
| ||
Data services were deprecated in LexEVS 6.4.1 and removed in 6.5. The Java based remote method invocation will remain available for the time being. These services are replaced by a separate CTS2 compliant web service described in the CTS2 API. |
Introduction
The focus of documentation will be the Java based LexEVS remote method invocation service.
Info | ||
---|---|---|
| ||
See migration notes below for LexEVS Distributed 6.0, 6.1 to 6.2, 6.3 to 6.4.1, 6.5 |
LexEVSDistributed
The Distributed LexEVS Portion of LexEVSAPI extends a subclass of, or in 6.5 and later, implements LexEVSService. This interface is a framework for calling LexEVS API methods remotely, while enforcing restrictions on proprietary content. JavaDoc
...
Info | ||
---|---|---|
| ||
Overview
This exposes the LexEVS Service model via a Remote Method Invocation service.
LexEVS Installation and Configuration
The distributed LexEVS API is strictly a Java interface and requires Internet access for remote connectivity to the caCORE LexEVS server.
Client configuration is represented in a client project in github: https://github.com/lexevs/LexEVS_Distributed_Client
Using the distributed LexEVS API
Example code can be found at the above client project link for a number of use cases.
...
Code Block | ||||
---|---|---|---|---|
| ||||
package org.lexgrid.lexevs.remote.client; import org.LexGrid.LexBIG.DataModel.Collections.CodingSchemeRenderingList; import org.LexGrid.LexBIG.DataModel.InterfaceElements.CodingSchemeRendering; import org.LexGrid.LexBIG.Exceptions.LBInvocationException; import org.LexGrid.LexBIG.caCore.interfaces.LexEVSDistributed; import gov.nih.nci.system.client.ApplicationServiceProvider; public class MavenBasedPrototype { LexEVSDistributed lbs = null; private static String serviceUrl = "https://localhost.daplie.com:8443/lexevsapi65"; public void run() throws LBInvocationException{ try { lbs = (LexEVSDistributed)ApplicationServiceProvider.getApplicationServiceFromUrl(serviceUrl, "EvsServiceInfo"); } catch(Exception e){ System.out.println("Starting LexEVS Remote Client fails" + e); } CodingSchemeRenderingList list = lbs.getSupportedCodingSchemes(); for(CodingSchemeRendering rendering: list.getCodingSchemeRendering()){ System.out.println(rendering.getCodingSchemeSummary().getFormalName()); } } public static void main(String[] args) { try { new MavenBasedPrototype().run(); } catch (LBInvocationException e) { e.printStackTrace(); } } } |
Background:
Architecture
The LexEVS API is exposed by the LexEVS caCORE System for remote access through the caCORE System's LexEVSApplicationService
class which implements the LexBIGService
interface.
The distributed LexEVS API environment will be configured on the LexEVS Server currently at (https://lexevsapi6.nci.nih.gov/lexevsapi64/).
LexEVS Annotations
To address LexEVS DAOs, the LexEVS API integration incorporates:
...