Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1. Server Side
1 Vamos a crear un nuevo proyecto Java usando Eclipse (o NetBeans u otro editor
lo prefiere), y lo llaman: CorbaAdditionServer -> Haga clic en Finalizar una vez
hecho
2 En el marco del proyecto CorbaAdditionServer , cree un nuevo archivo
llamado Addition.idl .Copie el cdigo siguiente en el nuevo archivo.
1
2
3
4
5
6
7
8
9
10
11
12
/ **
*
*author Imed
*/
mdulo AdditionApp
{
interfaz de adicin
{
larga complemento ( en largo una , en largo b );
unidireccional vaco apagado ();
};
};
/ **
*
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
*author Imed
*/
importacin AdditionApp . *;
importacin org . omg . CosNaming . *;
importacin org . omg . CosNaming . NamingContextPackage . *;
importacin org . omg . CORBA . *;
importacin org . omg . PortableServer . *;
importacin org . omg . PortableServer . POA ;
import java . util . Propiedades ;
clase AdditionObj extiende AdditionPOA {
privado orbe ORB ;
pblico vaco setORB ( orb_val ORB ) {
orbe = orb_val ;
}
Mtodo // implementar add ()
pblica int add ( int a , int b ) {
int r = a + b ;
volver r ;
}
// Implementar shutdown () mtodo
pblico vaco apagado () {
orbe . apagado ( false );
}
}
/ **
*
*author Imed
*/
importacin AdditionApp . *;
importacin org . omg . CosNaming . *;
importacin org . omg . CosNaming . NamingContextPackage . *;
importacin org . omg . CORBA . *;
importacin org . omg . PortableServer . *;
importacin org . omg . PortableServer . POA ;
import java . util . Propiedades ;
pblica clase StartServer {
pblicas estticas void principales ( Cuerda args []) {
tratar {
// Crear e inicializar el ORB //// llegar referencia a rootpoa & amp; activar el POAManager
Orbe ORB = ORB . init ( args , nulo );
POA rootpoa = POAHelper . angosta ( orbe . resolve_initial_references ( "RootPOA" ));
rootpoa . the_POAManager (). activar ();
// Crear siervo y registrarlo con el ORB
24
25
26
27
28
29
30
31
8 Abra una ventana nueva de consola CMD, escriba el siguiente comando para
iniciar el ORB
iniciar orbd -ORBInitialPort 1050
9 En Eclipse ahora, haga clic en el proyecto CorbaAdditionServer, entonces
Haga clic en Ejecutar -> Ejecutar configuracin como se muestra a
continuacin:
3 Haga clic derecho sobre src paquete bajo CorbaAdditionClient y haga clic
en Pegar
/ **
*
*author Imed
*/
importacin AdditionApp . *;
importacin org . omg . CosNaming . *;
importacin org . omg . CosNaming . NamingContextPackage . *;
importacin org . omg . CORBA . *;
import java . io . *;
import java . util . *;
pblica clase StartClient {
/ **
*param Args los argumentos de la lnea de comandos
*/
pblicas estticas void principales ( Cuerda [] args ) {
tratar {
Orbe ORB = ORB . init ( args , nulo );
org . omg . CORBA . Objeto objRef = orbe . resolve_initial_references
( "NameService" );
22
NamingContextExt ncRef = NamingContextExtHelper . angosta ( objRef );
23
Adems addobj = ( Suma ) AdditionHelper . angosta ( ncRef . resolve_str ( "ABC" ));
24
25
Scanner c = nuevo escner ( Sistema . en );
26
Sistema . cabo . println ( "Bienvenido al sistema de adicin:" );
27
28
29
30
31
para (;;) {
Sistema . cabo . println ( "Introduzca un:" );
Cadena aa = c . nextLine ();
Sistema . cabo . println ( "Enter b:" );
Cadena bb = c . nextLine ();
32
int a = Entero . parseInt ( aa );
33
int b = Entero . parseInt ( bb );
34
int r = addobj . aadir ( un , b );
35
Sistema . cabo . println ( "El resultado de la adicin es:" + r );
36
Sistema . cabo . println ( "-----------------------------------" );
37
}
38
}
39
captura ( Exception e ) {
40
Sistema . cabo . println ( "Hola excepcin Cliente:" + e );
41
e . printStackTrace ();
42
}
43
44
}
45
46 }
7 Haga clic en Aplicar y luego en Ejecutar . Eso es todo por el cliente, que deben
estar en ejecucin.