Ikt Fagforum - Presentasjon Av Autentiseringsprosjektet

457 views

Published on

Kort gjennomgang av åpne tekniske komponenter som er blitt benyttet i prosjektet "autentiseringsløsning for Helsebiblioteket" (I&AM for Helsebiblioteket).
Intern presentasjon for IKT-avdelingen i Kunnskapssenteret.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
457
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ikt Fagforum - Presentasjon Av Autentiseringsprosjektet

  1. 1. I&AM for Helsebiblioteket Leif Torger, ikt
  2. 2. <ul><li>Hovedpunkter </li></ul><ul><ul><li>Innblikk i tekniske komponenter, rammeverk og programkode </li></ul></ul><ul><ul><li>Hvordan kan man dra nytte av arbeidet som er gjort hittil i prosjektet </li></ul></ul><ul><ul><li>Erfaringer med bruk av de ulike tekniske komponentene </li></ul></ul>
  3. 3. Innblikk i tekniske komponenter, rammeverk og programkode <ul><li>Apache Axis 2 </li></ul><ul><ul><li>En åpen “webservice motor” </li></ul></ul><ul><ul><li>Muliggjør kommunikasjon mellom plugins i EVS og tjenester eksternt gjennom bruk av webservices </li></ul></ul><ul><ul><li>Eksempler på bruk </li></ul></ul><ul><ul><ul><li>RegisterUserController.java </li></ul></ul></ul><ul><ul><ul><li>registeruser-controller-plugin.xml </li></ul></ul></ul><ul><ul><ul><li>UserServiceWeb.java </li></ul></ul></ul><ul><ul><ul><li>BasicWebsevice.java </li></ul></ul></ul><ul><ul><ul><li>UserServiceImpl </li></ul></ul></ul>
  4. 4. Innblikk i tekniske komponenter, rammeverk og programkode <ul><li>Ibatis </li></ul><ul><ul><li>Et ORM verktøy, finnes for java og .net </li></ul></ul><ul><ul><li>Legger ingen begrensninger på bruk av proprietære databaseoperasjoner ved behov </li></ul></ul><ul><ul><li>Støtte for cacheing </li></ul></ul><ul><ul><li>All konfigurasjon skjer vha XML </li></ul></ul><ul><ul><li>God støtte for konfigurasjon via Spring </li></ul></ul><ul><ul><li>Eksempler på bruk </li></ul></ul><ul><ul><ul><li>applicationcontext.xml </li></ul></ul></ul><ul><ul><ul><li>sqlmap-config.xml </li></ul></ul></ul><ul><ul><ul><li>no.helsebiblioteket.admin.sqlmapdao.sql.xyz.xml </li></ul></ul></ul><ul><ul><ul><li>SqlMapUserDao.java </li></ul></ul></ul>
  5. 5. Innblikk i tekniske komponenter, rammeverk og programkode <ul><li>Junit </li></ul><ul><ul><li>Er et testrammeverk </li></ul></ul><ul><ul><li>Muliggjør testing via f.eks. ANT </li></ul></ul><ul><ul><li>Eksempler på bruk </li></ul></ul><ul><ul><ul><li>LoginServiceTests.java </li></ul></ul></ul>
  6. 6. Innblikk i tekniske komponenter, rammeverk og programkode <ul><li>EHCache ehcaCHE </li></ul><ul><ul><li>Er et cacherammeverk (doh) </li></ul></ul><ul><ul><li>Eksempler på bruk </li></ul></ul><ul><ul><ul><li>LinkFilterPlugin.java </li></ul></ul></ul><ul><ul><ul><li>link-filter-plugin.xml </li></ul></ul></ul><ul><ul><ul><li>UrlServiceWeb.java </li></ul></ul></ul><ul><ul><ul><li>BasicWebService.java </li></ul></ul></ul><ul><ul><ul><li>CacheHelper.java </li></ul></ul></ul><ul><ul><ul><li>CacheKey.java </li></ul></ul></ul><ul><ul><ul><li>ehcache-helsebiblioeket.xml </li></ul></ul></ul>
  7. 7. Innblikk i tekniske komponenter, rammeverk og programkode <ul><li>Apache ANT </li></ul><ul><ul><li>Byggeverktøy </li></ul></ul><ul><ul><li>Løst integrert med Eclipse </li></ul></ul><ul><ul><li>Støtter også kjøring av Junit tester </li></ul></ul>
  8. 8. Innblikk i tekniske komponenter, rammeverk og programkode <ul><li>Eclipse </li></ul><ul><ul><li>Alle kjenner dette </li></ul></ul><ul><ul><li>Utgangspunkt: Eclipse ganymede “for java developers” eller “for java ee developers” </li></ul></ul><ul><ul><li>Tilleggskomponenter: Støtte for SVN </li></ul></ul>
  9. 9. Innblikk i tekniske komponenter, rammeverk og programkode <ul><li>Pakkestruktur og strukturering av kildekodeinndeling </li></ul><ul><ul><li>Programkode inndelt flere eclipseprosjekter </li></ul></ul><ul><ul><ul><li>helsebiblioteket-domain-dao-services </li></ul></ul></ul><ul><ul><ul><li>helsebiblioteket-administration-web </li></ul></ul></ul><ul><ul><ul><li>helsebiblioteket-importexport </li></ul></ul></ul><ul><ul><ul><li>helsebiblioteket-services-impl </li></ul></ul></ul><ul><ul><ul><li>helsebiblioteket-sqlmapdao </li></ul></ul></ul><ul><ul><ul><li>helsebiblioteket-sso </li></ul></ul></ul><ul><ul><ul><li>helsebiblioteket-test </li></ul></ul></ul>
  10. 10. Innblikk i tekniske komponenter, rammeverk og programkode <ul><li>Grafisk profil, layout og design </li></ul><ul><ul><li>100% gjenbruk av standard mal fra yaml, http://www.yaml.de/en/ </li></ul></ul>
  11. 11. Hvordan kan man dra nytte av arbeidet som er gjort hittil i prosjektet <ul><li>All kildekode tilgjengelig eksternt via google code – alle har tilgang til alt </li></ul><ul><ul><li>http://code.google.com/p/kunnskapssenteret/source/checkout </li></ul></ul><ul><ul><li>Hent ut prosjektene i eclipse, trykk <ctrl+r>, søk frem de ulike programkomponentene som listes opp høyre opp i presentasjonen. </li></ul></ul><ul><li>Spør meg om hva som helst på mail: [email_address] : ) </li></ul>
  12. 12. Noen erfaringer fra prosjektet <ul><li>Ibatis </li></ul><ul><li>God struktur på spørringer </li></ul><ul><li>God konfigurasjonsstøtte </li></ul><ul><li>God integrasjonsstøtte </li></ul><ul><li>Ingen begrensinger på skreddersydde spørringer </li></ul><ul><li>Ingen utfordringer i forhold til ytelse så langt </li></ul>
  13. 13. Noen erfaringer fra prosjektet <ul><li>Apache Axis 2 </li></ul><ul><li>Noen overraskelser underveis: Manglende støtte for overføring av lister, det kreves bruk av arrays. Manglende støtte for java 5 generics. </li></ul><ul><li>Mulighet for konfigurasjon via Spring </li></ul><ul><li>Anbefaler å vurdere andre rammeverk som f.eks “Apache CXF” dersom webservices skal benyttes i senere prosjekter </li></ul>
  14. 14. Noen erfaringer fra prosjektet <ul><li>EHCache </li></ul><ul><li>Gode konfigurasjonsmuligheter </li></ul><ul><li>Enonic benytter ehcache og de krever at man benytter samme versjon av rammeverket som de benytter ved bruk sammen med EVS. </li></ul><ul><li>Anbefales brukt i alle java applikasjoner som vi lager </li></ul>
  15. 15. Noen erfaringer fra prosjektet <ul><li>JUnit </li></ul><ul><li>Virker bra, anbefales brukt alle steder det er behov for testing </li></ul>
  16. 16. Noen erfaringer fra prosjektet <ul><li>Apache ANT </li></ul><ul><li>Har støttet alt vi har hatt behov for I forhold til bygging, utrulling og testing </li></ul><ul><li>Har ingen innebygget støtte for versjonering av bibliotekter som benyttes i prosjektene, dette kunne vi hatt behov for </li></ul>
  17. 17. Noen erfaringer fra prosjektet <ul><li>Eclipse </li></ul><ul><li>Man kan ikke uten videre bytte IDE når utviklingsprosjektene er opprettet som “eclipse prosjekter”. Noe som burde vurderes til senere er å se på alternativer som f.eks. å benytte Maven som byggeverktøy og så la Maven opprette eclipseworkspace eller andre typer workspaces ved behov (Eks. Netbeans, IntellijIDE, andre) </li></ul>

×