[Java] Framework voor web applicatie

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

  • -RenE-
  • Registratie: September 2001
  • Laatst online: 31-03 23:10
Op het ogenblik beheer ik een webapplicatie geschreven in PHP, javascript en HTML. Het gaat om een applicatie, waarbij een grote diversiteit aan formulieren gekoppeld is aan een MySQL-database (wordt Oracle express of PostgreSQL).

Inmiddels bedraagt het aantal codelijnen meer dan 20.000 regels en wordt het allemaal een beetje lastig te beheren (de stichting is veel sneller gegroeid dan verwacht). Daarnaast moeten de formulieren regelmatig aangepast worden (nieuwe velden, subformulieren, etc).
Ik ben daarom op zoek naar een manier om het allemaal wat beter te structuren en te professionaliseren. Ook het back-end zal behoorlijk uitgebreid moeten worden.

Nu ben ik van plan hiervoor over te stappen naar een Java-framework, die hergebruik van delen van formulieren, het maken van een back-end en een rapportage faciliteit gemakkelijker en beter onderhoudbaar zouden moeten maken. De vraag is alleen: welk Java-framework?

Ik vind Struts, Cocoon, Tapestry, Oracle ADF en nog wel meer. Wat zou het meest geschikt zijn voor een web-toepassing? Iemand ervaring?

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

Alarmnummer

-= Tja =-

De overstap van PHP naar Java zal denk ik behoorlijk zijn en daarna krijg je ook nog eens alle problematiek van de frameworks (frameworks kunnen je werk uit handen nemen, maar je moet er wel flink in investeren om zover te komen). Heb je zelf een idee hoe lang het zou mogen duren? En doe je het vrijwillig, of moeten ze ervoor betalen?

En is er geen mogelijkheid om de huidige PHP applicatie gewoon beter te gaan structureren? Je zit dan niet vast aan de hoge instap kosten naar Java, en je kunt het huidige systeem dan gewoon blijven gebruiken (ipv dat ze lang moeten wachten totdat er een werkbare java versie staat).

[ Voor 31% gewijzigd door Alarmnummer op 21-02-2006 14:06 ]


  • -RenE-
  • Registratie: September 2001
  • Laatst online: 31-03 23:10
Er wordt voor betaald (maar het is ook een beetje hobby ;) )

Ik begrijp dat het een flinke overstap is, maar de huidige structuur heeft niet het eeuwige leven. Elke verandering kost veel tijd en dat is ook duur. De overstap hoeft niet direct plaats te vinden, maar kan in stappen gebeuren in een tijdsbestek van 1,5 jaar.

Een andere reden voor de professionalisering is de ISO-certificering die de stichting wil verkrijgen. Hiervoor dient alle code netjes opgezet, gedocumenteerd en voorzien van test-routines moeten zijn. Er zal dus sowieso nog een hoop werk moeten worden verzet.

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 07-04 22:27

Bosmonster

*zucht*

Tot nu toe zie ik nog geen reden om over te stappen op Java. Je kunt ook je applicatie herbouwen in PHP5 bijvoorbeeld en OO opzetten. Dan kun je die 1,5 jaar tenminste besteden aan je applicatie, ipv een jaar aan Java en frameworks en een paar maanden aan je app..

Verwijderd

Bosmonster schreef op dinsdag 21 februari 2006 @ 14:14:
Tot nu toe zie ik nog geen reden om over te stappen op Java.
Laten we wel wezen, die reden zul jij waarschijnlijk ook nooit vinden ;)

Waar je voor kunt kiezen, wat mij een betere oplossing lijkt, is het gefaseerd invoeren van nieuwe technieken. Zo kun je de frontend nog door php laten afhandelen maar schrijf je langzaam de backend om naar java. Ze kun je stukje bij beetje de logica structureren zonder dat je in een keer in het diepe stort.

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

Alarmnummer

-= Tja =-

-RenE- schreef op dinsdag 21 februari 2006 @ 14:08:
Er wordt voor betaald (maar het is ook een beetje hobby ;) )

Ik begrijp dat het een flinke overstap is, maar de huidige structuur heeft niet het eeuwige leven.
Elke verandering kost veel tijd en dat is ook duur. De overstap hoeft niet direct plaats te vinden, maar kan in stappen gebeuren in een tijdsbestek van 1,5 jaar.
Hmm tja.. het lijkt me dan het meest handige als je er een bedrijf bij betrekt die je kan adviseren. Zowel op techniek, maar ook alle problematiek er omheen, testing, cvs, architectuur etc etc.
Een andere reden voor de professionalisering is de ISO-certificering die de stichting wil verkrijgen. Hiervoor dient alle code netjes opgezet, gedocumenteerd en voorzien van test-routines moeten zijn. Er zal dus sowieso nog een hoop werk moeten worden verzet.
Dat kan volgens mij ook wel in PHP.

  • -RenE-
  • Registratie: September 2001
  • Laatst online: 31-03 23:10
Verwijderd schreef op dinsdag 21 februari 2006 @ 14:22:Waar je voor kunt kiezen, wat mij een betere oplossing lijkt, is het gefaseerd invoeren van nieuwe technieken. Zo kun je de frontend nog door php laten afhandelen maar schrijf je langzaam de backend om naar java. Ze kun je stukje bij beetje de logica structureren zonder dat je in een keer in het diepe stort.
Dat was inderdaad mijn bedoeling.

Het is niet de bedoeling dat wij een bedrijf gaan inhuren. Ik ben in dienst genomen samen met een andere (java) programmeur om het een en ander op te zetten en te verbeteren.
Ik kan zelf wel in Java programmeren, maar heb nog nooit wat met j2ee gedaan.

Uiteraard kan alles ook in PHP, maar zou ik graag gebruik maken van een goed framework, dat bijvoorbeeld ook eenvoudig PDF-rapporten kan genereren. Dus eenvoudig uitbreidbaar. Voor Java zijn diverse goede frameworks beschikbaar.

  • Cuball
  • Registratie: Mei 2002
  • Laatst online: 03-04 10:15
Verwijderd schreef op dinsdag 21 februari 2006 @ 14:22:
[...]
Zo kun je de frontend nog door php laten afhandelen maar schrijf je langzaam de backend om naar java.
Zou je dan de front in php gelijktijdig laten lopen met een backend in Java ? Ik denk dat dit nogal wat extra complexiteit toevoegd aan het project. Of hoe zie je dit? Ik kan me moeilijk voorstellen dat je bv POJO objecten uit je backend simpelweg kunt omvormen naar PHP objecten in de front ? of zie ik iets over het hoofd ?

"Live as if you were to die tomorrow. Learn as if you were to live forever"


  • flashin
  • Registratie: Augustus 2002
  • Laatst online: 17-12-2023
Uiteraard kan alles ook in PHP, maar zou ik graag gebruik maken van een goed framework, dat bijvoorbeeld ook eenvoudig PDF-rapporten kan genereren. Dus eenvoudig uitbreidbaar. Voor Java zijn diverse goede frameworks beschikbaar.
Op PHP gebied zijn er ook diverse (tegenwoordig ook aardig goede) frameworks op de markt, en PDF rapporten genereren is met PHP ook een eitje. (je kunt kiezen voor de standaard pdf lib die je kan meecompileren, of de http://www.fpdf.org lib)

Verwijderd

Cuball schreef op dinsdag 21 februari 2006 @ 14:40:
Zou je dan de front in php gelijktijdig laten lopen met een backend in Java ? Ik denk dat dit nogal wat extra complexiteit toevoegd aan het project. Of hoe zie je dit? Ik kan me moeilijk voorstellen dat je bv POJO objecten uit je backend simpelweg kunt omvormen naar PHP objecten in de front ? of zie ik iets over het hoofd ?
Valt mee hoor, kijk bijvoorbeeld naar resin:
http://www.theserverside.com/news/thread.tss?thread_id=38144

  • ReLight
  • Registratie: Augustus 2001
  • Laatst online: 31-03 14:18

ReLight

echo("What Now ? !")

Wat jij wil kan allemaal met de oracle AS (nieuwe versie 10.1.3) Samen met JDeveloper (gratis) en JSF, en ADF.

Opzet en studie ervan kan allemaal zonder kosten aan licenties etc.

http://otn.oracle.com

Mijn zoon & dochter zijn de toekomst, de rest is tijdsvermaak. Home assistant & & Nibe S2125-12/SMO-S40, RMU-s40 & Tado - Volvo C40 ER, SE


  • Varienaja
  • Registratie: Februari 2001
  • Laatst online: 14-06-2025

Varienaja

Wie dit leest is gek.

Ik heb nu drie webapplicaties gemaakt, allemaal met Tapestry. Ik ben een jaar geleden helemaal out-of-the-blue begonnen met Java, Tomcat en Tapestry. Later heb ik Hibernate geintroduceerd, en nog later Spring en AcegiSecurity.

Voorheen heb ik nooit webapplicaties gebouwd (een piepklein prutswerkje met Perl daargelaten). Over Java in combinatie met al die frameworks ben ik behoorlijk enthausiast. Het is alleen jammer dat de spindle-plugin voor eclipse nog niet ge-update is voor Tapestry4. Want Tapestry 4 is echt stukken beter dan 3 (veel eenvoudiger, en logischer).

Let op dat je ook in Java bijzonder on-uitbreidbare code zou kunnen bouwen. Als je veldjes wilt toevoegen zonder veel moeite te doen, dan moet je wanneer je Java gebruikt daar van tevoren gewoon rekening mee houden. In dat opzicht heb je met Java geen direct voordeel t.o.v. PHP.

Siditamentis astuentis pactum.


Verwijderd

ReLight schreef op dinsdag 21 februari 2006 @ 15:21:
Wat jij wil kan allemaal met de oracle AS (nieuwe versie 10.1.3) Samen met JDeveloper (gratis) en JSF, en ADF.

Opzet en studie ervan kan allemaal zonder kosten aan licenties etc.

http://otn.oracle.com
is er ook een free versie van Oracle AS? Ik dacht dat enkel Oracle XE (database dus) in productie gebruikt kon worden....

En natuurlijk kan dat met veel meer combinaties dat was nu net zijn vraag....

Ik zou even kijken naar WebWork 2.2 (wordt nog gemerged met Struts om in de 2.0 versie te resulteren). Struts is nog steeds het meestgebruikte web framework. Het is fel verouderd dus kwam de merge met webwork niet ongelegen. Met WebWork heb je nog een beetje je action gerichte manier van werken die je gewoon bent in PHP. (jsf & tapestry werken met events en dergelijke)

TestNG/JUnit + Selenium(IDE) + CruiseControl of iets dergelijks voor je continuous integration (testen).

Verder kun je even naar Hibernate kijken voor persistence, zodat je achteraf nog steeds kan switchen tussen postgresql, mysql en oracle (en nog veel meer).

Deployen op tomcat zal makkelijker zijn dan direct op een full blown J2EE container. Waarschijnlijk heb je ook niet meer nodig als je het tot nu toe in PHP aankon. Tenzij je sommige taken asynchroon wil beginnen afhandelen ofzo heb je genoeg aan enkel een webcontainer.

Deze link kan je misschien interesseren: http://sandbox.sourcelabs.com/kosta/web_ui_compare/readme/

Ik weet niet in hoeverre je wil migreren naar JAVA, maar je kan ver gaan. Een architectuur met 3 lagen die presentation en business scheidt met webservices kan ook... te zien hoe groot/belangrijk dat allemaal is.

Ik denk dat we enkel onze favorieten kunnen opnoemen zolang we niets hebben om onze keuzes op te baseren. (dat 'favorieten opsommen' is trouwens de meest waarschijnlijke reactie zelfs ALS je meer uitleg zou geven, programmeurs lijken korting te krijgen adhv de propaganda die ze maken :)).

Maar JDeveloper zou een goede keuze kunnen zijn als je Oracle XE kiest omdat er een schema browser in zit....

  • Standeman
  • Registratie: November 2000
  • Nu online

Standeman

Prutser 1e klasse

Je moet je ook afvragen of je uberhaupt een J2EE container o.i.d. nodig hebt. Ik denk zelf dat je met hibernate en struts vrij snel een standaard voor je applicatie kan ontwikkelen waarbij je in korte tijd formulieren om kan zetten naar je java omgeving. (that is, als je uberhaupt voor een Java omgeving kiest).

Indien er dan wat veldjes in je formulier wijzigingen is het 1) db aanpassen 2) model aanpassen 3) jsp aanpassen en 4) deployen maar. (uiteraard ook nog ff testen :P)

Zowel struts als hibernate zijn helemaal niet zo lastig om door te krijgen. Zeker niet als je het voor jezelf simpel houd..

Overigens hoor ik wel geluiden dat struts voorbij gestreefd gaat worden door JSF..

The ships hung in the sky in much the same way that bricks don’t.


  • -RenE-
  • Registratie: September 2001
  • Laatst online: 31-03 23:10
Iedereen bedankt voor het meedenken. Ga vooral door. Ik heb er heel veel aan.

Wat betreft Oracle: Lijkt me een prachtige oplossing, maar de implementatie is wel duur.
JSF/ADF lijkt me een erg mooie toepassing. Struts zou ook nog kunnen.

  • flashin
  • Registratie: Augustus 2002
  • Laatst online: 17-12-2023
Het enige:
Nu ben ik van plan hiervoor over te stappen naar een Java-framework, die hergebruik van delen van formulieren, het maken van een back-end en een rapportage faciliteit gemakkelijker en beter onderhoudbaar zouden moeten maken. De vraag is alleen: welk Java-framework?
Wat ik hier nog van vind is dat als je zo wilt werken je niet per se java nodig hebt. Je kunt ook super gestructureerd werken in php, zeker als je daar meer ervaring mee hebt zou ik persoonlijk niet overstappen op java. Het zit hem meer in de programmeur dan in de taal, al zet je met java wel eerder een hogere standaard.

Mijn advies is:
Verdiep je eerder in algemene programmeerboeken over netheid en structuur. (voor zover je dat nog niet wist, kan ik niet inschatten) :)


* flashin vraagt zich af of je misschien al gekeken hebt naar RoR?

  • ReLight
  • Registratie: Augustus 2001
  • Laatst online: 31-03 14:18

ReLight

echo("What Now ? !")

is er ook een free versie van Oracle AS? Ik dacht dat enkel Oracle XE (database dus) in productie gebruikt kon worden....
Nee Oracle application server is niet free. Het is wat je de 'serieuze' aanpak zou kunnen noemen, en het vereist ook 'serieuze' hardware. Je kan bv Mid-tier AS en Infra-AS op 1 server draaien maar dan moet er absoluut minimaal 2Gb aan Ram in. Of gewoon de kleinste J2EE-Webcache install doen, deze is zonder Infra bedenk ik me nu ineens
Struts kan heel goed ism Oracle OHS (Apache) gebruikt worden.

Oracle heeft ook "Forms en Reports" versie en een bijbehorende 'lite' versie van de Oracle AS. is wellicht ook een optie voor de TS.

Nee, heb geen aandelen, enkel net de AS training gehad en m'n kop zit nog wel vol met oracle propaganda :)

Mijn zoon & dochter zijn de toekomst, de rest is tijdsvermaak. Home assistant & & Nibe S2125-12/SMO-S40, RMU-s40 & Tado - Volvo C40 ER, SE


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 07-04 22:27

Bosmonster

*zucht*

Verwijderd schreef op dinsdag 21 februari 2006 @ 14:22:
[...]

Laten we wel wezen, die reden zul jij waarschijnlijk ook nooit vinden ;)

Waar je voor kunt kiezen, wat mij een betere oplossing lijkt, is het gefaseerd invoeren van nieuwe technieken. Zo kun je de frontend nog door php laten afhandelen maar schrijf je langzaam de backend om naar java. Ze kun je stukje bij beetje de logica structureren zonder dat je in een keer in het diepe stort.
Ik zie weinig reden om over te stappen op het voor hem compleet onbekende Java. Als het complete systeem al gebouwd is in PHP en het puur gaat om herstructurering.

Voor dezelfde reden zie ik weinig reden om over te stappen op iedere andere willekeurige taal (maar dat was waarschijnlijk net buiten bereik van dat tunneltje voor je ogen ;))

Tenzij de belangrijkste motivatie is om Java te leren (of hij al Java kent), maar dat kon ik uit de startpost niet opmaken.

Inmiddels is er iets meer info en is het een en ander wat duidelijker. Hij heeft al kennis van Java en gaat het ontwikkelen samen met een andere Java programmeur.
Pagina: 1