Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Overzetten van Java/Scala (Play framework) naar PHP (MVC)

Pagina: 1
Acties:

  • Hatsieflatsie
  • Registratie: Oktober 2011
  • Laatst online: 20-11 21:25
Ik loop stage bij een bedrijf.

Dat bedrijf heeft 2 applicaties. Een applicatie is geschreven in Java/Scala (Play! framework met MVC-structuur), met in de view voornamelijk HTML/Javascript. Een ander applicatie is geschreven in PHP (met CodeIgniter als framework met MVC-sturctuur). :)

Omdat het bedrijf de login van de PHP-gebruikers wilt hebben zodat men niet 2 keer hoeven te inloggen op beide frameworks, heeft het bedrijf besloten dat de Java-applicatie voortaan op de framework van Codeigniter PHP opgebouwd moet worden, vanaf stratch. :'(

En daarvoor moet ik dus zorgen.

Het zijn beide database-intensieve applicaties, die data proberen te weergeven op basis van de aanwezige data in de database. De HTML/javascript overnemen zal relatief makkelijk gaan. :)
Ieder Java/scala code in de class/controllers heeft een bepaalde functie, waar je dus weer bepaalde PHP-functie bij moet zoeken die hetzelfde kan uitvoeren. En dat in hun eigen syntax proberen 'te kopieren'. Je bedenkt het al, dit wordt 1 grote brei. :F

Ik zat mij af te vragen hoe ik met PHP en Java/scala het beste kon aanpakken, en waar ik moet beginnen.

Iemand?

  • Macros
  • Registratie: Februari 2000
  • Laatst online: 21-11 11:06

Macros

I'm watching...

Single sign on

"Beauty is the ultimate defence against complexity." David Gelernter


  • Hatsieflatsie
  • Registratie: Oktober 2011
  • Laatst online: 20-11 21:25
Ziet interessant uit! Thanks voor je aanvulling. Die hou ik als optie in achterhoofd, mocht het overzetten teveel gezeik opleveren..

Hebben de Twiekers onder ons nog enige tips voor de overzetting zelf?

  • Alex)
  • Registratie: Juni 2003
  • Laatst online: 18-11 20:57
Je zou kunnen kijken of het mogelijk is om het authenticatiesysteem van je Java-applicatie aan te passen zodat deze niet meer afhankelijk is van zijn eigen auth-DB, maar gebruik maakt van een andere partij (in dit geval je PHP-applicatie). Je zult dan aan beide kanten aanpassingen moeten doen, maar die zullen minder ingrijpend zijn dan een totale rewrite van het Java-systeem. Dit valt onder de noemer '(Enterprise) Single Sign On'.

Het stappenplan loopt dan ongeveer zo:
1) Bezoeker vraagt Java-applicatie op
2) Java-applicatie bepaalt dat bezoeker niet is ingelogd, stuurt een HTTP-redirect naar de PHP-applicatie met de informatie die nodig is om succesvol te kunnen inloggen
3) Bezoeker krijgt het inlogscherm van de PHP-applicatie te zien, logt in met zijn gegevens
4) PHP-applicatie valideert gegevens, verzamelt de informatie die de Java-applicatie nodig heeft (bijvoorbeeld naam, e-mailadres, gebruikers-ID) en bouwt een object op. Dit object wordt geserialiseerd (naar JSON bijvoorbeeld) geëncrypt en getekend op basis van shared secrets.
5) De PHP-applicatie output wat HTML: een form, met een hidden form field met als waarde het eerder geserialiseerde object. Met wat javascript wordt het form automatisch ge-POST naar je Java-applicatie
6) Java-applicatie ontvangt je HTTP-post, valideert de handtekening, en decrypt het object.
7) Java-applicatie leest het object uit en gaat verder met het inloggen van de gebruiker.

We are shaping the future