Page History
...
Code Block |
---|
<?xml version="1.0" encoding="UTF-8"?> <Endpoint ActionPrefix="http://www.dkma.dk/medicinecard/xml.schema/"URL="http://triforkprodtest.lms.trifork.com/fmk12/ws/MedicineCard"ProxyURL="http://localhost:8080/sosigw/proxy/soap-request"IdcardMaxAgeMinutes="560"> <Action Name="2009/01/01#GetMedicineCard"> <Timeout>30000</Timeout> </Action> <!-- flere actions --> <Action Name="2011/01/01#CreatePrescriptionMedicationWithoutCPR" ServiceIdentifier="fmk-1"> <Timeout>30000</Timeout> </Action> </Endpoint> |
Konfigurationen kan genindlæses ved kald til ReloadConfiguration baggrundsjobbet, således at konfigurationen kan opdateres uden genstart af komponenten. Se driftsvejledning.
Anchor | ||||
---|---|---|---|---|
|
I den databasebaserede routingskonfiguration genindlæser læser DCC'en routings konfiguration fra en database med jævne mellemrum. Konfigurationen kan genindlæses ved kald til ReloadConfiguration baggrundsjobbet, således at konfigurationen kan opdateres uden genstart af komponenten - se driftsvejledning. DCC'en forholder sig ikke til hvordan data i database vedligeholdes og kræver udelukkende læseadgang til databasen.
For at anvende den databasebaserede routingskonfiguration skal følgende skridt gennemføres for en given installation:
...
2.
Anchor | ||||
---|---|---|---|---|
|
a. Et 'LastUpdateSelectStatement' som returnerer én og kun én række med én og kun én værdi af typen 'Datetime' eller null. Værdien skal afspejle hvornår routingsinformation sidst er blevet opdateret. DCC genindlæser hele konfigurationen hvis denne værdi er større end den komponenten sidst har læst (komponenten benytter 1/1/1970 som initiel dato).
b. Et 'ActionSelectStatement' som returner et antal rækker statement,'ActionSelectStatement', som returner et antal rækker som indeholder følgende navngivne værdier med følgende egenskaber:
Navn | Datatype | Nullable | Betydning |
---|---|---|---|
SOAP_ACTION | String | Nej | Den action der ønskes kaldt. |
SERVICE_IDENTIFIER | String | Ja | Logisk navn på den service der ønskes kaldt. Parret <SOAP_ACTION, SERVICE_IDENTIFIER> skal være unikt. Bemærk at SERVICE_IDENTIFIER kan være NULL af hensyn til bagudkompatibilitet. |
SERVICE_URL | String | Nej | Endpointet hvortil beskeder for den givne soap action skal routes til |
TIMEOUT_MILLIS | int | Nej | Grænseværdien for hvornår det (synkrone) kald afbrydes |
USE_PROXY | boolean | Ja | Hvorvidt beskeder skal sendes gennem proxy hvis en sådan er defineret i DCC'ens statiske konfiguration |
IDCARD_MAXAGE_MINS | int | Ja | Instruktion til en evt. SOSI-Gateway. |
DO_NOT_VERIFY_SSL_HOSTNAME | boolean | Ja | Hvorvidt hostname verifikation af SSL-servercertifikatet skal foretages. |
WSA_HEADERS_PROCESSING | String | Ja | Hvordan WS-Addressing headere skal processeres, se afsnittet 'WS-Addressing processering' længere nede for tilladte værdier. |
33. Anchor
Anchor | ||||
---|---|---|---|---|
|
54. Opdatér DCC'ens konfigurationsfil ved at slette alle <Endpoint> definitioner og indsætte følgende <EndpointDatabase> struktur i stedet:
Code Block |
---|
<EndpointDatabase> <DataSourceName>DATASOURCE</DataSourceName> <LastUpdateSelectStatement>LAST_UPDATE_SELECT</LastUpdateSelectStatement> <ActionsSelectStatement>ACTION_SELECT</ActionsSelectStatement> <RefreshIntervalMinutes>INTERVAL</RefreshIntervalMinutes> <GatewayProxyURL>PROXY_URL</GatewayProxyURL> </EndpointDatabase> |
...
- DATASOURCE er navnet på datasourcen deployet under
1) præfikset med java:/Anchor _Hlt260053990 _Hlt260053990 - LAST_UPDATE_SELECT og ACTION_SELECT er de det i 2) definerede statements
- INTERVAL er det i 3) fastlagte interval
- statement
- PROXY_URL er den i 43) eventuel identificerede proxy eller tomt hvis der ikke benyttes nogen proxy
...
Bemærk: DCC'en fejler under opstart hvis et af de to 'select' statements kaster en exception, men starter korrekt selvom de to 'select' statements måtte returnere tomme result-sets.
Når der foreligger en opdateret konfiguration i databasen erstatter denne den tidligere indlæste konfiguration uden at DCC'en forholder sig til forskellene mellem de to konfigurationer. Hvis der er fejl i den nye konfiguration logges dette og den tidligere korrekt indlæste bibeholdes. det angivne 'select' statement kaster en exception, men starter korrekt selvom 'select' statement måtte returnere tomme result-sets.
Ikke-normativ eksempel på en endpoint-database definition:
Code Block |
---|
<?xml version="1.0" encoding="UTF-8"?> <EndpointDatabase> <DataSourceName>java:/crkDS</DataSourceName> <LastUpdateSelectStatement>select LAST_UPDATE from DCC_LASTUPDATE</LastUpdateSelectStatement> <ActionsSelectStatement>select SOAP_ACTION, SERVICE_URL, TIMEOUT_MILLIS, IDCARD_MAXAGE_MINS, USE_PROXY, DO_NOT_VERIFY_SSL_HOSTNAME, WSA_HEADERS_PROCESSING from DCC_ACTIONS</ActionsSelectStatement> <RefreshIntervalMinutes>60</RefreshIntervalMinutes> <GatewayProxyURL>http://127.0.0.2:8080/sosigw/proxy/soap-request</GatewayProxyURL> </EndpointDatabase> |
...