HW17

Last modified by superadmin on 2018-01-12 20:29

HW17 - Lietotāju direktorija kā Web Serviss

Var pieņemt, ka lietotāju dati uz kāda Linux Web servera glabājas OpenLDAP serverī (vai arī lietotāji ir regjistrējušies kā XWiki) lietotāji. Jūsu uzdevums ir projektēt un implementēt JAX-WS (vai Axis2) Web servisu, kurš ļautu šos lietotāju datus integrēt arī ar citām Web aplikācijām un darbināt to uz Tomcat web-servera. 

Webservisa metožu projektējumu varat izvēlēties paši, bet būtu vajadzīgas sekojošas funkcijas:

  1. authenticateUser() - pārbauda, vai lietotājs ar doto lietotājvārdu un paroli ir regjistrējies šajā sistēmā. Metode atgriež "true" vai "false". 
  2. addUser() - pievieno lietotāju, kuram norādīts vārds, uzvārds, logins, parole un e-pasts. Attiecīgās "User" klases implementēšana ir atstāta Jūsu ziņā (tā var būt vienkārša Java bean komponente ar 5 atribūtiem un get/set metodēm). Atkarībā no XWiki un LDAP konfigurācijas īpatnībām, web-servisa logjikai var būt jānodrošina, lai logins un e-pasts būtu unikāli - t.i. nebūtu divu ierakstu ar vienādiem loginiem/e-pastiem. Var būt arī jāvalidē šo lauku vērtības - validēšanas nosacījumi sakrīt ar XWiki (t.i. vārds, uzvārds nevar būt pārāk gari, utml.)
  3. updateUser() - saglabājot login vārdu, maina citus lietotāja datus. Vajadzīgos parametrus var sistēmai padot kā "User" objektu. Šī komanda neko nemaina, ja padotie dati nav validējami vai arī norādītais (jaunais) e-pasts sistēmā jau eksistē. 
  4. resetUserPassword() - esošo paroli aizstāj ar nejauši gjenerētu (Automātiski gjenerētā parole satur 64 ASCII simbolus - 26 lielos un 26 mazos angļu alfabēta burtus, 10 ciparus, kā arī simbolus "+" un "/"). Šī metode jauno paroli atgriež izsaucējam.
  5. emailPassword() - gadījumā, ja Web-serviss neuzticas aplikācijai, kura pieprasa pārmainīt lietotāja paroli, tad šī metode atgriež vienīgi sekmīga rezultāta apstiprinājumu, bet jauno paroli izsūta lietotājam, izmantojot "postfix" SMTP servisu.

Piezīme: Sk. http://java-eim.googlecode.com/svn/trunk/java-eim-demo-miscellaneous - šajā Javas projektā ir atrodams piemērs e-pasta izsūtīšanai no Javas programmas (izmanto arī JAR bibliotēkas no blakus projekta "java-eim-maven-lib"). 

Tags:
Created by Kalvis Apsītis on 2007-10-24 14:03
    
This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 6.4 - Documentation