webForumDet fria alternativet

Projekt på gång, Struts, Spring och Hibernate

20 svar · 1 119 visningar · startad av Compusa

CompusaMedlem sedan jan. 20023 327 inlägg
#1

Jag ska utveckla en hemsida med webshop åt ett nystartat företag. I mitt tidigare projekt utvecklade jag en blog och till denna skapade jag mitt egna framework som skulle kunna ses som en light-version av Struts. Hur som helst, nu tänkte jag passa på att lära mig att använda några etablerade frameworks i samband med detta projekt. Dessvärre verkar det vara en enorm djungeln det här: JSF, Struts, Tapestry, Spring, Webworks, Hibernate för att bara nämna några.

Jag funderar starkt på kombinationen: Struts, Spring och Hibernate, men jag kanske är helt fel ute? Jag känner mig lite vilsen så om det finns någon här som kan vägleda mig lite så skulle detta uppskattas enormt mycket :)

spangoMedlem sedan juni 20008 205 inlägg
#2

Spring och Hibernate är väl rätt standard så kör på dem, men WebWork är bättre än Struts (och Struts 2 kommer att bygga på WebWork, så övergången blir enklare).

CompusaMedlem sedan jan. 20023 327 inlägg
#3

Har även sett att Spring har ett mvc-ramverk. Något du känner till? I så fall blir det Spring och Hibernate. Fast man kanske ska köra på Webwork som du säger och på så vis lära sig ytterligare ett ramverk och förbereda sig på Struts 2.

Laddade hem ett gratis kapitel från denna sida:
http://sourcebeat.com/books/springlive.html

Verkar vara bra för att komma igång och använda ramverken, just nu känns det som jag har hur mycket som helst att lära mig :)

dAEkMedlem sedan feb. 20041 816 inlägg
#4

Jag slår ett slag för frameworket Wicket! Det är inte så himla etablerat ännu men jag tror att det kommer att bli det. Kanske inte för de allra tyngsta enterprise-applikationerna men för små, mellan och mellan-stora projekt iaf, där känns det nästan givet. Nu ska man kanske inte jämföra W med Struts eftersom de är olika bra beroende på vad man bygger, men man slipper en massa overhead i starten med W och man är betydligt mer produktiv. Det krävs viss (ahem) xml-config för att komma igång med Struts, som enligt mig lämpar sig bättre till mer statiska sidor medan Wicket ser ut att passa dynamiska, interaktiva sidor bättre. Ta mig inte på orden bara för jag har ingen vidare erfarenhet här (ännu).

Det går att blanda in bl.a. EJB, Hibernate och Spring om man vill. Jag håller på och leker med EJB 3.0 och Wicket just i skrivande stund faktiskt. :)

/r F.ö. tror jag stenhårt på komponentbaserade frameworks.

spangoMedlem sedan juni 20008 205 inlägg
#5

Compusa skrev:

Har även sett att Spring har ett mvc-ramverk. Något du känner till?

Jovars, har inte använt det själv men det ska tydligen vara bra.

CompusaMedlem sedan jan. 20023 327 inlägg
#6

dAEk skrev:

Jag slår ett slag för frameworket Wicket! Det är inte så himla etablerat ännu men jag tror att det kommer att bli det. Kanske inte för de allra tyngsta enterprise-applikationerna men för små, mellan och mellan-stora projekt iaf, där känns det nästan givet.

Tack för tipset, dAEk. Skummade igenom lite exempel och det kändes som de använd en event-lösning liknande asp.net. Helt klart ett intressant ramverk men tyvärr kändes det inte som jag tjänar så mycket på att använda detta ramverket, istället för mitt egna lilla hobby-ramverk.

spango skrev:

Jovars, har inte använt det själv men det ska tydligen vara bra.

Jag tittade lite på Webwork och det kändes hur stort som helst. Känns som att det kommer ta mig ett bra tag innan jag får ordning på installationen. Att sedan få det att fungera tillsammans med Spring kändes inte heller det helt enkelt. Mycket sugen på att testa Webwork, Spring och Hibernate men det känns som man får lägga en vecka eller två innan man har allt installerat och konfigurerat.

Blir lätt att man tänker, äh jag skippar frameworks och kör en egen lösning. Får försöka googla lite och se om jag hittar någon bra guide. En av anledningarna till att jag vill använda etablerade ramverk är för att det säkerligen kan vara en fördel när man är klar med sin utbildning och ska söka jobb.

dAEkMedlem sedan feb. 20041 816 inlägg
#7

Vad tycker du att Struts ger dig som inte Wicket kan ge?
(inte för att du behöver svara eller så, jag har bara lite svårt att se det du ser. ;))

Compusa skrev:

En av anledningarna till att jag vill använda etablerade ramverk är för att det säkerligen kan vara en fördel när man är klar med sin utbildning och ska söka jobb.

Mjo, det är ju sant. Själv hoppas jag slippa Struts nu när jag fått upp ögonen för hur mkt mer produktiv man kan vara med andra ramverk. Jag har inte kollat på Struts 2 iofs...

CompusaMedlem sedan jan. 20023 327 inlägg
#8

dAEk skrev:

Vad tycker du att Struts ger dig som inte Wicket kan ge?
(inte för att du behöver svara eller så, jag har bara lite svårt att se det du ser. ;))

Det kändes lite som att upplägget för hur man implementerade sina sidor skiljde sig lite. I mitt ramverk använde jag mig av Command-objekt liknande de Action-objekt som används i Struts. Jag fick intrycket av att Wicket kändes lite "fattigt", dvs jag hittade ingen information om formulär-validering osv.

dAEk skrev:

Mjo, det är ju sant. Själv hoppas jag slippa Struts nu när jag fått upp ögonen för hur mkt mer produktiv man kan vara med andra ramverk. Jag har inte kollat på Struts 2 iofs...

Jo jag hört mycket negativt om Struts gällande allt pillande i XML-filer osv. Förhoppningsvis blir Struts 2 bättre.

Mitt problem är lite var jag ska börja. Känns som om jag kommer ta död på mig själv om jag försöker installera allt på en gång. Jag använder Eclipse som IDE, men jag har inte rikigt koll på hur jag ska få hela tjofrästet att fungera. Just nu känns det som en djungel av jar-filer, xml-filer och path-variabler som konfigureras för att få allt att fungera.

CompusaMedlem sedan jan. 20023 327 inlägg
#9

Tror faktiskt jag är på gång med Spring, har i alla fall installerat pluginen SpringIDE i Eclipse.

spangoMedlem sedan juni 20008 205 inlägg
#10

Compusa skrev:

Jag tittade lite på Webwork och det kändes hur stort som helst. Känns som att det kommer ta mig ett bra tag innan jag får ordning på installationen.

Kör man Webwork-JAR:en kan den generera hello world-webapp åt en, sen kan man roa sig med att ta bort alla libbar och sen lägga tillbaks dem en efter en så att man får en maximalt minimal grund som man kan bygga vidare på. När man väl har det klart kan man jobba sig vidare därifrån med dokumentationen. Det är lite insteg men är på det stora hela enklare och bekvämare än Struts 1. Men är du igång med Spring så är det väl bara att kötta vidare på det.

dAEkMedlem sedan feb. 20041 816 inlägg
#11

Compusa skrev:

Det kändes lite som att upplägget för hur man implementerade sina sidor skiljde sig lite.

Mjo, det finns inte så många likheter alls. Struts har jag byggt 2 applikationer med: en Webshop (skoluppgift) och ett personligt projekt som jag lade ner. Det jag läst och provat med Wicket hittills har överträffat mina förväntningar och det med råge. Nu tänker jag inte försöka sälja in dig på Wicket eftersom jag egentligen har för lite praktisk erfarenhet av de olika MVC-ramverken att göra en hyfsat god bedömning.

Compusa skrev:

Mitt problem är lite var jag ska börja. Känns som om jag kommer ta död på mig själv om jag försöker installera allt på en gång. Jag använder Eclipse som IDE, men jag har inte rikigt koll på hur jag ska få hela tjofrästet att fungera. Just nu känns det som en djungel av jar-filer, xml-filer och path-variabler som konfigureras för att få allt att fungera.

Det ska hänga med en basic/default/tom Struts-appl. när du drar ner filerna eller om det fanns ett alternativ på sidan.. Struts-blank.war eller nåt sånt tror jag du ska kolla efter. Den innehåller de xml-filer och libraries som behövs för ett simpelt projekt. Smidigt och bra att utgå ifrån när man vill komma igång.

Jag hade väntat med templating-systemet. Väljer du Tiles, vilket är en del av Struts, innebär det ännu en XML-fil... Hibernate kanske du kan vänta med också tills dess att du fått grepp om MVC-ramverket, annars är risken stor att du kommer drunkna i havet av xml-filer.

Slutsvammel: På pappret väger Struts tyngre än de mindre och nyare uppstickare till MVC-ramverk gör men det är också betydligt krångligare att jobba med. När man väl fått igång Struts är det inte så himla tokigt att jobba med även om det kunde vara mkt trevligare.

CompusaMedlem sedan jan. 20023 327 inlägg
#12

Tack för alla goda råd! :)

Nu får det bli så här:
1. Få igång Webwork och lära sig grunderna om detta
2. Integrera Spring med Webwork
3. Hibernate

Jag har börjat sätta upp ett projekt med Eclipse och importerat filer enligt specifkationerna i en guide. Försöker göra min första webwork Action och importera interfacet: com.opensymphony.xwork.Action

Eclipse klagar dock på att paketet com.opensymphony vilket jag tycker är skumt eftersom jag har importerat xwork.jar till /WEB-INF/lib/.

spangoMedlem sedan juni 20008 205 inlägg
#13

Det löser iofs inte ditt problem, men det är bättre att ens action ärver från ActionSupport :) Egentligen behöver den inte ärva nånting alls, så länge den har en public String execute() (WW kör på reflection), men ärver man ActionSupport får man en massa gratishjälp av IDE:n (eftersom man automatiskt får tillgång till vilka metoder man ska överskugga, konstanter som SUCCESS etc).

CompusaMedlem sedan jan. 20023 327 inlägg
#14

He he okej :)
Tänkte bara försöka få igång ett enkelt exempel men av någon anledning hittar inte Eclispe jar-filerna trots att de finns i mitt projekt. Har kanske glömt någon enkel detalj. Kan ej komma på vad för tillfället.

CompusaMedlem sedan jan. 20023 327 inlägg
#15

Löste det genom att lägga till xwork.jar även i min buildpath. Behöver man göra detta med alla jar-filerna? Förnärvarande ligger de bara i min lib-mapp. Dags att leka vidare, har egentligen massa viktigare saker att göra ;)

CompusaMedlem sedan jan. 20023 327 inlägg
#16

Skam den som ger sig! Nu har jag lyckats driftsätta min första enkal applikation med Webwork :)

Lär säkert återkomma med lite n00b-frågor

CompusaMedlem sedan jan. 20023 327 inlägg
#17

/fel

spangoMedlem sedan juni 20008 205 inlägg
#18

Compusa skrev:

Löste det genom att lägga till xwork.jar även i min buildpath. Behöver man göra detta med alla jar-filerna?

Bara de som direkt refereras från koden. Resten kan man låta vara.

jmeMedlem sedan maj 20012 237 inlägg
#19

Jag gillar webwork skarpt. :)

Lite OT: men när ni nu ändå har nämnt Hibernate så.

Jag har haft lite problem med att få Hibernate att fungerra korrekt med Spring och Webwork. Själva problemet är att jag vill koppla alla transaktioner i applicationContext.xml (Spring) men jag får LazyInitializationException då jag försöker hämta en Collection från databasen.

Finns det någon här som har lyckats att knippa ihop Spring, Webwork 2 och Hibernate 3? Jag skulle gärna ta emot ett fungera exempel som jag kan testa och lära mig från.

CompusaMedlem sedan jan. 20023 327 inlägg
#20

jme: Du skulle ju kunna testa att installera AppFuse med den kombinationen du nämde. Ska tydligen vara busenkelt att skapa en exempel applikation med hjälp av ant. Du borde kunna kolla på denna applikation för att se hur de har gjort?

Ska själv testa att få igång AppFuse snart, verkar hur grymt som helst :)

136 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)