Praca Dyplomowa Inżynierska Michał Breiter

Praca Dyplomowa Inżynierska Michał Breiter

Rok akademicki 2014/2015 Politechnika Warszawska Wydział Elektroniki i Technik Informacyjnych Instytut Informatyki PRACA DYPLOMOWA INŻYNIERSKA Michał Bogusław Breiter Aplikacja do przeglądania i edycji Java Content Repository z wykorzystaniem platformy NetBeans Opiekun pracy dr inż. Łukasz Skonieczny Ocena: ..................................................... ................................................................. Podpis Przewodniczącego Komisji Egzaminu Dyplomowego 1 Kierunek: Informatyka Specjalność: Inżynieria Systemów Informatycznych Data urodzenia: 1991.04.09 Data rozpoczęcia studiów: 2010.10.01 Życiorys Urodziłem się 9 kwietnia 1991 roku w Warszawie. W 2010 roku ukończyłem Liceum Ogólnokształcące nr LI im. T. Kościuszki. W październiku 2010 roku rozpocząłem studia na Wydziale Elektroniki i Technik Informacyjnych Politechniki Warszawskiej. W trakcie studiów wybrałem specjalizację Inżynieria Systemów Informatycznych prowadzoną przez Instytut Informatyki. ....................................................... Podpis studenta EGZAMIN DYPLOMOWY Złożył egzamin dyplomowy w dniu ..................................................................................2015 r z wynikiem ................................................................................................................................... Ogólny wynik studiów: ................................................................................................................ Dodatkowe wnioski i uwagi Komisji: .......................................................................................... ....................................................................................................................................................... ....................................................................................................................................................... 2 STRESZCZENIE Praca prezentuje proces tworzenia aplikacji wspomagającej zarządzanie repozytoriami Java Content Repository z wykorzystaniem platformy NetBeans. Przedstawiono najważniejsze cechy użytych technologii - Java Content Repository oraz platformy NetBeans. Opisano konkurencyjne rozwiązania istniejące na rynku. Zdefiniowano najważniejsze wymagania postawione tworzonej aplikacji oraz typowe przypadki użycia. Zaprezentowana została architektura aplikacji, podjęte decyzje projektowe oraz opisano końcowy wynik pracy. Słowa kluczowe: Java Content Repository, JCR, JSR 170, JSR 283, NetBeans, Repozytorium Java Content Repository management application developed using NetBeans Platform This paper describes process of creating Java Content Repository management application developed using NetBeans Platform. Used technologies – Java Content Repository and NetBeans Platform are introduced. The thesis contains a short review of available solutions and their capabilities and describes requirements and use cases for developed application. Finally, application's architecture, design decisions and final result are presented. Keywords: Java Content Repository, JCR, JSR 170, JSR 283, NetBeans, Repository 3 Spis treści 1 Wprowadzenie.....................................................................................................................6 1.1 Wstęp...........................................................................................................................6 1.2 Cel pracy......................................................................................................................6 1.3 Układ Pracy.................................................................................................................6 2 Java Content Repository......................................................................................................8 2.1 Model repozytorium....................................................................................................9 2.2 Typy węzłów.............................................................................................................10 2.3 Dostępne implementacje............................................................................................11 2.3.1 Jackrabbit...........................................................................................................11 2.3.2 ModeShape........................................................................................................11 2.3.3 Adobe Digital Enterprise Platform....................................................................11 3 Platforma NetBeans...........................................................................................................13 3.1 Najważniejsze biblioteki............................................................................................13 3.1.1 System modułów................................................................................................13 3.1.2 System okien......................................................................................................14 3.1.3 Lookup...............................................................................................................17 3.1.5 System projektów...............................................................................................19 3.2 Alternatywy...............................................................................................................21 3.2.1 Eclipse................................................................................................................21 4 Istniejące rozwiązania.......................................................................................................23 4.1 Subshell Toromiro.....................................................................................................23 4.2 JCRController/Connector..........................................................................................24 4.3 Aplikacja Marcina Janickiego...................................................................................25 4.4 JCR-Explorer.............................................................................................................25 4 Analiza funkcjonalna.........................................................................................................27 4.1 Aktorzy......................................................................................................................27 4.2 Dziedzinowy słownik pojęć.......................................................................................27 4.3 Wymagania funkcjonalne..........................................................................................27 4.4 Wymagania niefunkcjonalne.....................................................................................28 4.5 Przypadki użycia........................................................................................................28 5 Architektura aplikacji........................................................................................................32 5.1 Podział na moduły.................................................................................................32 4.2 RepositoryProjectType.........................................................................................33 5.3 NodeTypeExplorer................................................................................................36 5.4 Search....................................................................................................................36 5.5 NodeEditor............................................................................................................37 5.6 NodeVersion.........................................................................................................38 5.7 Utils.......................................................................................................................38 6 Decyzje projektowe...........................................................................................................39 6.1 Połączenie z repozytorium.........................................................................................39 6.2 Zarządzanie zmianami...............................................................................................40 6.3 Dostęp do sesji...........................................................................................................40 6.4 Przechowywanie stanu...............................................................................................41 6.5 Zarządzanie modyfikacjami.......................................................................................42 6.6 Zapis zmian................................................................................................................43 6.7 Informowanie o błędach............................................................................................44 4 6.8 Wersje językowe........................................................................................................45 6.9 Wyświetlanie węzłów................................................................................................46 7 Podsumowanie...................................................................................................................48 8 Bibliografia........................................................................................................................49 9 Wykaz ilustracji z zewnętrznych źródeł............................................................................50 5 1 Wprowadzenie 1.1 Wstęp W dzisiejszych czasach aplikacje często muszą przechowywać znaczą

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    50 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us