Toon posts:

[Java] Welke framework voor WebApps? *

Pagina: 1
Acties:
  • 208 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik ontwikkel momenteel web-applicatie's voor bedrijven, dit zijn opdrachten die ongeveer 300 tot maximaal 500 uur werk zijn (voor een gemiddelde programmeur zoals ik). Na slechte ervaringen met JSF (waar ik naar over wilde stapen omdat ik genoeg van PHP kreeg) was ik weer terug gestapt naar php.

De webapplicaties die ik ontwikkel hou ik graag gecentraliseerd (eenvoudig te beheren), en bied ik aan meerdere bedrijven/clienten aan! Ze zijn ook allemaal samen op de zelfde framework en componentenset gebaseerd (waar ik met template's de output aanpas). Zo geniet iedereen van elke update. (het heeft ook nadelen, magoed).

Elke domain/klant heeft zijn eigen instellingen (tot welke module's hebben ze toegang) en systeem zoekt of klant een eigen template set heeft voor componenten / layout.

Het volgende word door de huidige framework in php afgehandelt:

- Modulair werken (elke module bevat meerdere actie's), per actie kunnen aangeven of authenticatie is vereist of niet.
- layouts kunnen bouwen en daaraan componenenten kunnen toevoegen (3 column, en aan elke column een component toevoegen).
- component gebaseerd view's opbouwen (wil ook zelf componenten kunnen schrijven), bijvoorbeeld ik wil eenvoudig array's aan een table component kunnen geven, en dat er automatische een sort/searchable table word gegenereerd!
- utilities kunnen schrijven/gebruiken ( dat ik eigen database wrapper kan maken die automatische versie beheer doet bijvoorbeeld ).

Ik heb dit al in php geschreven, maar ik wil graag werken op een framework wat door veel mensen word uitgebreid, onderhouden en verbeterd!

Hieronder dit alles grafische weergegeven:

Afbeeldingslocatie: http://www.advany.com/Framework.gif

Waarom ik een java framework zoek is omdat er aantal libary's en oplossingen zijn zoals lucene die ik ook graag binnenkort wilt gebruiken.

Kortom, wie heeft voor mij aanbeveligingen welke framework ik moet kiezen die het bovenstaande ondersteund? en eventueel of ik het anders kan aanpakken.

ik heb het volgende lijstje ( http://www.darwinsys.com/javawebframeworks/listframeworks.do ) doorgenomen, maar heb tot nu toe niks gevonden wat paste : (

[ Voor 4% gewijzigd door Verwijderd op 05-12-2004 00:56 ]


  • KurtDB
  • Registratie: Juni 2004
  • Laatst online: 13-05 09:19
Ik denk dat je eerder 'n combinatie van frameworks zoekt ipv 1 groot framework. (immers de kracht van de j2ee frameworks ligt net in 't feit dat ze zo light-weight mogelijk zijn)

Ik zou zo op 't eerste zicht al de volgende frameworks aanduiden:

- jakarta struts (ofwel de MVC binnen spring)
- servlets
- java beans / dynabeans (eventueel binnen spring)
- junit (uiteraard unit testing niet vergeten)
- jsp's of 'n templating framework als velocity
- hibernate (voor je object/relational mapping)
- spring of ejb's (hangt ervan af hoe groot je applicatie is, zodus of je echt ejb's nodig hebt)

Verwijderd

KurtDB schreef op zondag 05 december 2004 @ 02:02:
Ik denk dat je eerder 'n combinatie van frameworks zoekt ipv 1 groot framework. (immers de kracht van de j2ee frameworks ligt net in 't feit dat ze zo light-weight mogelijk zijn)

Ik zou zo op 't eerste zicht al de volgende frameworks aanduiden:

- jakarta struts (ofwel de MVC binnen spring)
- servlets
- java beans / dynabeans (eventueel binnen spring)
- junit (uiteraard unit testing niet vergeten)
- jsp's of 'n templating framework als velocity
- hibernate (voor je object/relational mapping)
- spring of ejb's (hangt ervan af hoe groot je applicatie is, zodus of je echt ejb's nodig hebt)
voor MVC zou ik eerder XWork + WebWork2 kiezen...
Ik doe dagelijks Struts en thuis beetje WebWork en ik zie echt wel voordelen (testability onder andere).
En met WebWork komt ook een CoolUriServletDispatcher zoals je vroeg. (http://www.jdocs.com/webw...UriServletDispatcher.html)

Security kun je Acegi gebruiken (als je Spring gaat gebruiken). Of Seraph (http://opensource.atlassian.com/seraph/) naargelang je behoeften. (eerlijk gezegd ken ik enkel deze opties en heb ik met geen van beiden ervaring, wij hebben een custom security engine).

Voor je layout (3 columns, whatever, gelijk hoe je het wil) Sitemesh. Sitemesh kijkt naar de pagina die je opvraagt (die dan enkel de middelste kolom bevat) en zet daar een template rond. Dus je vraagt localhost/content/blablabla.jsp en dan wordt er simpelweg content omheen gezet (decorator pattern). Als je blablabla.jsp een head met title enzo geeft wordt die titel opgenomen in de teruggegeven pagina (dus je title wordt genomen uit de gedecoreerde pagina en niet de standaard decorator title, best wel handig).
Met Sitemesh kun je ook printable etc decorators maken rond dezelfde JSP pagina (vb: andere CSS en enkel die middelste kolom met een header en footer ofzo).
Als je die link naar die CoolUriServletDispatcher had gevolgd had je gezien dat die javadoc pagina standaard met een frameset gedecoreerd wordt, dat is een van de mogelijke toepassingen van Sitemesh.

Hibernate is een heel goed ORM framework, en het wordt nog makkelijker te gebruiken met Spring omdat je dan transacties definieert op je service layer.


Dit is een hele brok om te lezen, en nog een veel grotere brok om te leren. Probeer eens het boek 'Java open source programming' (http://www.wiley.com/Wile...productCd-0471463620.html) die heb ik onlangs gekocht en lijkt me heel wat frameworks (oa Lucene) te behandelen om je probleem tegemoet te komen. Ik ben zelf nog niet ver genoeg gevorderd in het boek om je een waardeoordeel te geven, maar het schijnt zeker neit slecht te zijn.

Succes :)

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Je moet je goed realiseren dat je een combinatie van libraries nodig bent en dat ze elkaar niet hoeven uit te sluiten.

Een standaard webapplicatie zet je in een aantal lagen op:

weblayer
domain layer
data layer

Vanaf de domain layer heb je niets meer te maken met die weblayer. Voor die weblayer kan je kiezen uit 1 van de 10.000 webframeworks. Maar in principe is die hele weblayer extreem dun (zit geen logica in). Het enigste wat die weblayer zou moeten doen is pagina commando`s bij de juiste service/functie in de domain layer uit laten komen. Verder zit er vaak nog wat extra webondersteunende zaken in zoals veldcontrole ed. Maar dat heeft dus niets met de domain layer te maken.

De domein layer kan je gewoon opzetten met Pojo`s of je kunt naar EJB kijken (alhoewel dat steeds meer overkill is).

En de datalaag zou ik opzetten met een OR mapper zoals Hibernate.

Realiseer je dus goed dat al die weblayer frameworks in principe weinig doen.


Ik zou persoonlijk gaan kijken naar Spring. Spring is ook een 'framework' maar het is veel meer dan alleen een webframework. Dat is een onderdeel die je niet hoeft te gebruiken.. je kunt ook werken met jsf/struts/etc dus je zit nergens aan vast. Verder geeft het de mogelijkheid om bv declaratief transacties en security toe te voegen aan Services en nog heel veel meer moois. Persoonlijk ben ik erg zwaar verliefd op Spring.. vooral omdat het dus niet opdringerig is en zoveel kan.

Verwijderd

Topicstarter
Eerst wil ik iedereen bedanken voor hun reactie : ) ben al een stuk op weg! Zit nu veel te lezen met zoekwoorden die ik uit jullie post kan halen op theserverside.com.

Ik ben van overtuigd dat ik voor me datalaag Hibernate moet gebruiken (liefde op het eerste gezicht :) ) maar domain en weblayer zit ik nog mee te spelen.

@ security maak ik me nog niet zoveel zorgen, maar voodoochile, alvast bedank voor het op weg helpen!

Spring MCV moet denk ik de oplossing zijn voor een deel van mijn problemen, alleen wil ik meer controle in mijn domainlayer op de presentation. Ik wil in princiepe geen jsp file tegenkomen : )

Ik wil een layout object (2 column) maken, daar de nodige paramenters aan geven (title, date enz), 3 componenten aan toevoegen (menu, table, form). En per component aangeven of iets required is of niet of wat wel en niet mag ( en dat het object het verder afhandelt).

Ik zit nu te kijken naar Sitemesh, ben al bezig om snel met electronische ezel het boek "open source programming binnen te halen".

Ik zie alleen nog niet hoe ik in spring met nette url's kan werken, en hoe ik mijn applicatie kan opdelen in module's, maar daar heb ik te weinig kennis voor denk ik, ben al bezig om het boek "spring live" door te nemen.

Ik heb van mensen dus nog graag advies over hoe ik het modulair kan oprichten en hoe ik de interactie tussen mijn domain en presentation(web)layer moet invullen.

ik heb ook het idee dat ik sommige dingen niet al te best invul, misschien moet ik een paar dingen ook anders aanpakken. Ben ook niet een super programmeur : )

[ Voor 13% gewijzigd door Verwijderd op 05-12-2004 12:54 ]


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Verwijderd schreef op zondag 05 december 2004 @ 12:52:
@ security maak ik me nog niet zoveel zorgen, maar voodoochile, alvast bedank voor het op weg helpen!
Spring is zelf eigelijk niets.. het is voornamelijk lijm tussen componenten en het maakt het gebruik van allerlei frameworks veel makkelijker oa security gebeuren van Java. Wat Spring zou kunnen doen is jouw service objecten voorzien van allerlei security checks (die je eventueel met attributen/metadata kunt aangeven in de source). Dus Spring kan het makkelijker maken om van het algemene security framework gebruik te maken.

Dit is dus een extreem belangrijk onderdeel van Spring: probeer niet het wiel voor de 10.000 keer opnieuw uit te vinden.. maar zorg dat bestaande wielen makkelijker gebruikt kunnen worden.
Ik heb van mensen dus nog graag advies over hoe ik het modulair kan oprichten en hoe ik de interactie tussen mijn domain en presentation(web)layer moet invullen.
Jouw weblayer mag direct objecten in jouw domain layer aanspreken:

persoonService.verwijderPersoon(jantje).

Dus je hoeft je dus niet druk te maken hoe jouw weblayer service objecten kan aanspreken. het zijn gewoon normale objecten waarop je iets kunt aanroepen.

Het enigste waar ik geen begrip voor op kan brengen binnen j2ee is dat iedereen enorm veel problemen heeft om referenties naar objecten terug te vinden. Ik neem het Sun uitzonderlijke kwalijk dat ze zelf (afgezien van ejb) niet voor andere lightweight containers hebben gezorg. Dit getuigt imho van een gebrek aan praktisch inzicht.

Spring is bv zo`n container.. en je hebt ook nano/picocontainer.

[ Voor 7% gewijzigd door Alarmnummer op 05-12-2004 13:07 ]


Verwijderd

Topicstarter
Alarmnummer schreef op zondag 05 december 2004 @ 13:01:

Dit is dus een extreem belangrijk onderdeel van Spring: probeer niet het wiel voor de 10.000 keer opnieuw uit te vinden.. maar zorg dat bestaande wielen makkelijker gebruikt kunnen worden.
Dat spreekt me nog wel het meest aan, want uiteindelijk moet ik door deze overstap mijn klanten meer kunnen bieden. Ik hoop ze:

- meer zekerheid te bieden door unittests en een framework dat door velen word gebruikt (ipv zelf ontwikkeld).
- sneller ontwikkelen door hergebruik, en JUIST dat spreekt me bij spring aan.

Ik ben de afgelopen dagen ook met laszlo bezig, en als ik op mijn domainlayer componenten en layout objecten aanstuur, wil ik eenvoudig kunnen switchen of ik nou HTML/JavaScript als output geef of XUL of LZX (Laszlo).

Als ik een goede oplossing voor dat laatste heb gevonden, denk ik goed aan de slag te kunnen : )

Vraagje, heb je ervaring met scripttalen zoals php/asp en heb je het gevoel dat je met Spring/hibernate (of anderen) sneller en een betere product neerzet? En hoe geschikt is het voor kleine webapplications zoals een generator voor contact formulieren? Is er dat te veel overhead of gaat het dan nog steeds goed?

Verwijderd

Verwijderd schreef op zondag 05 december 2004 @ 12:52:


Ik wil een layout object (2 column) maken, daar de nodige paramenters aan geven (title, date enz), 3 componenten aan toevoegen (menu, table, form). En per component aangeven of iets required is of niet of wat wel en niet mag ( en dat het object het verder afhandelt).
Op het werk doen we dat zo:
in onze (struts) actions zetten we een bean die alle info voor die 'blok' bevat
En dan doen we
<logic:present name="beanName" scope="request"> om die b lok te plaatsen.
Als die blok niet mag gezien worden, zetten we die bean niet en is er dus geen probleem (de service methods bepalen de security).

Wat je met Webwork kan doen is <ww:action> tag gebruiken die een deel van die pagina (het blok dat je wel of niet mag zien) toont. En die action zorgt dan voor z'n eigen security.
<ww:action name="login" /> en je kan er zelfs properties aan meegeven. Dus dat blokje kan je overal hergebruiken en verzorgt z'n eigen security (voorbeeld: compleet andere forward als je al ingelogd bent en de userinfo op de stack gooien)...
Ik zie alleen nog niet hoe ik in spring met nette url's kan werken, en hoe ik mijn applicatie kan opdelen in module's, maar daar heb ik te weinig kennis voor denk ik, ben al bezig om het boek "spring live" door te nemen.

Ik heb van mensen dus nog graag advies over hoe ik het modulair kan oprichten en hoe ik de interactie tussen mijn domain en presentation(web)layer moet invullen.
die nette URL's zitten in WebWork, voor Spring MVC zou ik het niet weten.

Met Spring en Webwork kun je je WebWork actions laten builden door de Spring beanfactory die er direct alle service objecten voor instantieert en instelt. (zoek eens naar xwork-optional en de springobjectfactory of zoiets).

voorbeeld hier: https://webwork.dev.java....ReadMsg?list=dev&msgNo=75

op die manier moet je zelfs je service methoden niet zelf ophalen.
En die moet je dan maar oproepen voor de actions die je wil ondernemen in die 'Action' implementatie.

Hoe bedoel je een module? Ik zie dat als een aparte package in je application met zijn eigen configuratiebestanden, ...
Of bedoel je een aparte war voor elke module? Dan moet je maar met ant gaan klooien en een 'common-projectname.war' hebben voor al de rest.

Maar met Spring, Webwork, Struts,... kun je modules hebben die elk aparte configuratiebestanden hebben en in een gemeenschappelijk config bestand geef je dan de namen van de andere configuratiebestanden op. Ik weet niet of dat is wat je bedoelt....
ik heb ook het idee dat ik sommige dingen niet al te best invul, misschien moet ik een paar dingen ook anders aanpakken. Ben ook niet een super programmeur : )
tja, ik weet het ook niet. Als je een project start zou je het een jaar later niet meer zo opvatten als toen...

Verwijderd

Topicstarter
Verwijderd schreef op zondag 05 december 2004 @ 13:56:

Op het werk doen we dat zo:
in onze (struts) actions zetten we een bean die alle info voor die 'blok' bevat
En dan doen we
<logic:present name="beanName" scope="request"> om die b lok te plaatsen.
Als die blok niet mag gezien worden, zetten we die bean niet en is er dus geen probleem (de service methods bepalen de security).

Wat je met Webwork kan doen is <ww:action> tag gebruiken die een deel van die pagina (het blok dat je wel of niet mag zien) toont. En die action zorgt dan voor z'n eigen security.
<ww:action name="login" /> en je kan er zelfs properties aan meegeven. Dus dat blokje kan je overal hergebruiken en verzorgt z'n eigen security (voorbeeld: compleet andere forward als je al ingelogd bent en de userinfo op de stack gooien)...
thnx, en hoe zit het met bouwen van table's en forms? juist daar maak ik me zorgen om, dat ik elke keer zit te html'en : ) en javascripten

Ik wil een formulier kunnen defineren (of het nou met xml of java gebeurt)

<form method=post>
<input name=name lable=multilanguage.module.name type=text required=1 error=multilanguage.module.name.error filter=RegEx>
</form>

ofzo : ) en dat daar een mooie table met daarin de formulier elementen uitkomt.

wat ik maak zijn vooral data-georienteerde applicatie's. Het gaat om dat data er zosnel mogelijk in gaat en so simple mogelijk uit komt. Geen fratsen : )

[ Voor 14% gewijzigd door Verwijderd op 05-12-2004 14:15 ]


  • flowerp
  • Registratie: September 2003
  • Laatst online: 04-02 02:01
Verwijderd schreef op zondag 05 december 2004 @ 00:30:
Ik ontwikkel momenteel web-applicatie's voor bedrijven, dit zijn opdrachten die ongeveer 300 tot maximaal 500 uur werk zijn (voor een gemiddelde programmeur zoals ik). Na slechte ervaringen met JSF (waar ik naar over wilde stapen omdat ik genoeg van PHP kreeg) was ik weer terug gestapt naar php.
Waar is je slechte ervaring met JSF eigenlijk op gebasseerd?

Ik zat zelf juist te kijken of ik JSF kan gaan gebruiken. Ik werk nu mee aan een redelijk grote legacy J2EE web app; +- 50.000 regels Java code, 80.000 regels JSP, en nog eens een keertje 80.000 regels SQL. Als een van de weinige projecten waar ik op gezeten heb is deze op geen enkel framework gebasseerd, behalve puur servlet en jsp werk.

Ik vraag me af of ik JSF (of Struts, of welke ander framework) gedeeltelijk kan invoeren of dat meteen alles om moet.

It's shocking to find how many people do not believe they can learn, and how many more believe learning to be difficult.


Verwijderd

Topicstarter
flowerp schreef op zondag 05 december 2004 @ 14:27:
[...]


Waar is je slechte ervaring met JSF eigenlijk op gebasseerd?

Ik zat zelf juist te kijken of ik JSF kan gaan gebruiken. Ik werk nu mee aan een redelijk grote legacy J2EE web app; +- 50.000 regels Java code, 80.000 regels JSP, en nog eens een keertje 80.000 regels SQL. Als een van de weinige projecten waar ik op gezeten heb is deze op geen enkel framework gebasseerd, behalve puur servlet en jsp werk.

Ik vraag me af of ik JSF (of Struts, of welke ander framework) gedeeltelijk kan invoeren of dat meteen alles om moet.
Toen de eerste versie van JSF uit was ben ik samen met een groep van 7 man waar ik leiding aan gaf begonnen om een kleine webapplication in JSF te programmeren. Het grote probleem toen was dat JSF veel te nieuw was, het koste echt uren om een formulier werkend te krijgen en bij de kleinste fout crashde Tomcat.

Het was de eerste stap van een hoop PHP programmeurs naar een Java platvorm, we werden gek dat als we de xml file's moesten mergen (iedereen werkte aan eigen project) dat het ALTIJD fout ging. Het had zo veel botsingen! Je kon bijna niet buiten de editor om werken, omdat er zoveel code werd gegenereert dat je op een gegeven moment niet meer wist waar je voor wat moest zijn.

Het was ook een ramp om samen te werken met JSF, je kon moeilijk componenten maken en inelkaar schuiven. Dat ging gewoon mis. Ook moesten we toen we gingen mergen op alle plekken weer html updaten.

Het lag ook grotendeels aan ons, we hadden misschien JSF met anderen technieken moeten combineren. Maar we werden vooral gek van de hoeveelheid tags in de jsp die elke keer weer aangepast meoten worden.

Maar dat is niet representatief voor de situatie voor nu, in 1.1 was later al heel wat opgelost, en de tool van sun moest je ook voor gaan betalen. En ons hele project heeft daarvoor afgespeeld.

Verwijderd

Topicstarter
Ik ga iig verder met Spring, (Struts en/of Webworks), Hibernate, SiteMesh (ik zoek nog steeds een presentation layer framework die bij mij past). Thnx iedereen voor zijn advies, en als anderen ding aan te vullen hebben hoor ik het graag. Vooral een presentation layer framework die helemaal met componenten werkt : )

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Verwijderd schreef op zondag 05 december 2004 @ 15:42:
Ik ga iig verder met Spring, (Struts en/of Webworks), Hibernate, SiteMesh (ik zoek nog steeds een presentation layer framework die bij mij past). Thnx iedereen voor zijn advies, en als anderen ding aan te vullen hebben hoor ik het graag. Vooral een presentation layer framework die helemaal met componenten werkt : )
Ik zou het in ieder geval wel stap voor stap doen... Kans om te verzanden in de hoeveelheid technieken is wel erg groot.

  • flowerp
  • Registratie: September 2003
  • Laatst online: 04-02 02:01
Verwijderd schreef op zondag 05 december 2004 @ 14:37:
[...]
(iedereen werkte aan eigen project) dat het ALTIJD fout ging. Het had zo veel botsingen! Je kon bijna niet buiten de editor om werken, omdat er zoveel code werd gegenereert
Maar moest je dan 'De Editor' gebruiken? Kon je niet gewoon met de hand programmeren dan?
Ik ken ook wel HTML editors waar je in design mode werkt en die vervolgens nogal brakke code uitspuugt. Ik heb zo'n beetje de inleiding van verschillende JSF informatie bronnen doorgelezen, maar nergens stond dat je perse 'De Editor' (lees een of andere tightly coupled IDE) moest gebruiken.

Als dat wel het geval is, dan verminderd dat de aantrekkelijkheid van JSF behoorlijk.
Het was ook een ramp om samen te werken met JSF, je kon moeilijk componenten maken en inelkaar schuiven.
Wat ik begrepen had is dat de voornamelijkste focus van JSF de zogenaamde web widgets waren die net zoals in ASP.net echte herbruikbare componenten moet opleveren (net zoals nu in desktop APIs zoals Swing of SWT). Wat jij nu zegt is eigenlijk dat het belangrijkste element van JSF (er is zelfs een bridge lib om dat element in Struts te gebruiken) domweg niet werkt?
Maar dat is niet representatief voor de situatie voor nu, in 1.1 was later al heel wat opgelost, en de tool van sun moest je ook voor gaan betalen.
Hmmm, zoals ik het dus begrijp kun je alleen met JSF werken met 'de tool van sun'? In de voorbeelden die ik zie lijkt het gewoon alsof je toch echt gewoon met elke editor kan werken, maar dat zijn natuurlijk toy examples. Voor echte apps -moet- je dus 'de tool van sun' gebruiken? Dat lijkt me toch wel een misser als iets een beetje universeel toegepast moet gaan worden (jsf zou een belangrijk standaard component in J2EE 5 worden).

It's shocking to find how many people do not believe they can learn, and how many more believe learning to be difficult.


Verwijderd

Topicstarter
flowerp, begrijp me niet verkeer aub : ) je hoeft heus niet die tool te gebruiken, maar "de editor" werd wel als super easy, super snel ontwikkelen gebracht, dus gingen we met z'n allen dat gebruiken.

Ik zou absoluuut niet weten hoe JSF is met handcoden, als je precies weet hoe het werkt. Maar JSF is nu al weer verandert, er zijn behoorlijk wat TOOLS voor op de markt. En het genereert allemaal erg veel code : ) thats what I know : )

Maar wij kwamen met z'n alleen van een php scripting taal, en gingen met alleen JSF werken, en dat werkte voor geen cent. Misschien als je het combineert of als je wat meer ervaring hebt, dat je dat wel goed werkend krijgt.

Verwijderd

Topicstarter
Alarmnummer schreef op zondag 05 december 2004 @ 15:47:
[...]

Ik zou het in ieder geval wel stap voor stap doen... Kans om te verzanden in de hoeveelheid technieken is wel erg groot.
Ja heb nu 2 boeken, Spring Live en Java Open Source programming, eerst die 2 doornemen, en kijken hoe ik verder moet gaan. Hoop dat ik beiden boeken in 2 weken kan doornemen (december vakantie).

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Verwijderd schreef op zondag 05 december 2004 @ 16:13:
[...]


Ja heb nu 2 boeken, Spring Live en Java Open Source programming, eerst die 2 doornemen, en kijken hoe ik verder moet gaan. Hoop dat ik beiden boeken in 2 weken kan doornemen (december vakantie).
Hmmm.. Spring alleen is al een erg complex concept... omdat het beetje ongrijpbaar is (omdat het dus lijm is), en omdat er zoveel uit te halen valt.

Wrox heeft trouwens ook een heel strak boek (imho de beste over Spring at the moment)
J2EE development without EJB
(geschreven door de dude die Spring heeft opgezet).

Verwijderd

Topicstarter
Alarmnummer schreef op zondag 05 december 2004 @ 16:15:
[...]

Hmmm.. Spring alleen is al een erg complex concept... omdat het beetje ongrijpbaar is (omdat het dus lijm is), en omdat er zoveel uit te halen valt.

Wrox heeft trouwens ook een heel strak boek (imho de beste over Spring at the moment)
J2EE development without EJB
(geschreven door de dude die Spring heeft opgezet).
Die heb ik ook liggen, de boek zelf, gekregen van een vriend paar dagen geleden, maar vond het te dik : ) Ik neem jou advies dan aan, en neem dat boek door :) Thnx

  • Nephilim
  • Registratie: Augustus 2000
  • Laatst online: 15-05 00:38
Verwijderd schreef op zondag 05 december 2004 @ 15:42:Vooral een presentation layer framework die helemaal met componenten werkt : )
Dan kan je eens naar http://jakarta.apache.org/tapestry/ kijken. Het werkt nie enkel met componenten, maar is wel sterk componentgericht. Enkele voorbeelden van componenten: ActionLink, Button, Checkbox, DatePicker (maakt clientside javascript aan), Form, Image, en nog veel meer. Als de standaard Tapestry-componenten niet voldoen, kan je natuurlijk altijd zelf nog componenten schrijven.

Ik ben het momenteel ook aan het leren, gebruik makend van Tapestry in Action.

  • Casteloni
  • Registratie: November 2001
  • Laatst online: 19:09
Verwijderd schreef op zondag 05 december 2004 @ 14:15:
[...]


thnx, en hoe zit het met bouwen van table's en forms? juist daar maak ik me zorgen om, dat ik elke keer zit te html'en : ) en javascripten[..knip..]
Voor het tonen van data in een tabelstructuur maak ik gebruik van de logic taglib en XML/XSLT.

code:
1
2
3
4
5
<formulier actie="wijzigUser.do">
<logic:iterate name="element" property="personenlijst">
       <formelement><bean:write name="element"property="naam"/></formelement>
</logic:iterate>
</formulier>


En dan dit met behulp van een XSLT stylsheet transformeren. Het voordeel hiervan is dat je maar 1x hoeft te HTML-en ( in de XSLT stylesheet ) en daarnaa nooit meer.

Verwijderd

Topicstarter
thnx, zal eens naar tapestry kijken : )

vond net ook een ander intressant boek:
Explorer's Guide to Java Open Source Tools

# Explore over 45 open source Java projects
# Select the right project for your development
# Understand the synergy between projects and how to use multiple projects in development

[off-topic]
Hoe houden jullie het vol met al die technieken? je moet met alles weer leren werken : )
[/off-topic]

Eerlijk gezegd weinig reactie's (aantal personen bedoel ik), ik zie vaker op simple php vragen meer reacties : ) Hoe komt dat? hoduen weinig mensen zich bezig met webapps in java? Ervaren mensen niet de grote nadelen van php?

[ Voor 42% gewijzigd door Verwijderd op 05-12-2004 18:18 ]


  • flowerp
  • Registratie: September 2003
  • Laatst online: 04-02 02:01
VampireSlayer schreef op zondag 05 december 2004 @ 17:00:
Voor het tonen van data in een tabelstructuur maak ik gebruik van de logic taglib en XML/XSLT.
[...]
En dan dit met behulp van een XSLT stylsheet transformeren. Het voordeel hiervan is dat je maar 1x hoeft te HTML-en ( in de XSLT stylesheet ) en daarnaa nooit meer.
Met die aanpak, kun je dan ook standaard sorting (per kolom), verdeling in pagina's van je tabel, zoeken, enz krijgen? Hoe doe je op deze manier dingen speciale opmaak voor een bepaalde kolom, of aparte dingen als een button, of een hyperlink? Niet alle tabellen zijn standaard rijen met alleen getallen of string erin.

Heb je in al die J2EE frameworks niet een super geavanceerd table widget die je helemaal kan customizen, maar waar je toch heel makkelijk kan defineren wat er in je tabel komt?

It's shocking to find how many people do not believe they can learn, and how many more believe learning to be difficult.


  • Casteloni
  • Registratie: November 2001
  • Laatst online: 19:09
flowerp schreef op zondag 05 december 2004 @ 17:35:
[...]

Heb je in al die J2EE frameworks niet een super geavanceerd table widget die je helemaal kan customizen, maar waar je toch heel makkelijk kan defineren wat er in je tabel komt?
Yep :) Voor een project op school heb ik een taglibrary hiervoor gebruikt, het genereerde best mooie tabellen. Ik heb die site nog maar even online gezet. Misschienmoet ik even wat meer voorbeeldjes in de database zetten om het mooi te laten zien.

code:
1
2
3
4
5
6
7
8
9
10
<display:table name="lot_searchinfo" sort="list" class="results" pagesize="10">
  <display:column property="lot_name" title="Name" sortable="true" 
             headerClass="sortable" href="/Frontsite/lot.jsp?page=detailed" paramId="id" paramProperty="lot_id" />
  <display:column property="lot_offerdate" title="Offerdate" sortable="true" 
            headerClass="sortable" />
 <display:column property="lot_startprice" title="Startprice" sortable="true" 
            headerClass="sortable" />
 <display:column property="lot_photocheck" title="Photo" sortable="true" 
           headerClass="sortable" />
</display:table>


Ik vraag me nu wel af dit bruikbaar is in een XML-datastructuur, want de taglib genereert wel gelijk HTML. Als je wilt sorteren in een tabel kan je dit doen of door 1) opnieuw een query uit te voeren, of 2) een Collection te sorteren die zich in de scope van de pagina bevind.

De 2e methode is wel moeilijker en vergt meer gecompliceerde code, het scheelt je wel weer een paar queries op de db.

@ Abdul Rahman
Het is makkelijker om op een simpele vraag een antwoord te geven, dus zijn er ook meer mensen die dat doen, zo simpel is dat >:)
Ik heb zelf geen ervaring met PHP, maar ik denk dat het een stuk toegangkelijker is dan Java. Java heeft een steilere leercurve, maar als je het eenmaal doorkrijgt is het allemaal niet zo lastig meer ;)

Het mooie van J2EE vind ik ook dat je die lagen zo goed kunt scheiden. Ik ben nu met mijn project bezig met de presentatielaag, de BL-laag is zo goed als af. Dan merk je eigenlijk hoe handig je hier gebruik van kunt maken.

Als framework gebruik ik de EJB-container van Jboss, security wordt ook door JBoss geregeld. Nadeel van Jboss is dat je wel gelijk een enorme application server hebt die in sommig gevallen overkill is.
Verder gebruik ik ook struts om de navigatie tussen de pagina's te regelen, en de data in de request/session scope te plaatsen.

  • flowerp
  • Registratie: September 2003
  • Laatst online: 04-02 02:01
VampireSlayer schreef op zondag 05 december 2004 @ 19:23:
[...]
Ik vraag me nu wel af dit bruikbaar is in een XML-datastructuur, want de taglib genereert wel gelijk HTML.
Inderdaad. Ik zou eigenlijk iets willen dat je je tabel in XML declareerd, in zo'n manier dat je er behoorlijk gecompliceerde dingen mee kan doen (maar niet hoeft). Dan kun je daarneest wel in de code die het geheel op het scherm zet gebruik maken van taglibs, maar de declaratie van je tabel zou ik toch niet direct in mijn JSP willen hebben.

Bestaat er in al die 10.000'en Java frameworks niet zoiets?
Als je wilt sorteren in een tabel kan je dit doen of door 1) opnieuw een query uit te voeren, of 2) een Collection te sorteren die zich in de scope van de pagina bevind.

De 2e methode is wel moeilijker en vergt meer gecompliceerde code, het scheelt je wel weer een paar queries op de db.
De bedoeling is natuurlijk dat je dat nooit met de hand hoeft te doen bij een universele table widget. Je zou in je XML file moeten kunnen declareren wat het type van kolommen is (zover dat niet uit de query afgeleid kan worden), eventueel een eigen comparator eraan hangen (zoals bij table widgets in desktop toolkits) en dan zou de sorting automatisch en standaard voor je gedaan worden.

It's shocking to find how many people do not believe they can learn, and how many more believe learning to be difficult.


Verwijderd

Topicstarter
Heb eens zitten zoeken wat ik nou precies zoek, en denk dat ik de juiste presentation framework heb gevonden, http://wicket.codehaus.org/

heb ook naar Echo en Tapestry gekeken, maar was toch niet echt wat ik zocht helaas.

  • flowerp
  • Registratie: September 2003
  • Laatst online: 04-02 02:01
Verwijderd schreef op zondag 05 december 2004 @ 17:02:
Eerlijk gezegd weinig reactie's (aantal personen bedoel ik), ik zie vaker op simple php vragen meer reacties : ) Hoe komt dat? hoduen weinig mensen zich bezig met webapps in java? Ervaren mensen niet de grote nadelen van php?
Ik snap het ook niet. Maar nog sterker, voor GOT J2EE begrippen is deze thread echt huge. De meest l*llige PHP vragen leveren een discussie van minstens 10 pagina's op, maar op interesante en echte J2EE problemen blijft vaak de reactie teller op 0 staan.

Het is redelijk vaag en komt bijna altijd naar voren in een J2EE topic, "Waarom reageerd er nou niemand?". Het antwoord is dan altijd; omdat PHP bij je hosting pakket zit en J2EE niet. punt.


Wat ook zou kunnen zijn is dat de GOT crew die helemaal PHP minded is (vanwege react) stiekum J2EE replies weghaalt. :+ Conspiracy theory >:)

It's shocking to find how many people do not believe they can learn, and how many more believe learning to be difficult.


Verwijderd

Topicstarter
flowerp schreef op zondag 05 december 2004 @ 23:11:
[...]


Ik snap het ook niet. Maar nog sterker, voor GOT J2EE begrippen is deze thread echt huge. De meest l*llige PHP vragen leveren een discussie van minstens 10 pagina's op, maar op interesante en echte J2EE problemen blijft vaak de reactie teller op 0 staan.
LOL : ) ik zou maar oppassen : ) maar de situatie is niet al te best. Maja, ik denk dat mensen die zich bezig houden wat krachtige enterprise software hier niet zitten. Alleen vraag ik me af waar wel :P op www.theserverside.com, lijken mensen ook te slapen.
Het is redelijk vaag en komt bijna altijd naar voren in een J2EE topic, "Waarom reageerd er nou niemand?". Het antwoord is dan altijd; omdat PHP bij je hosting pakket zit en J2EE niet. punt.


Wat ook zou kunnen zijn is dat de GOT crew die helemaal PHP minded is (vanwege react) stiekum J2EE replies weghaalt. :+ Conspiracy theory >:)
hahaha jah, ik vraag me eigenlijk af of software zoals react gebouwd kan worden op iets als spring ofzo met minder tijd en vraag me dan af of het sneller is? en waarom mensen van parse kiezen voor php?

Ik kan niet meer bij php blijven omdat ik dat me klanten niet meer kan aandoen. Een eigen framework waarvoor ze altijd bij mij terecht moeten. Dat is niks!

Verwijderd

Verwijderd schreef op zondag 05 december 2004 @ 14:15:
[...]


Hoe zit het met bouwen van table's en forms? juist daar maak ik me zorgen om, dat ik elke keer zit te html'en : ) en javascripten

Ik wil een formulier kunnen defineren (of het nou met xml of java gebeurt)

<form method=post>
<input name=name lable=multilanguage.module.name type=text required=1 error=multilanguage.module.name.error filter=RegEx>
</form>

ofzo : ) en dat daar een mooie table met daarin de formulier elementen uitkomt.

wat ik maak zijn vooral data-georienteerde applicatie's. Het gaat om dat data er zosnel mogelijk in gaat en so simple mogelijk uit komt. Geen fratsen : )
http://struts.application-servers.com/

http://displaytag.sourceforge.net/ (die laatste is volgens mij de beste, maar geen ervaring mee :)).


en ja, GoT heeft naar mijn mening te weinig van deze topics, PHP dat was leuk in mijn studententijd, maar je moet toch ooit eens volwassen worden :p

Ik denk dat er op TheServerSide niet gereageerd wordt omdat die dingen reeds afgehandeld zijn ofwel steeds uitmonden in een eindeloze discussie over frameworks, wat hier gelukkig niet gebeurd. Maar het gebruikelijke Struts bashen vind je veel terug op TSS dus zoek gewoon even in de fora naar framework discussies ipv weer een nieuwe te starten.

Verwijderd

Topicstarter
Verwijderd schreef op maandag 06 december 2004 @ 08:51:

en ja, GoT heeft naar mijn mening te weinig van deze topics, PHP dat was leuk in mijn studententijd, maar je moet toch ooit eens volwassen worden :p

Ik denk dat er op TheServerSide niet gereageerd wordt omdat die dingen reeds afgehandeld zijn ofwel steeds uitmonden in een eindeloze discussie over frameworks, wat hier gelukkig niet gebeurd. Maar het gebruikelijke Struts bashen vind je veel terug op TSS dus zoek gewoon even in de fora naar framework discussies ipv weer een nieuwe te starten.
Ik zit nog steeds in mijn studententijd :P dus ik mag nog even doorgaan met php ;)

jah, maar ik heb daar perongeluk de nederlandse versie van deze topic gepost, en na 2 dagen staat ie er nog LOL. Ik heb al 2 keer geprobeert om te vragen of ze hem kunnen verwijderen.. magoed.

zoeken doe ik veel in de forum's, daar staat veel intressante stuf!
Pagina: 1