CORBA 2.6.1 Administration Guide

server is still running:
/home/ecrm/stack: java Server -ORBprofile tcp_server
wrote object reference to file stack.ior
Solution: Verify that the CORBA server generated a valid object reference (IOR). If the server wrote an IOR file, display the contents of that file
with the following command (using the appropriate file name in place of stack.ior):
showior stack.ior
A valid IOR generates output that looks similar to this:
Interoperable Object Reference:
type_id=IDL:Stack:1.0
Tagged profile #1:
Tag=TAG_INTERNET_IOP (0)
Profile data:
Major=1, Minor=0
Host=172.17.202.44
Port=1097
110 bytes:
(0)[N][S][D][O][M](0)(0)(0)(0)(0)(11)[t][c][p][_][s] [e][r][v][e][r](0)(0)(0)(0)(0)(14)[I][D][L][:][S][t][a][c][k]
[:][1][.][0](0)(0)(0)(0)(0)(0)(10)[\][A][R][N][O][L][D][.][$] (0)(0)(0)(0)(0)(0)(13)[1][:][3][3][7][:][1][3][7][5][9][2][8]
(0)(0)(0)(0)(0)(0)(1)(0)(0)(0)(8)[R][o][o][t][P][O][A](0)(0)(0)
(16)(0)(0)(0)(0)(4)(0)(0)(0)(4)(0)(0)
An invalid IOR generates output that looks like this:
Interoperable Object Reference:
type_id=IDL:Stack:1.0
If the output indicates that the IOR is invalid, verify the configuration of the CORBA server. For example, make sure that the –ORBprofile
“tcp_server” parameter is valid by using the following commands:
/home/ecrm/stack: cfgmgt
[dbname:$system.zorbsdk.NSDCFGDB] 1>entity tcp_server@ORB
port_number 5031
tcp_server true
host_name 172.17.202.44
Also verify that the IP address is valid and that the port number is not in use by another process.
Explanation: The server code generates an IOR based on command-line configuration parameters. If the server is using a TCP configuration
(specified by tcp_server), then the CORBA server listens for client connections on the specified port number and IP address. If any parameters
in the configuration are incorrect, a client might not be able to connect to the server, even if the server is running and the CORBA code in both
client and server is 100% correct.
For more information about verifying the TCP/IP configuration, see the following problem description and also
Verifying TCP/IP Configuration.
Problem: When you run the client, you get the COMM_FAILURE error message. The server does not write an IOR file, so you cannot display
the contents of the file to verify that the CORBA server generated a correct IOR.
Solution: To verify the IOR in this case, you need to know what Naming Context id the server used. For example, if the Authorizer CORBA
server registered its IOR in the Naming service using the ID [Authorizer, Obj], you could use the following commands to verify the Authorizer
IOR:
/home/ecrm/stack: ns_browse resolve Authorizer Obj > server.ior
/home/ecrm/stack: showior server.ior
Interoperable Object Reference:
type_id=IDL:Authorizer:1.0
Tagged profile #1:
Tag=TAG_INTERNET_IOP (0)
Profile data:
Major=1, Minor=0
Host=localhost
Port=2240
172 bytes:
(0)[N][S][D][O][M](0)(224)(0)(0)(0)(11)[t][c][p][_]
[s][e][r][v][e][r](0)(16)(0)(0)(0)(19)[I][D][L][:][A][u][t][h]
[o][r][i][z][e][r][:][1][.][0](0)(136)(0)(0)(0)(29)[S][a][t][ ]
[J][u][n][ ][1][6][ ][1][3][:][2][8][:][3][7][ ][P][D][T][ ][2]
[0][0][1](0)(0)(0)(0)(0)(0)(0)(28)[S][a][t][ ][J][u][n][ ][1]
[6][ ][1][3][:][2][8][:][3][7][ ][P][D][T][ ][2][0][0][1](0)(0)
(0)(2)(0)(0)(0)(8)[R][o][o][t][P][O][A](0)(0)(0)(0)(14)[A][u]
[t][h][o][r][i][z][e][r][P][O][A](0)(0)(0)(17)(16)(1)(0)(0)(0)
(0)(10)[A][u][t][h][o][r][i][z][e][r](0)(0)
Explanation: If the server does not use an IOR file, then it must use the Naming Service to register its object reference. Client programs
obtain the IOR from the Naming Service to connect to the server. The
ns_browse resolve command retrieves the IOR from the Naming Service
and saves it to a file. Then you can use the
showior command to verify the IOR.
Verifying TCP/IP Configuration
Problem: You want to verify that the TCP/IP configuration is correct.
Solution: After listing the contents of the IOR with the
showior command, verify the following items:
-host IP address
-port number
If the IP address is incorrect, change it. If the port number is already in use by another process, change the port number. To verify that the server
is actually listening on that port number, use the following commands from an OSS window:
/home/ecrm/stack: gtacl -c "scf info subnet \$z*.*"
gtacl[9]: warning: unable to propagate all environment variables