Announcement

Collapse
No announcement yet.

J2EE Beginner: Concurrent RMI J2EE-Server

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • J2EE Beginner: Concurrent RMI J2EE-Server

    Hallo,

    verzeiht diese Kinderfragen, aber es gibt kein J2EE-Anfänger-Forum. Das Java-Anfängerforum schien mir ungeeignet.

    Ich habe letztes Semester für die Uni ein Ein-Mann-Projekt angefangen: Ein Bibliothekssystem in Java. Bevor ich irgendwie weitermache, wollte ich mal die Leute fragen, die schon 10 Jahre dabei sind. Die komplette J2EE Thematik erschlägt mich.

    Mein Software zurzeit:
    Ich bekomme von Ant zwei jar-Dateien gebaut: Einen Swing-Client und einen Applikationsserver. Die Kommunikation erfolgt über RMI. Persistenzmäßig habe ich begonnen mir Hibernate anzuschauen für den App-Server. Der Client benutzt das Swing-Framework Genuine [1] und JForms. Ich gedenke - rein imaginär - den Client mit Webstart zu deployen. Sowohl App-Server als auch Client sind nicht mit J2EE sondern mit plain Java 1.5 SE geschrieben. Der Applikationsserver hat eine Fassade für die Client-Zugriffe. Daten werden über Data-Transfer-Objects/ValueObjects übertragen. Der Applikationsserver funktioniert rein entwurfstechnisch zur Zeit nur mit einem einzigen Client, heißt: es ist keine concurrent Transaktionsverwaltung implementiert. Zu diesem Zweck bietet es sich jetzt natürlich an, den App-Server auf J2EE zu portieren und nebenläufige Anfragen von mehreren Clients zu ermöglichen. Doch hier habe ich jetzt ein Problem: Keine Erfahrung. Ich will sinnvolle, praxisnahe Programmiererfahrung sammeln und weiss nicht wie/womit es weitergehen soll.


    Einen JSP- oder Servlet Container benötige ich erstmal überhaupt nicht.

    #

    Daraus ergeben sich meine Fragen:

    Soll ich mir JBoss (incl. Tomcat) installieren und mich erstmal durch alle Enterprise Server Beans Tutorials durchfressen?
    Nachteil: Viele Einführung in EJBs beziehen sich scheinbar auf Webcontainer-Anbindung und nicht auf RMI. Ich arbeite ja wie ich gesagt habe an einer normalen Serveranwendung z.B. für ein Intranet aber nicht an einer Webanwendung. Kennt jemand ein aktuelles Tutorial im Sinne von "Einführung in EJB für normale RMI-Serveranwendungen"?

    #

    Soll ich lieber nach Alternativen zu EJBs suchen (Spring, whatever)? Was gibt es noch brauchbares außer Spring?
    Nachteil: Auch hier sehen die Tutorials alle nach Webanwendung aus (Beispiele basieren auf Tomcat, na toll). Mein Webcontainer bleibt erstmal leer.
    Also JBoos und Spring installieren?

    #

    Sind Erfahrungen mit EJB-Alternativen wie Spring in der Programmierer-Arbeitswelt mehr gefragt als EJB-Erfahrungen?

    #

    Erstmal alle Bücher über J2EE-Patterns und Anti-Pattern lesen und meinen eigenen App-Server from scratch weiterführen?

    #

    Erstmal alle Bücher über nebenläufige Architektur-Muster lesen und gucken, wie diese in den J2EE-Patterns reflektiert werden?

    #

    Was würden mir die Leute empfehlen, die schon lange mit J2EE arbeiten?
    Ich bin willig. Das mit den Webanwendung ist für mich wie mit Applets in alten Java-Büchern. Man bekam alles damit erklärt, obwohl man sich überhaupt nicht dafür interessiert. Zumindest nicht im Moment.

    MfG
    Christian

    [1] http://genuine.sourceforge.net

  • #2
    Hallo,

    das sind eine Menge Fragen :-)
    Ich versuche mich mal da durch zu arbeiten...

    >>Soll ich mir JBoss (incl. Tomcat) installieren und mich erstmal
    >>durch alle Enterprise Server Beans Tutorials durchfressen?
    Gute Idee - wenn Du noch etliche Monate Zeit hast ;-))

    >>Kennt jemand ein aktuelles Tutorial im Sinne von "Einführung
    >>in EJB für normale RMI-Serveranwendungen"?
    In unserem Buch www.ejbkomplett.de sind die Clients ganz normale RMI-Clients....

    >>Soll ich lieber nach Alternativen zu EJBs suchen (Spring,
    >>whatever)? Was gibt es noch brauchbares außer Spring?
    Also, EJBs sollte man dann einsetzen, wenn man skalierbare, transaktionale Anwendungen baut, die für einen größeren Anwenderkreis (concurrent user) gedacht sind. Wenn Anwendungen nicht unbedingt die Aspekte für sogenannte Enterprise Applikationen erfüllen (also Anwendung für Banken, Versicherungen etc.), dann sind Frameworks wie Spring und Konsorten sicherlich eine sinnvolle Alternative! Der Einstieg in diese ist weniger komplex und die Anwendungen sind ein wenig leichtgewichtiger.

    >>Sind Erfahrungen mit EJB-Alternativen wie Spring in der
    >>Programmierer-Arbeitswelt mehr gefragt als EJB-Erfahrungen?
    Aus meinen Erfahrungen als IT-Unternehmensberater würde ich sagen "Nein". Bei großen Unternehmen kommt eher EJB zum Einsatz. Frameworks wie Spring trifft man ab und dann auch - jedoch sind diese kein Standard und damit nicht erste Wahl für viele Unternehmen. Hat was mit Investitionsschutz zu tun. Ausserdem muss man sagen, dass J2EE-Container einen Best-of-Breed-Ansatz bieten. D.h. Thematiken wie Transaktionssteuerung, Concurrency-Handling, Security etc. werden bereits mitgeliefert. Und diese Dinge sind nicht von ein paar Leuten gebaut, sondern von einer größeren Anzahl Mitarbeitern, die dies permanent tun.

    Nichts desto trotz... es ist sinnvoll in jeder Richtung (egal ob man EJBs bevorzugt oder Spring oder oder oder) über den Tellerrand zu schauen. Denn nur dann kann man bewerten, wann man welche Technologie einsetzen kann und sollte.

    >>Erstmal alle Bücher über J2EE-Patterns und Anti-Pattern lesen
    >>und meinen eigenen App-Server from scratch weiterführen?
    Aus kommerzieller Sicht ist das Bauen eines eigenen AppServers irgendwie nicht ganz sinnvoll ;-)

    Geht viel zu viel Zeit drauf... ein Mann frickelt an den o.g. Themen alleine herum... sicherlich kein Best-Of-Breed... Es gibt aber sicherlich auch Szenarien, in denen ist es sinnvoll einen individuell zugeschnittenen AppServer selbst zu bauen.

    >>Erstmal alle Bücher über nebenläufige Architektur-Muster
    >>lesen und gucken, wie diese in den J2EE-Patterns reflektiert
    >>werden?
    Also, Du (tschuldige für das dutzen ;-) hast jetzt schon mehrfach angeführt, ob du diese oder jene Bücher zu diesen und jenen Sachverhalten mal kurz durchlesen und durcharbeiten solltest um das dann verwenden zu können. Solche Bücher arbeitet man nicht auf die Schnelle durch; noch viel weniger baut man dann relativ kurzfristig auch ordentliche Systeme. Wer wirklich gute Software im Bereich verteilter Systeme bauen möchte, sollte sich die von dir genannten Bücher sicherlich nach und nach durchlesen... Aber das geht nicht mal eben auf die Schnelle.

    Viele Grüße,
    Olive

    Comment


    • #3
      Cool, erstmal Danke für die Antwort.

      Also ich habe jetzt mal angefangen eine Tomcat-JSF-Anwendung zu bauen. - Einfach mal so -

      Ich habe mir sehr viele Bücher zu EJBs ausgeliehen, um zu gucken, welches für meine Fragestellung eines Anfängers am ehesten geeignet ist. "EJB komplett" ist auch dabei. Von allen Bücher halte ich "EJB komplett" tatsächlich für am Brauchbarsten. - Ein Kompliment an Dich :-) - Ich werde es durcharbeiten und kann es nur empfehlen, auch wenn ich die wirkliche Qualtiät noch nicht beurteilen kann. Es ist aber mit sehr viel Liebe gemacht.

      Ich denke mal, in einem halben Jahr kann ich meine o.g. Fragen selbst beantworten.

      MfG Christia

      Comment

      Working...
      X