CMS - od podstaw (J2EE + Oracle)

0

Witam,

postaram się krótko. Założenia:
Mam napisać CMS, wykorzystanie Javy + ew. inne elementy (nie PHP)
Dane przechowywane w bazie Oracle 11g
System dla studentów archeologii.
Dwie rzeczy do zrobienia:

  1. Strona internetowa, wyświetlająca artykuły (czyli to co wstawią studenci w 2.)
  2. zaplecze, z możliwością wstawiania artykułów (podział na kategorie), do artykułu można dołączyć różne multimedia, np. obrazy, archiwalne filmiki (mają się odpalać na stronie). artykuł może posiadać linki do innych artykułów.

Proszę o komentarz i uzupełnienie, ew. totalną rewolucję mojego rozwiązania:
w będzie bazie: tabela: multimedia (obrazy,filmy,audio i inne)
artykuły (myślę, żeby zrobić w formacie XML (sekcje takie same jak w .css )
multimedia_w_artykule (czyli do artykulu dolaczone konkretne obrazki i inne)

na serwerze plik XSL, który zamieni artykuł pobrany z bazy (XML) na HTML.
ale to bedzie tylko czysty tekst - Jak mogę dorzucić później te obrazki?? bo po odpaleniu xslt transformacji otrzymam od razu html ???

jak odpalić stronę z tymi artykułami? załozmy że główna to będzie servlet, który pobiera xml ze stroną główną, i teraz jak? zapisać do pliku .html i zrobić forward do tego pliku, czy można jakoś bardziej w locie?
a jak z cachowaniem takiego pliku?
czy ma sens generowanie takiej strony za każdym razem?!

a jak realizować linki? bo jak generuje najpierw główną, są na niej linki do następnych artykułów (to jak to zapisać na stronie, jako wywołanie ponowne servletu, który pobierze np. id_artykulu który został wybrany i znów ygeneruje stronę itd.. ??? )

teraz takie pytania:

  1. co jest głupiego w tym rozwiązaniu?
  2. wskazówki jak ładnie z tego zrobić MVC, które elementy co powinny robić
  3. cokolwiek - proszę o wsparcie merytoryczne :)

pozdr.

0
carmen007 napisał(a)

na serwerze plik XSL, który zamieni artykuł pobrany z bazy (XML) na HTML.
ale to bedzie tylko czysty tekst - Jak mogę dorzucić później te obrazki?? bo po odpaleniu xslt transformacji otrzymam od razu html ???

No jak zdefiniujesz taka transformacje to otrzymasz HTML, ale HTML ma tylko linki do obrazkow i innych flashow. Zakladam ze media bedziesz chowal w bazie / na dysku w plikach - zatem musialbys zrobic cos takiego, ze linki do mediow w HTML kierowane bylyby do specjalnego servletu, ktory by jakos na podstawie parametrow pobieral dane obrazka / filmu / flasha z bazy danych / systemu plikow i wysylal go do klienta. W ten sposob klient (przegladarka) pobierze HTML ktory wygenerowales za pomoca XSLT, i w tle bedzie tez pobierac media za pomoca linkow ktore skieruja do servlety o ktorym pisalem.
Cos takiego juz ktos pytal na forum, zdaje sie ze Koziolek opowiadal mniej wiecej jak zrobic taki servlet, poszukaj.

0

W Javie robi się to zupełnie inaczej.

Do budowania dynamicznych stron używa się JSP lub JSF, a nie xslt.

W JSP wystarczy, że pobierzesz z bazy listę artykułów do wyświetlenia, ustawisz ją na atrybucie "artykuly" i zrobisz coś takiego:

<c:forEach items="${artykuly}" var="artykul">
  <div class="artykul">
    <c:out value="${artykul.tresc}"/>
  </div>
</c:forEach>

Jeżeli chodzi o pliki multimedialne, to możesz zrobić servlet z odpowiednim mapowanie (np *.jpg).
Servlet ten musi:
-odnaleźć odpowiedni plik w bazie
-ustawić content type
-ustawić content length
-zapisać cały plik do strumienia wyjściowego
-zrobić flush()

0

hi guys :)

dzięki za odp.!! :)

tylko kwestia jest taka, że jak będę chciała rozszerzyć możliwości graficzne strony i np. zapodać kilka szablonów artykułów (więc posiadałyby różne części) to przechowywanie wszystkich możliwych opcji w tabeli bazy to tak niezbyt.
a tak byłby np. szablon z 5 częściami i xml z elementami odpowiednimi elementami dla odp. szablony. ale w sumie xslt nie jest potrzebne, bo faktycznie po prostu mogę odpowiednie elementy wyciągać z tych xml-i

jak się faktycznie realizuje zapis artykułów na serwisach (z cms, z różnymi szablonami artykułów)?

0
__krzysiek85 napisał(a)

W Javie robi się to zupełnie inaczej.

Jeżeli chodzi o pliki multimedialne, to możesz zrobić servlet z odpowiednim mapowanie (np *.jpg).
Servlet ten musi:
-odnaleźć odpowiedni plik w bazie
-ustawić content type
-ustawić content length
-zapisać cały plik do strumienia wyjściowego
-zrobić flush()

mógłbyś to dokłądniej wytlumaczyć?

  1. mapowanie w pliku .moj-servlet.xml (url-pattern *.jpg -> imgController)
  2. a jak ze strumieniami?
    jak powinnien wyglądac kod tego controllera??

pomóżcie błagam...
bardzo wazne ;/

1 użytkowników online, w tym zalogowanych: 0, gości: 1