Announcement

Collapse
No announcement yet.

RMI via Internetprotokolle / Webservice

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

  • RMI via Internetprotokolle / Webservice

    Hallo Leute,

    ich habe bereits fundierte Grundkenntnisse in Sachen RMI und stehe jetzt vor der Aufgabe, dass ich ein Protokoll (auf Client/Server Basis) mithilfe von RMI implementieren soll.

    Problem an der Sache ist, dass dieses Protokoll nicht nur im lokalen Netz laufen soll. Speziell die Firewall kann da meineswissens immer Probleme machen, wenn Client und Server sich in unterschiedlichen (mit Firewall geschützten) Netzen befinden.

    Daher soll ich im Voraus erst einmal klären ob eine RMI-Implemtentierung im Nachhinein in einem Webservice gekapselt werden kann bzw. über welche Internetprotokolle man gehen kann. (abgesehen von der Standard TCP/IP Verbindung)

    Gibt es irgendwelche Frameworks mit denen man die Aussagen treffen kann wie „Mit Framework XY kann RMI als WebService mit WS-Security betrieben werden“ oder „Mit Framework XY kann RMI ueber HTTPS betrieben werden“.

    Ich habe von der Möglichkeit der HTTP-Tunnelung gelesen, weiß jedoch nicht wie es dabei in Sachen Sicherheit und auch Performance aussieht.

    Leider findet man mit den Suchbegriffen RMI und Webservice fast ausschließlich Vergleiche der Vor- und Nachteile der beiden... daher bin ich für jede Hilfe und jeden Gedankenanstoß dankbar.

    Gruß,
    flex

  • #2
    ich habe bereits fundierte Grundkenntnisse in Sachen RMI und stehe jetzt vor der Aufgabe, dass ich ein Protokoll (auf Client/Server Basis) mithilfe von RMI implementieren soll.
    Also wenn es Java sein soll - verwende EJBs die können das schon. Ich kenne niemanden, der sich noch pure RMI antut.

    Daher soll ich im Voraus erst einmal klären ob eine RMI-Implemtentierung im Nachhinein in einem Webservice gekapselt werden kann bzw. über welche Internetprotokolle man gehen kann. (abgesehen von der Standard TCP/IP Verbindung)
    Du kannst Stateless Beans relativ problemlos in einen webservice überführen bzw. davon kapseln lassen.

    Gibt es irgendwelche Frameworks mit denen man die Aussagen treffen kann wie „Mit Framework XY kann RMI als WebService mit WS-Security betrieben werden“ oder „Mit Framework XY kann RMI ueber HTTPS betrieben werden“.
    Webservices und RMI machen prinzipiell das gleiche: Sie sorgen dafür, dass über einen Stub auf einem entfernten Server Methoden aufgerufen und Daten übertragen werden können. RMI und Webservices zu verheiraten ist daher nicht wirklich sinnvoll. Also entweder RMI (idealerweise mittels EJBs) oder Webservices (idealerweise Restfull Webservices und nicht den Soap Müll) aber nicht beides in einem.

    Dim
    Zitat Tom Kyte:
    I have a simple philosophy when it comes to the Oracle Database: you can treat it as a black box and just stick data into it, or you can understand how it works and exploit it as a powerful computing environment.

    Comment


    • #3
      hey Dim,
      danke für deine Antwort.

      ein reiner Webservice kommt nicht in Frage, da es sich um einen Prototypen handelt, der bereits auf Webservicebasis existiert und nun erweitert und auf RMI umgestellt werden soll.

      Jedoch soll es (wenn möglich) eine Fall-back Strategie auf Webservices geben - sprich Kapselung der RMI-Implementierung (auch wenn es technologisch sinnfrei ist - ist eben ein Prototyp)

      Die Lösung mit den Stateless Beans klingt interessant.
      Wie hoch ist da der programmiertechnische Mehraufwand gegenüber "normalem" RMI? Es handel sich ja lediglich um einfache Methodenaufrufe zwischen Client und Server bis das Protokoll einmal durchgelaufen ist.

      Könntest du da den Unterschied kurz erklären?


      Die direkte Kapselung von StandardRMI in einem Webservice habe ich erstmal aufgegeben - Grund siehe diese Diskussion bei stackoverflow.com http://stackoverflow.com/questions/3...via-webservice

      flex

      Comment


      • #4
        ok, die Webservice-Lösung soll nicht weiter verfolgt werden.

        Grund für die geforderte Kapselung in einem Webservice war die Funktionalität hinter Firewalls sicherzustellen.

        Dafür bietet RMI jedoch schon Tunnelung via HTTP oder SSL. Das sollte das hier beschriebene Problem ausreichend lösen.

        flex

        ps: pls close

        Comment

        Working...
        X