FI Finnish
SE Swedish
FR French
PL Polish
DE German
US English (US)

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

Finnish
FI Finnish
SE Swedish
FR French
PL Polish
DE German
US English (US)
  • Log in
  • Home
  • Alusta
  • ESM
  • Muu tekninen ESM-dokumentaatio
  • WebAPI

Web API vianmääritys- ja testausesimerkkejä

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Palvelunhallinta
    Matrix42 Professional -ratkaisu Matrix42 Core ydinratkaisu Yrityspalveluiden hallinta Matrix42 älykkyys
  • Identiteetin hallinta ja ylläpito ( IGA )
    IGA yleiskatsaus IGA ratkaisukirjasto
  • Alusta
    ESM ESS2 ESS Efecte Chat palvelunhallintaan Efecte-integraatiot Lisäosat
  • M42 Core & Pro julkaisutiedot, IGA , keskustelupohjainen tekoäly
    2025.3 2025.2 2025.1 2024.2 2024.1 2023.4 2023.3 2023.2 2023.1 2022.4 2022.3 Julkaisutiedot ja käytännöt
  • Muu materiaali
    Käyttöehdot ja dokumentaatio- uid Saavutettavuusselosteet
  • Palvelut
+ More
    • Palvelunhallinta

    • Identiteetin hallinta ja ylläpito ( IGA )

    • Alusta

    • M42 Core & Pro julkaisutiedot, IGA , keskustelupohjainen tekoäly

    • Muu materiaali

    • Palvelut

Web API vianmääritys- ja testausesimerkkejä

Vianmääritys

Loki-tiedostot

Lokit löytyvät ESM-käyttöliittymästä kohdasta Hallinta  Ylläpito  Lokit. Täältä voit ladata lokit, tarkastella lokeja selaimessa ja tarkistaa, kuinka monta avointa istuntoa on eri lokien katselua varten. Verkkosovellusliittymän API virheenkorjaukseen on olemassa kolme lokia:

  • DataCardImport-komennolle com.bitmount.equipment.importing.ValidatingEntityXMLImporter
  • Hakua varten com.efecte.webservice.SearchController
  • EQL kyselyille com.efecte.persistence.search.eql.EqlEngine

Lokitiedostoista voit tarkastella käyttöoikeusvirheitä ja tarkempia EQL poikkeusten virheitä.

API ei palauta mitään datakortteja

Web API ei palauta yhtään datakorttia, vaikka kyselyni pohjalle on luotu datakortteja.
Tämä voi olla käyttöoikeusongelma. Jos web-rajapinnan käyttäjällä ei ole mallipohjan käyttöoikeuksia tiettyyn mallipohjaan, search.ws ei voi palauttaa datakortteja.

Hakeminen olemattomalla attribuuttikoodilla

Jos search.ws-funktiota käytetään ilman olemassa olevaa attribuuttikoodia, esim. $nam$ $name$:n sijaan, web- API voi antaa seuraavan vastauksen:

<?xml version="1.0" encoding="utf-8"?>
<error>
<code>efe-3001</code>
   <description>Invalid search query</description>
   <details>Macros should be preprocessed, not converted to HQL: $nam$</details>
</error>

Tämä tarkoittaa, että attribuuttikoodia $nam$ ei ole olemassa mallipohjassa.

WHERE-lausekkeessa kirjoitusvirheitä sisältävien datakorttien etsiminen

Search.ws ei palauta datakortteja tai virheitä, jos WHERE-lausekkeen attribuuttikoodissa on kirjoitusvirhe. Esimerkiksi kyselysi pitäisi olla “WHERE $ efecte_id $ = 'INC-000259'”, mutta kyselyssä “select entity from entity where template.code='incident' AND $ efectei $='INC-000259'” on väärin kirjoitettu attribuutti.

Tämä antaa tyhjän vastauksen ilman virheitä, koska mikään ei vastaa WHERE-ehtoa.

DataCardImport-virheet

<?xml version="1.0" encoding="utf-8"?>
<entity-import-report>
   <start-time>04.09.2018 09:43:38</start-time>
   <total-time>0,294</total-time>
   <entities-handled-per-second>3,401</entities-handled-per-second>
   <average-entity-handling-time>0,294</average-entity-handling-time>
   <user>webapi</user>
   <entities-handled>1</entities-handled>
   <entities-saved>0</entities-saved>
   <entities-updated>0</entities-updated>
   <entities-created>0</entities-created>
   <template-errors>
       <template-error code="workstation">Ignoring entity</template-error>
   </template-errors>
</entity-import-report>

Tämä voi johtua myös mallineen käyttöoikeuksien puutteesta. Tarkista kohdasta Hallinta -> käyttöoikeudet, että web-rapi-roolilla on oikeus luoda datakortteja mallineelle.

Testausesimerkkejä

Web API pyyntöjen testaus onnistuu helposti Browserilla tai Curlilla. Browserissa on helppo testata search.ws-pyyntöjä, varsinkin jos selain pystyy käsittelemään XML:ää.

Testaaminen selaimella

Testataksesi search.ws-tiedostoa selaimessa, lisää /search.ws ESM-instanssin perus-URL-osoitteen jälkeen. Alla on kuva selaimen testausesimerkistä, jossa on seuraava URL-osoite:


https://localhost:8080/esm/search.ws?attributeCodes=efecte_id,subject,description,status&query=select%20entity%20from%20entity%20where%20template.code=%27incident%27

Testaus Curlin avulla

Yksi vaihtoehto web- API testaamiseen on curl. Alla on esimerkki curl-komennosta, joka suorittaa saman kyselyn kuin selainesimerkki.

curl -X GET -u "webapi:Apitest" -L https://localhost:8080/esm/search.ws?attributeCodes=efecte_id,subject,destus&query=select%20entity%20from%20entity%20where%20template.code=%27incident%27

Esimerkkivastaus alla:

<?xml version="1.0" encoding="UTF-8" ?>
<entityset>
<entity id="19406" name="Test incident2">
   <template id="2597" name="Incident" code="incident"/>
   <group code="incident_management"/>
   <attribute id="2612" name="Incident ID" code="efecte_id">
       <value>INC-000278</value>
   </attribute>
   <attribute id="2623" name="Status" code="status">
       <value>1 - Untouched</value>
   </attribute>
   <attribute id="2632" name="Subject" code="subject">
       <value>Test incident2</value>
   </attribute>
</entity>
</entityset>

Datakorttien tuonti toimii samalla tavalla, tässä esimerkissä tapahtuman XML on importdata.xml-tiedostossa:

curl -X POST -H "Content-Type: application/xml" -d @importdata.xml  -u "webapi:Apitest" -L https://localhost:8080/esm/dataCardImport.ws?folderCode=incident_management

Vastauksen pitäisi olla jotain alla olevan esimerkin kaltaista:

<?xml version="1.0" encoding="utf-8"?>
<entity-import-report>
   <start-time>14.09.2018 10:44:48</start-time>
   <total-time>0,378</total-time>
   <entities-handled-per-second>2,646</entities-handled-per-second>
   <average-entity-handling-time>0,378</average-entity-handling-time>
   <user>webapi</user>
   <entities-handled>1</entities-handled>
   <entities-saved>1</entities-saved>
   <entities-updated>0</entities-updated>
   <entities-created>1</entities-created>
</entity-import-report>

 

esimerkit rajapinta

Was this article helpful?

Yes
No
Give feedback about this article

Table of Contents

Related Articles

  • Web- API kuvaus
  • WebAPI virheet

Copyright 2026 – Matrix42 Professional.

Matrix42 homepage


Knowledge Base Software powered by Helpjuice

0
0
Expand