Table Of Contents
Troubleshooting
Cadexceptions
Modify the CORBA Network Configuration
CORBA Cannot Connect to the Cisco BTS 10200 Softswitch
CORBA and EPOM Troubleshooting Steps
CORBA/EPOM Special Character Troubleshooting: Subscriber Commands
Troubleshooting
This chapter describes basic cadexceptions, debug, and network configuration procedures.
Cadexceptions
The following basic cadexceptions can be returned. The numbers given in the sample code refer to the text in the explanation. The text is returned if the sample code is used.
Error Message No Error
Explanation This is a placeholder since zero is not an error.
Sample Code public static final int EM_NONE=0;
Recommended Action No action. Not an error.
Error Message CIS Error
Explanation This error is used for internal processing errors that can relate to ORB interaction or
other runtime exceptions.
Sample Code public static final int EM_ERROR=1;
Recommended Action Retry the command. If the problem persists, restart the Name Service and
CORBA Adapter as described in the section Modify the CORBA Network Configuration.
Error Message CIS No Data
Explanation There was no data to return from a show command. This may not be a "real" error;
however, it is cleaner to throw an exception than a NULL object.
Sample Code public static final int EM_NODATA=2;
Recommended Action Verify that there is data for that particular Noun (id) by executing the same
command using the CLI. Refer to the Cisco BTS 10200 Softswitch Command Line Interface
Reference Guide for appropriate syntax.
Error Message User Security Error
Explanation A fault was found in the user security. This can result from an invalid login by a
password or username. This can also result from some internal error to the security system that failed
in validating the user identity.
Sample Code public static final int EM_USERSEC=5;
Recommended Action Verify that the username and password are correct and valid for access to the
Cisco BTS 10200 Softswitch. Cross-check by logging into the CLI with the same username and
password.
Error Message Permission Error
Explanation A command was attempted that failed the authorization tests for the command. The user
does not have permission to execute this command.
Sample Code public static final int EM_PERMISSION=6;
Recommended Action Verify that the user has the appropriate command privilege to execute the
request. Cross-check by executing the same command using the CLI as the same user. Refer to the
Cisco BTS 10200 Softswitch Command Line Interface Reference Guide for command privilege
information.
Error Message Error Message: Block Error
Explanation All provisioning on the switch is blocked because the Cisco BTS 10200 Softswitch is
in a maintenance mode. The command may be perfectly well formed and the connection is still valid.
Sample Code public static final int EM_BLOCK=7;
Recommended Action Try again later.
Error Message Linkage Error
Explanation The linkage failed.
Sample Code public static final int EM_LINKAGE=10;
Recommended Action This is an installation error. Call Cisco TAC.
Error Message Exception In Initializer Error
Explanation The initialization method failed.
Sample Code public static final int EM_INIT=11;
Recommended Action Retry the command again. If the problem persists, restart the Name Service and
CORBA Adapter as described in the section Modify the CORBA Network Configuration.
Error Message Class Not Found Exception
Explanation Class cannot be located.
Sample Code public static final int EM_NOTFOUND=12;
Recommended Action Verify that the CLASSPATH is set up and all jar files exist where specified in
the CLASSPATH. The CLASSPATH is set up in /opt/BTScis/bin/cis3 and /opt/ems/bin/Runtime.sh
on the EMS.
Error Message Illegal Access Exception
Explanation Class or initializer is not accessible.
Sample Code public static final int EM_ACCESS=13;
Error Message Instantiation Exception
Explanation Thrown if this class represents an abstract class, an interface, an array class, a primitive
type, or void; or if the instantiation fails for some other reason.
Sample Code public static final int EM_INSTANCE=14;
Recommended Action Verify that the CLASSPATH is set up and all jar files exist where specified in
the CLASSPATH. The CLASSPATH is set up in /opt/BTScis/bin/cis3 and /opt/ems/bin/Runtime.sh
on the EMS.
Error Message Security Exception
Explanation There is no permission to create a new instance.
Sample Code public static final int EM_SECURITY=15;
Recommended Action Verify that the CORBA adapter is running as root. Verify by performing the
following command on the EMS: ps -ef | grep cis3 and not the user.
Error Message Invalid Request Exception
Explanation Request is not valid or cannot be initialized.
Sample Code public static final int EM_REQUEST=16;
Recommended Action Verify that the XML request is syntactically correct according to the Cisco BTS
10200 Softswitch standard.
Error Message Invalid Noun Exception
Explanation Command noun is not found or is invalid.
Sample Code public static final int EM_NOUN=17;
Recommended Action Verify that the Noun (id) in the request is valid and correct for the current
software release of the Cisco BTS 10200 Softswitch. Cross-check by executing the same command
using CLI on the EMS. Refer to the Cisco BTS 10200 Softswitch Command Line Interface Reference
Guide for syntax information.
Error Message Invalid Verb Exception
Explanation Command verb is not found or is invalid.
Sample Code public static final int EM_VERB=18;
Recommended Action Verify that the Verb in the request is valid and correct for the current software
release of the Cisco BTS 10200 Softswitch. Cross-check by executing the same command using the
CLI on the EMS. Refer to the Cisco BTS 10200 Softswitch Command Line Interface Reference
Guide for syntax information.
Error Message SQL Exception
Explanation Thrown if the database cannot be accessed, if the constraints are violated, if there is
another table conflict, if there is a resource issue, or any other Oracle-related cause.
Sample Code public static final int EM_DATABASE=19;
Recommended Action Verify that the relational databases are currently running on the EMSs. Verify
by using the following commands:
1) ps -ef | grep mysqld. Verify there's a process running.
2) as root, perform a nodestat and verify that the Oracle database is running.
If either are not running, refer to the Cisco BTS 10200 Operations and Maintenance Manual to
restart these processes.
Error Message Invalid Value Exception
Explanation A parameter value exceeds the range or some other restrictions like text length, pick-list,
and so forth.
Sample Code public static final int EM_VALUE=20;
Recommended Action Verify that all the values within the XML request conforms to the restrictions
for those values. Cross-check by executing the same command with the same values using the CLI.
Error Message Invalid Key Exception
Explanation An invalid key or token was used to describe some data value.
Sample Code public static final int EM_KEY=21;
Recommended Action Verify that all keys and values are valid within the XML request. Cross-check
by executing the same command with the same values using the CLI.
Error Message Missing Parameter Exception
Explanation One or more required parameters were not included in the command parameter data.
Sample Code public static final int EM_PARAM=22;
Recommended Action Verify that all mandatory keys and values are valid. Cross-check by executing
the same command with the same values using the CLI.
Modify the CORBA Network Configuration
In previous releases, the operator was asked for either an IP address or hostname. In this 4.5.1 release, the CORBA Installation automatically selects VIP (Virtual IP) if the VIP is configured. Otherwise, the first Management IP address is selected. This requires adding the hostname on the client machine. The following procedure can also be used to modify the name usage in the Cisco BTS 10200 Softswitch. In most cases, it is better to change to an IP address to prevent name resolution issues in the client-side network.
Note
The hostname/IP address is used as part of the interoperable object reference (IOR) that is sent to the client side. That is why the name/IP address must resolve and route to the client.
Determine the hostname or IP address that works best for the client side of the network and perform the following steps to modify the CORBA network configuration:
Step 1
Edit the /etc/inittab file and modify the names on the last two entries to match the desired configuration. For example:
ns:3:respawn:/sbin/ins3 <VIP or EMS Management IP or hostname>
cs:3:respawn:/sbin/cis3 <VIP or EMS Management IP or hostname> <EMS Management IP #1>
< EMS Management IP #2>
Step 2
In the directory /opt/BTSoorb/config/. (a period (.) fully qualifies the domain directory), execute the setConfig.sh script. The XML configuration file is a bundled resource file in the OpenORB architecture. This command updates the JAR files with the modified OpenORB.xml file.
Step 3
Kill and restart the NameService (ins3) and CORBA Servant programs in the listed order.
The NameService (ins3) and CORBA Servant (cis3) programs restart automatically.
Step 4
Kill the Java children using the ptree and kill commands. Orphaned Java programs can cause unpredictable behavior.
CORBA Cannot Connect to the Cisco BTS 10200 Softswitch
If CORBA cannot connect to the Cisco BTS 10200 Softswitch, client-side hostname resolution may be required to match what was configured in the Element Management System (EMS).
Perform the following steps to troubleshoot:
Step 1
Determine the name used in the /etc/inittab file when invoking the entries:
ns:3:respawn:/sbin/ins3 <VIP or EMS Management IP or hostname>
cs:3:respawn:/sbin/cis3 <VIP or EMS Management IP or hostname> <EMS Management IP #1>
< EMS Management IP #2>
Step 2
Add the following arguments to the turn on debug-trace command to get the debug information on the client-side. These are the Java arguments:
-Dopenorb.debug.trace=DEBUG -Dopenorb.debug.level=HIGH
Step 3
If the hostname of the EMS server does not resolve, then an exception is thrown. If a default name was used such as "priems01" or "priems_nms1", these names do not resolve in the client network. Uninstall and then reinstall the CORBA package to modify the EMS to accept IP addresses.
CORBA and EPOM Troubleshooting Steps
This section describes various procedures for troubleshooting CORBA with the Extensible Provisioning and Operations Manager (EPOM). This section requires a knowledge of Unix and Java commands.
Caution 
EPOM cannot be co-resident with the EMS.
Perform the following steps when a problem is encountered:
Step 1
Verify that the CORBA application is running.
Step 2
Check the cis.log for errors or clues.
more /opt/ems/log/CIS.log
Step 3
Check the EPOM logs for errors or clues.
more var/opt/CSCOepom/logs
If the problem is with the way the Cisco BTS 10200 Softswitch CORBA services are configured, perform the following steps:
Step 1
Ensure that the Cisco BTS 10200 Softswitch hostname is provided in the CORBA configuration.
a.
If the hostname is provided, change it to the IP address of the Cisco BTS 10200 Softswitch and restart the CORBA services on the Cisco BTS 10200 Softswitch.
b.
If the hostname is not provided, stop and reinstall the CORBA application before doing anything else.
Step 2
Check if ports 683 and 14001 are listening on the Cisco BTS 10200 Softswitch server by using the following commands:
netstat -a |grep 683
netstat -a |grep 14001.
Step 3
Do a tail -f on the CIS.log on the Cisco BTS 10200 Softswitch server.
tail -f /opt/ems/log/CIS.log
Note
EPOM log files can be found at: /var/opt/CSCOepom/logs. Check for trace.log and localhost files on the EPOM server.
Step 4
After clicking on the Config button on the EPOM GUI, (you may need to click more than once):
netstat -a |grep 14001 and netstat -a |grep 683
Step 5
Make sure that the username and password are the same as given when adding the Cisco BTS 10200 Softswitch inventory to EPOM. The username and password are optiuser/optiuser by default. Verify this by logging into the system using the CLI.
CORBA/EPOM Special Character Troubleshooting: Subscriber Commands
Table 5-1 shows the CORBA and EPOM responses to special characters in Subscriber commands.
Table 5-1 CORBA and EPOM Responses to Special Characters
Character
|
Usage Example
|
CORBA/EPOM Response
|
` (single quote)
|
btsadmin>change subscriber
id=x1-6-00-00-ca-ac-ef-98_02;name=Joe'
|
Error Message BtsException:
IDL:oam.sswitch.com/cad/CadExceptions:1.0,
Invalid parameter value. name=Joe';
contains one of the following invalid
characters: ("')
Explanation The single quote is a reserved
character for delimiting strings. It is used this way
in caller-ID messages to the MTA. A single quote
cannot be used in a name because it causes an error
in the MTA that is parsing the caller-ID message.
|
" (double quote)
|
btsadmin>change subscriber
id=x1-6-00-00-ca-ac-ef-98_02;name=Joe"
|
Error Message org.omg.CORBA.UNKNOWN: Server
Exception: Unregistered vendor exception #0
vmcid: 0x0 minor code: 0 completed
Explanation Invalid parameter value.
name=Joe"; contains one of the following invalid
characters: ("')
The double quote is a reserved character for
delimiting strings. It is used this way in caller-ID
messages to the MTA. A single quote cannot be
used in a name because it causes an error in the
MTA that is parsing the caller-ID message.
|
; (semi- colon)
|
Example 1:
btsadmin>change subscriber
id=x1-6-00-00-ca-ac-ef-98_02;name=Joe;;
Reply : Success: Transaction 914661109242987301 was processed.
btsadmin>show subscriber id=x1-6-00-00-ca-ac-ef-98_02
ID=x1-6-00-00-ca-ac-ef-98_02
CATEGORY=INDIVIDUAL
NAME=Joe
STATUS=ACTIVE
COUNTRY=USA
PRIVACY=NONE
RING_TYPE_DN1=1
TERM_ID=aaln/S1/1
MGW_ID=iad-11
PIC1=NONE
PIC2=NONE
PIC3=NONE
GRP=N
USAGE_SENS=Y
SUB_PROFILE_ID=subpf1
TERM_TYPE=TERM
IMMEDIATE_RELEASE=N
TERMINATING_IMMEDIATE_REL=N
SEND_BILLING_DN=N
SEND_BDN_AS_CPN=N
SEND_BDN_FOR_EMG=N
Example 2:
btsadmin>change subscriber
id=x1-6-00-00-ca-ac-ef-98_02;name=Joe;
Reply : Success: Transaction 914661178134430501 was processed.
btsadmin>show subscriber id=x1-6-00-00-ca-ac-ef-98_02
ID=x1-6-00-00-ca-ac-ef-98_02
CATEGORY=INDIVIDUAL
NAME=Joe
STATUS=ACTIVE
COUNTRY=USA
PRIVACY=NONE
RING_TYPE_DN1=1
TERM_ID=aaln/S1/1
MGW_ID=iad-11
PIC1=NONE
PIC2=NONE
PIC3=NONE
GRP=N
USAGE_SENS=Y
SUB_PROFILE_ID=subpf1
TERM_TYPE=TERM
IMMEDIATE_RELEASE=N
TERMINATING_IMMEDIATE_REL=N
SEND_BILLING_DN=N
SEND_BDN_AS_CPN=N
SEND_BDN_FOR_EMG=N
Reply : Success: Entry 1 of 1 returned.
|
Error Message ID=x1-6-00-00-ca-ac-ef-98_02
CATEGORY=INDIVIDUAL
NAME=Joe;
STATUS=ACTIVE
COUNTRY=USA
PRIVACY=NONE
RING_TYPE_DN1=1
TERM_ID=aaln/S1/1
MGW_ID=iad-11
PIC1=NONE
PIC2=NONE
PIC3=NONE
GRP=N
USAGE_SENS=Y
SUB_PROFILE_ID=subpf1
TERM_TYPE=TERM
IMMEDIATE_RELEASE=N
TERMINATING_IMMEDIATE_REL=N
SEND_BILLING_DN=N
SEND_BDN_AS_CPN=N
SEND_BDN_FOR_EMG=N
Reply : Success: Entry 1 of 1 returned.
Explanation In the first example, the two
semicolons delimit only two null parameters. In
the second example, the last parameter is a null
parameter terminated by the <enter> key. The
<enter> key always terminates the last parameter
in the CLI.
The fact that the semicolons terminate the
command, without parameters between them,
makes this possible. Placing the semicolons
anywhere else causes the queue to hang.
|
% (percent sign)
|
btsadmin>change subscriber
id=x1-6-00-00-ca-ac-ef-98_02;name=Joe%
|
Error Message BtsException:
IDL:oam.sswitch.com/cad/CadExceptions:1.0,
Invalid parameter value. name=Joe%; Enter
at least 1 character, but not more than 32
characters.
Explanation The percent sign is a wildcard: for
example, show subscriber id=x1-6-00% shows all
subscribers whose id begins with x1-6-00. Thus
the percent sign is a valid character for the
subscriber noun, but is not valid when used with
the add or change verbs.
|
- (hyphen)
|
btsadmin>change subscriber
id=x1-6-00-00-ca-ac-ef-98_02;name=Joe-
|
Error Message Success: Transaction
914661231396356901 was processed.
Explanation This is a valid character but impacts
the way the caller id is displayed. Using this
character is not recommended.
|
_ (under- score)
|
btsadmin>change subscriber
id=x1-6-00-00-ca-ac-ef-98_02;name=Joe_
|
Error Message Failure: NAME cannot contain an
_ character
Explanation This is a valid character but impacts
the way the caller id is displayed. Using this
character is not recommended.
|
&
|
btsadmin>change subscriber
id=x1-6-00-00-ca-ac-ef-98_02;name=Joe&
Reply : Success: Transaction
914661254499435301 was processed.
|
Error Message org.omg.CORBA.UNKNOWN: Server
Exception: Unregistered vendor exception #0
vmcid: 0x0 minor code: 0 completed
Explanation The ampersand is a reserved character
in XML that causes this transaction to fail when
sent using XML over a CORBA interface.
|
@#$^&*()}{|\/<>,.:[]~!
(With ampersand)
|
btsadmin>change subscriber
id=x1-6-00-00-ca-ac-ef-98_02;name=Joe!@#$^&*()}
{|\/<>,.:[]~
Reply : Success: Transaction
914661290390225701 was processed.
|
Error Message org.omg.CORBA.UNKNOWN: Server
Exception: Unregistered vendor exception #0
vmcid: 0x0 minor code: 0 completed.
Explanation The ampersand is a reserved character
in XML that causes this transaction to fail when
sent using the XML over a CORBA interface.
|
@#$^*()}{|\/>,.:[]~! (No ampersand)
|
btsadmin>change subscriber
id=x1-6-00-00-ca-ac-ef-98_02;name=Joe!@#$^*()}{
|\/<>,.:[]~
|
Error Message Successful
Explanation These characters are valid.
|