Frage

Ich habe eine corba releated Frage.

In meiner Java-Anwendung Ich benutze typedef Sequenzdaten;

Nun spielte ich um mit diesem Datenvektor. Wenn ich direkt mit der Corba-Spezifikation Sequenz wird entweder zu xs umgewandelt werden: base64Binary oder xs: hexBinary. Es sollte ein undurchsichtiger Typ sein und so sollte es keine Rangierung verwenden.

Ich habe versucht, verschiedene IDL-Stile:

void Get(out Data d);
Data Get();

aber was ich sehe, ist, dass die Daten zu bewegen mit Corba viel langsamer ist direkt eine Steckdose als verwenden. Ich bin mit einem wenig Aufwand in Ordnung, aber es sieht für mich wie tha Daten noch vermarshallten wird.

Muss ich irgendwie meine Kugel konfigurieren, dass die Rangierung zu unterdrücken, oder habe ich etwas verpasst.

War es hilfreich?

Lösung

1) Nein, es gibt keine Notwendigkeit, etwas zu konfigurieren. 2) Sie haben nicht etwas verpasst.

Als CORBA alles marshalles wird ein Oktett Sequenz auch umgeleitet. Es ist immer vermarshallten so wie es (als Byte-Sequenz) ist . Rangierung bedeutet nicht, dass es in irgendeiner Weise zu ändern hat. Die CDR-Codierung wird jedes Mal für Objektserialisierung verwendet. Dieser Prozess wird als Rangier-.

Btw tun verwenden Sie Suns Java-Kugel oder JacORB? Wie jeder ORB andere oder zusätzliche Eigenschaftseinstellungen aufweisen. (Aber es sollte nicht haben ...)

octect Definition re CORBA 3.0.3 spec. „Werte für ein Oktett Konstante außerhalb des Bereichs von 0 bis 255 werden einen Fehler bei der Kompilierung verursachen [...] Der Oktett Typ ist eine 8-Bit-Menge, die garantiert keine Umwandlung zu unterziehen, wenn sie durch das Kommunikationssystem übertragen werden. "

Bearbeitungen in kursiv

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top