Announcement

Collapse
No announcement yet.

Unterschiede bei den JDK Versionen

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

  • Unterschiede bei den JDK Versionen

    Hallo Java Profis.

    Welche Java Versionen brauche ich, um mit ejb3 arbeiten zu können? Gehts auch mit jdk1.5 (Standard Edition) oder muß man schon j2ee installieren...

    Ich möchte ejbs entwickeln und bei JBoss aktivieren, um aus JSP (als Client) darauf zuzugreigen.

    Bitte erklärt mir mal, was generell diese Versionierungen (J2SE, J2EE, JDK1.5 ....) bedeuten. In der guten alten Zeit gab es nur jdk und die Welt war in Ordnung!!
    Jetzt habe ich ein wenig den Überblick verloren... was ist nun was? Und was brauche ich um in ejb Fuß zu fassen?

    Vielen Dank

    David.

  • #2
    hallo,

    ich habe keine ahnung von ejb aber ich weiß soviel:

    die aktuelle j2se version ist java 1.5 "tiger" von sun gern java 5.0 bezeichnet. j2ee ist momentan in version 1.4 aktuell, glaub ich, die enthält ein j2se sdk in version 1.4.2.. für deine ejb sache brauchst du denk ich das j2ee, wobei ob das version 3.0 ist, keine ahnung. j2ee enthält nach sun:
    <pre>
    Q: What technologies are included in the J2EE platform?

    The primary technologies in the J2EE platform are: Java API for XML-Based RPC (JAX-RPC), JavaServer Pages, Java Servlets, Enterprise JavaBeans components, J2EE Connector Architecture, J2EE Management Model, J2EE Deployment API, Java Management Extensions (JMX), J2EE Authorization Contract for Containers, Java API for XML Registries (JAXR), Java Message Service (JMS), Java Naming and Directory Interface (JNDI), Java Transaction API (JTA), CORBA, and JDBC data access API.

    </pre>

    siehe:
    http://java.sun.com/reference/api/index.html
    http://java.sun.com/j2ee/faq.html#j2e

    Comment


    • #3
      Hallo Jan.

      Vielen Dank für Deine Antwort.
      Ich glaube es jetzt verstanden zu haben.

      Also ist dann j2se 1.5 = java 1.5 tiger = jdk1.5 = java 5 richtig?

      Und j2ee1.4.2 = java 5 + die j2ee Zusatz-APIs (denke ich, oder?)

      Vielen Dank erstmal.

      Davi

      Comment


      • #4
        Enterprise Java Beans 3 werden in der J2EE 5.0 verfügbar sein. Die ist aber noch nicht da. Die aktuelle Version ist die J2EE 1.4.

        Zur J2SE 5.0 siehe

        http://www.javamagazin.de/itr/online_artikel/psecom,id,630,nodeid,11.html

        oder hier ein Auszug ...

        <<<
        Das neue Release wurde nicht mehr anhand der Version des JDK nummeriert, sondern erhielt eine neue Versionsnummer 5.0. Damit ist der neue Name der Java-Plattform Java 2 Platform Standard Edition 5.0 oder kurz J2SE 5.0. Das JDK und JRE wurden entsprechend benannt mit J2SE Development Kit 5.0 (JDK) und J2SE Runtime Environment 5.0 (JRE). Aus den Kürzeln j2sdk und j2re wird nun wieder jdk und jre. Nicht zuletzt wird die Versionsnummer 1.5 dennoch verwendet. Wenn Sie sich die Versionsnummer über java -version ausgeben lassen, wird die Version 1.5.0 zurückgegeben. Auch die Webseite des JDK ist unter java.sun.com/j2se/1.5.0/ erreichbar.
        <<&lt

        Comment


        • #5
          lustig

          bei der ganzen Hirnwichse über EJB3 EJB3 EJB3 entgeht wohl so manchem, dass das Ding noch überhaupt nicht da ist

          Höhepunkt im Java Magazin: man solle seine Persinstenz-Strategie auf EJB3 absitmmen, bla bla bla bla

          dabei ist das alles noch ein heisser ungelassener Furz, ausser ein paar Drafts ist noch nichts da [abgesehen vom JBoss-Wir-Sind-Die-Grössten-Und-Haben-EJB3 Demo-Alpha-Stuff

          Comment


          • #6
            Die JBoss Demo der EJB3 finde ich trotzdem sehr
            beeindruckend. Des Weiteren haben auch mehrere andere
            Hersteller ihre EJB3 Previews fertig, ich verweise an dieser
            Stelle etwa auf Oracle.

            Um auf die Ausgangsfrage zu antworten. JDK 1.5 genügt, um
            EJB 3.0 zu nutzen.

            Comment


            • #7
              Danke Dirk....
              ich hatte Dir zwar gestern schon geantwortet, aber irgendwie ist sie nicht hier erschienen...
              Ich habe jetzt auch den Artikel gelesen...
              Nur noch eine Frage:
              Ist jdk5 für JBoss richtig? Oder brauche ich j2ee1.4.2? Oder wie?
              Ich habe zwar JBOSS zum Laufen bekommen, aber sicher bin ich mir nicht, da ich die JBOSS_EJB3.0_Preview5 nicht zumLaufen bekomme..(alles so gemacht wie im manual)

              Danke nochmal....

              Davi

              Comment


              • #8
                Hallo Alexander,
                "Um auf die Ausgangsfrage zu antworten. JDK 1.5 genügt, um
                EJB 3.0 zu nutzen."

                Aber in NetBeans 4.1 (mit jdk1.5.0.3) meckert die IDE, bzw. kann ich nicht

                javax.ejb.

                importieren!!

                Generics kennt er, die neue for-each kennt er....alles ok, aber die javax.ejb. Klassen kann ich dann wohl nicht benutzen....

                Also mal von vorn:

                Entwicklung von ejb 3.0 mit NetBeans : Welche jdk?
                Dployen mit jBoss 4.1 : Welche jdk?

                Danke nochmal..
                Davi

                Comment


                • #9
                  Du musst eventuell die benötigten JAR Dateien in den
                  Classpath mit aufnehmen. Diese werden bei JBoss im
                  Verzeichnis clients oder so mitgeliefert. Sie sind nicht im jdk
                  dabei

                  Comment


                  • #10
                    Hallo Alexander,
                    nochmals vielen Dank....
                    Tja, wie bereits - im anderen Thread über JDK-Versionen - gesagt habe ich es so gemacht, und im CLASSPATH den Eintrag gemacht:

                    <i>C:\jboss-4.0.1\client\jboss-j2ee.jar;</i>

                    Ich habe es sogar auch so probiert:

                    <i>C:\jboss-4.0.1\client\</i>

                    Leider hat beides nicht fnktioniert!

                    NetBeans meckert immer noch!!

                    Ich habe sogar <i>j2ee</i>( also <i>j2sdk1.4.2_07) installiert und JAVA_HOME drauf gesetzt, aber nix da!!

                    Ich kämpfe aber weiter, und bin für jeden Tip dankbarst! ;o)
                    Gruß
                    David

                    </i&gt

                    Comment


                    • #11
                      Wahrscheinlich fehlen die .jar Dateien, welche mit der Preview
                      mitgeliefert werden. Diese enthalten die EJB3.0 Version des
                      javax.ejb.* Pakets. Insbesondere "jboss-ejb3.jar" ist wichtig.
                      In JBOSS_HOME/client/ befinden sich nur EJB2.x Versionen
                      der .jar Dateien.

                      Gruß,
                      Alexande

                      Comment


                      • #12
                        Hallo Alexander,
                        aber das kann doch nicht der Sinn der Sache sein, wenn SUN JDK5 einführt, und die Einführung von Annotations groß als Neuerung bekanntgibt, und es nicht im jdk mitgeliefert wird, oder irre ich mich?

                        Gruß

                        Davi

                        Comment


                        • #13
                          Annotationen sind ein neuer Mechanismus in Java und dieser
                          ist im JDK5 eingebaut. Du musst nun aber selber Deine
                          Annotationen definieren oder die Annotationen anderer nutzen.
                          Die Annotation für @Stateless sind in jboss-ejb3x.jar enthalten.
                          Das Kommando
                          >jar tf jboss-ejb3x.jar

                          listet den Inhalt des Java Archives auf. Ein Eintrag sollte
                          >javax/ejb/Stateless.class

                          sein. Bei diesem handelt es sich aus meiner Sicht, um die
                          gesuchte Annotation. Befindet sich also "jboss-ejb3x.jar" im
                          CLASSPATH, so sollte folgender Code funktionieren:

                          >import javax.ejb.Stateless;

                          >@Stateless public class CalculatorBean implements
                          CalculatorRemote,
                          CalculatorLocal
                          {
                          public int add(int x, int y)
                          {
                          return x + y;
                          }
                          public int subtract(int x, int y)
                          {
                          return x - y;
                          }
                          }

                          Im JDK5 selber kommen nur wenige Annotationen mit, etwa
                          @Documented ist "java.lang.annotation.Documented"

                          Gruß,
                          Alexander

                          Comment


                          • #14
                            Vielleicht nochmal als Zusammenfassung und Begriffsklärung:

                            1. Für EJB3.0 wird Java 5.0 = 1.5 = tiger = ... benötigt, genauer gesagt die Java Standard Edition.
                            2. EJB3.0 ist, ebenso wie EJB2.1 und ältere, eine Spezifikation von Schnittstellen und Klassen, die von verschiedenen Herstellern (JBoss, Sun [Java One Applicatiion Server], IBM, BEA, Oracle, etc.).
                            3. Die Implematierung aller in der Spezifikation genannten Klassen nennt man gemeinhin auch Application Server.
                            4. Installation von Java 5 und JBoss 4.0.2 ist also schon der erste Schritt zur erfolgreichen Arbeit mit EJB3.0
                            5. Allerdings ist EJB3.0 noch kein "fertiger" Standard. Es gibt vorläufige Spezifikationen, die sich allerdings noch ändern können: http://javashoplm.sun.com/ECom/docs/Welcome.jsp?StoreId=22&PartDetailId=ejb-3_0-edr2-spec-oth-JSpec&SiteId=JSC&TransactionId=noreg
                            6. Daher ist EJB3 noch nicht fester Bestandteil gebräuchlicher Application Server.
                            7. Auf der JBoss-Internet-Seite gibt es unter http://sourceforge.net/project/showfiles.php?group_id=22866&package_id=132063 eine Implementierung des bisher vereinbarten vorläufigen Standards. Dieses Preview muss in JBoss 4.0.2 installiert werden (Anleitung ist mit dabei).
                            8. Da die JBoss-Implementierung von EJB3.0 auf Hibernate basiert, müssen im Moment auch einige Hibernate-Konfigurationen vorgenommen werden (z.B. in der Datei hibernate.properties zur Definigion einer Dats source).
                            9. Jetzt kann's losgehen. Z.B. mit ein paar Beispielen von der JBoss-Seite: http://docs.jboss.org/ejb3/tutorial/index.htm

                            Comment


                            • #15
                              Hallo Stefan,
                              vielen Dank für diese klare Antwort.
                              Ich habe immer erwartet die ejb3.0 unter den J2EE-SDK zu finden, was nicht der Fall war. Da gibt es doch immerhin - seit k.A. wann - javax.ejb und javax.ejb.spi Pakete, und ich hatte angenommen, die neue Spezifikation müsste sich auch dort finden lassen, was aber nicht der Fall war.

                              Was ich allerdings nicht ganz verstehe, ist wozu man - bei der Erstellung von ejbs - das J2EE-<strong>SDK</strong>, also z.B. j2eesdk-1_4_01) braucht, außer für den AppServer von SUN? Denn benutzen tun man ja nur sie teilweise (die jars wie j2ee.jar)...

                              Und warum erkennt mein eclipse oder netBeans IDE die Annotation-Tags wie @Entity oder Sonstige nicht, obwohl Annotation Teil die der Java5 sind?

                              Gruß
                              Davi

                              Comment

                              Working...
                              X