HomeDigital EditionSys-Con RadioSearch Java Cd
Advanced Java AWT Book Reviews/Excerpts Client Server Corba Editorials Embedded Java Enterprise Java IDE's Industry Watch Integration Interviews Java Applet Java & Databases Java & Web Services Java Fundamentals Java Native Interface Java Servlets Java Beans J2ME Libraries .NET Object Orientation Observations/IMHO Product Reviews Scalability & Performance Security Server Side Source Code Straight Talking Swing Threads Using Java with others Wireless XML

"Java and Corba"
Vol. 3, Issue 1, p. 60


Listing 1: Example IDL specification.
module example   
   typedef string stringArray[5];  
   typedef sequence<long> longs;  
   exception UnequalLength {};  

   interface writer {  
     void write(in string s);  

   interface server: writer   
     void arryfy(in string s,   
                 out stringArray);  
     longs sum(in longs a,   
               in longs b)   
           raises (UnequalLength);  

Listing 2: Output produced by IDL compiler.
package example;  
public interface writer   
   void write(String s);  

package example;  
public interface server  
   extends example.writer  
   void arryfy( String s,   
       StringArray5OutHolder sa );  

   int[] sum(int[] a, int[] b)  
       throws UnequalLength;  

Listing 3: Implementation of the operation sum.
int[] sum(int[] a, int[] b)  
   throws UnequalLength  
   if( a.length != b.length )  
      throw new UnequalLength();  
   for(int i=0; i<a.length; i++)  
      a[i] = a[i] + b[i];  
   return a;  


All Rights Reserved
Copyright ©  2004 SYS-CON Media, Inc.
  E-mail: [email protected]

Java and Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. SYS-CON Publications, Inc. is independent of Sun Microsystems, Inc.