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.