Borland(R) Enterprise Server VisiBroker(R) デベロッパーズガイド
リクエストを送信する最も単純な方法は,そのリクエストのinvokeメソッドを呼び出すことです。このメソッドはリクエストを送信し,応答を待ってからクライアントプログラムに戻ります。return_valueメソッドは,リターン値を表すAnyオブジェクトのポインタ(C++)またはリファレンス(Java)を返します。
try { . . . // Create request that will be sent to the account object request = account->_request("balance"); // Set the result type request->set_return_type(CORBA::_tc_float); // Execute the request to the account object request->invoke(); // Get the return balance CORBA::Float balance; CORBA::Any& balance_result = request->return_value(); balance_result >>= balance; // Print out the balance cout << "The balance in " << name << "'s account is $" << balance << endl; } catch(const CORBA::Exception& e) { cerr << e << endl; return 1; } return 0; . . .
try { . . . // Create request that will be sent to the account object request = account._request("balance"); // Set the result type request.set_return_type(orb.get_primitive_tc (org.omg.CORBA.TCKind.tk_float)); // Execute the request to the account object request.invoke(); // Get the return balance float balance; org.omg.CORBA.Any balance_result = request.return_value(); balance = balance_result.extract_float(); // Print out the balance System.out.println("The balance in " + name + "'s account is $" + balance); } catch(Exception e) { e.printStackTrace(); }
All Rights Reserved. Copyright (C) 2006, Hitachi, Ltd.
COPYRIGHT (C) 1992-2004 Borland Software Corporation. All rights reserved.