Skip Headers

Oracle Voice and Wireless Release Notes
Release 1 Version 9.0.3

Part Number B10089_01
HomeSolution Area

Oracle Voice and Wireless

Release Notes

Release 1 Version 9.0.3

August, 2002

Part No. B10089-01

This document summarizes the differences between Oracle Voice and Wireless and its documented functionality.

See Also:

Oracle9i Application Server Release Notes

The following topics are addressed:

1 Required Fixes

This section details vital issues and their solutions that must be accomplished to enable the proper functioning of Oracle Voice and Wireless.

1.1 Configuring the Proxy Server

Accomplish this step on the middle tier. To specify a complete domain in the list of Proxy "Exception Addresses", prepend the domain name with a dot ("."). Here are the steps:

  1. Log into Enterprise Manager at http://<hostname>:1810

  2. Enter "ias_admin" as your username.

  3. Enter the password you supplied at install time.

  4. Select the Application Servers tab.

  5. Click on the name of the Application Server.

  6. Click the Wireless link.

  7. Select the Site tab on the resulting page to display the Site screen.

  8. In the Site screen, select Proxy Server (located under "Configuration").

  9. Enter the values of Exception Address in the Exception Addresses Input box.


    Domain names specified in the exception addresses should be prepended with a ".". For example, to specify the domain "" in the Exception Addresses use "" instead of "*" or "".

Here's an example:

To specify the domain "" and the localhost in the Exception Addresses, enter "localhost||" in the Exception Address input box. For more information, see Section 4.4.1: "Configuring the Proxy Server" in Oracle Voice and Wireless Getting Started and System Guide.

1.2 Subscriber Name While Migrating Users

You may omit this step if you are completing a fresh installation.

The subscriber name argument to the (for UNIX) or ptgUpgradeRepository.bat (for Windows) script must be the DNS subdomain that the machine is registered under (that is, if the machine has a fully-qualified DNS name, then the subscriber name argument is foo.). If for example, it is, then the subscriber name argument would be bar.

1.3 Running Oracle Voice and Wireless Against an Upgraded OID

You may disregard this issue if you are not running against an upgraded OID.

This version of Oracle Voice and Wireless requires a user with the dn:

cn=orcladmin, cn=Users, <default subscriber dn>

to exist in the upgraded OID. If you are using wireless functionality (for example, Self Registration), with user-related model APIs against this OID instance, then this user should be granted CREATE/ DELETE/EDIT privileges for all the users in the default subscriber.

Before installing Oracle Voice and Wireless against an upgraded OID, the above-mentioned entity must be created with appropriate privileges. For details on creating such an entity with appropriate privileges refer to Chapter 12 - "Managing Oracle Internet Directory" in Oracle 9iAS Administrator's Guide, and Chapter 13 - "Directory Access Control" in Oracle Internet Directory Administrator's Guide.

1.4 Registering Oracle Portal Provider for Wireless System Manager and Customization Fails

If both the Infrastructure and Middle tiers are installed on the same machine, and the Enterprise Manager daemon running on that computer is referring to the Infrastructure home, then the "Register Oracle Portal Provider for Wireless System Manager" and "Register Oracle Portal Provider for Wireless Customization" from the Voice and Wireless site will throw "java.lang.NoClassDefFoundError" errors.

In the orion-web.xml file of the Infrastructure install, the Portal jars (pdkjava.jar and ptlshare.jar) should refer to the location of the middle-tier installation.

For example, if the Infrastructure is installed in:

and the Middle Tier is installed in:

then the following entries in the Enterprise Manager daemon orion-web.xml:

<classpath path="/private/ias20_infra/portal/jlib/pdkjava.jar"/>

<classpath path="/private/ias20_infra/portal/jlib/ptlshare.jar"/>

should be replaced with:

<classpath path="/private/ias20_midtier/portal/jlib/pdkjava.jar"/>

<classpath path="/private/ias20_midtier/portal/jlib/ptlshare.jar"/>

Restart the opmn process for the changes to take effect.

1.5 Service Errors and NoClassDefFound Exceptions

After accessing a large number of different module services or HTTP adapter-based services (with JSP-based content sources hosted on the same Java VM), some of the services fail with a 'service error'. Accessing the target JSPs results in a 'NoClassDefFound' exception. Restarting the server corrects the problem.

When an application is loaded for the first time, the OC4J classloaders read the class bytes in the library jars into memory; these do so without the classes being referenced (because the application instantiates classes from an in-memory array).

Class files resulting from compiling JSP files are loaded dynamically. In time, the heap gets filled up and newer classes from compiled JSPs cannot be read into the memory array(s), nor instantiated on the heap. Hence the top-level classloaders fail with a 'NoClassDefFound' exception. In subsequent lookups, the 'OutOfMemoryError' is not thrown since the JDK classloader loadClass( ) implementation semantics prescribe NOT reloading classes that could not deterministically be loaded earlier.

To determine if this is the case, check the number of OutOfMemoryErrors in sys_panama.log. That number should be the same as the number of times the server has been restarted.

If it is the case, increase the heap-size for the VM in opmn.xml by modifying the Java option subelement of the OC4J element corresponding to the instanceName OC4J_Wireless.

  1. From your browser, point to Oracle Enterprise Manager http://hostname:1810

  2. Login to EM as ias_admin/<password supplied at install time>

  3. Select your mid tier instance.

  4. Select OC4J_Wireless. The OC4J_Wireless screen appears.

  5. Select Server Properties (located under Instance Properties at the bottom of the OC4J_Wireless page) to invoke the Server Properties page. A page with command-line options appears which includes an editable field for Java Options which you use to set the heap size.

  6. Use the Java Options field to set the heap size.

  7. Click Apply.

For more information, see: "Setting the JVM Heap Size for OC4J Processes" in Chapter 6 of Oracle9i Application Server Performance Guide.

1.6 Run OID Replication Server to Purge OID Change Log

Accomplish this step on the infrastructure. This version of Oracle Voice and Wireless relies on the Provisioning Integration Service provided by the Directory Integration Platform to be notified of user and/or group changes in OID. These changes are stored in the OID change log and are appropriately filtered by the Provisioning Integration Service before being delivered as change events to this application.

Even if you are not deploying the OID server in replication mode, ensure that the directory administrator starts up the replication server in order to periodically purge unnecessary change log entries.

This can be done by starting the replication server using the following command:

$ORACLE_HOME/bin/oidctl connect=<net_service_name> 
flags="-p <ldapserver_port_number>" start


In Oracle9iAS 9.0.2, user information is stored in OID, where user names are case-insensitive. This is different from earlier versions of Oracle Voice and Wireless in which user names were case-sensitive.

For more information on starting and stopping the replication server, see Chapter 3: Preliminary Tasks and Information in the OID Administrator Guide.

Without this periodic cleanup, the OID change log can grow to occupy the entire file system, causing the OID service to become unavailable. The need to start the replication server to purge the change log is only a temporary measure; it will be automatically addressed in a future release.

1.7 Synchronize Clocks

Accomplish this step on the middle tier and infrastructure. Clocks on all machines that are part of an Oracle9iAS instance must be synchronized. This can be done by running NTP (Network Time Protocol) daemons on all machines running the various components of an Oracle9iAS deployment. Run xntpd (or similar daemon processes) on most UNIX-like architectures and abouttime or similar software for Microsoft Windows platforms.

This is a requirement because several interdependent components require that clocks be synchronized for them to work coherently. All platforms are affected by this requirement.

1.8 Display Properties

Accomplish this step on the middle tier (UNIX only). Due to a JDK bug, HTML screens may have broken image tabs. To work around this issue, modify opmn.xml in: [Oracle Home]/opmn/conf

Modify the value of the DISPLAY property to point to a machine with an X server running. Also, be sure to allow other X-windows clients to connect to that machine. To achieve this, run the xhost command on the machine running the X-server.

Here is an opmn.xml example:

<prop name="DISPLAY" value=""/>

This affects all UNIX platforms.

1.9 Auto-starting Applications

Accomplish this step on the middle tier. Due to a bug, none of the applications will be auto-started (that is, an application is started only when the first request for that application arrives). To change this behavior to auto-start applications (especially for push and async applications), edit the file config/default-web-site.xml to add a load-on-startup attribute to the web-app tag, setting the value of the attribute to True.

For instance, to auto-start the async application which resides in the
OC4J_Wireless product group, edit the file
[Oracle Home]/j2ee/OC4J_Wireless/config/default-web-site.xml
and change the web-app tag for the async application such that it looks like the entry below:

<web-app application="async" name="async-web" root="/async" load-on-startup="true"/>

1.10 HTML Pages Protected by mod_osso May Not Render on NetScape 4.7

Accomplish this step on the middle tier. Due to a bug, HTML pages (such as System Manager, etc.) may not work with NetScape 4.7. The workaround for this problem is to re-register the mod_osso partner app to use the WebCache port number, rather than the Oracle HTTP Server port number. For the details and the exact steps as to how to perform this, please refer to the Oracle HTTP Server Release Notes.

All platforms are affected by this.

2 Verifying Your Installation

This section contains information that enables you to ensure that you've correctly set up Oracle Voice and Wireless for use.

Ensure you perform a full offline backup before installing Oracle Collaboration Suite into an existing Oracle9iAS installation. If you later want to rollback to your old infrastructure, you will need to restore your previous database.


For more information on backup and restore, see your database documentation:

Oracle9i User-Managed Backup and Recovery Guide

Oracle9i Recovery Manager User's Guide

2.1 Installing Oracle Collaboration Suite into an Existing Oracle9iAS Infrastructure

This note is applicable only to deployments in which an Oracle Collaboration Suite middle-tier is installed against an existing Oracle9iAS infrastructure (or an infrastructure upgraded to Oracle9iAS Wireless In such cases, installing Oracle Collaboration Suite middle-tiers will cause the Wireless schema to be upgraded to the Oracle Collaboration Suite schema. The Voice and Wireless component installed in the Oracle9iAS Oracle_Home will not function.

The workaround for this situation is to upgrade all existing Oracle9iAS middle-tiers to Wireless The Wireless patch is distributed via Oracle Technology Network (

Furthermore, the configuration parameters for the Mobile PIM applications will be overwritten with Oracle Collaboration Suite settings. The Mobile PIM applications installed in the Oracle 9iAS Oracle_Home will not function.

This note applies to all platforms.

2.2 Downgrading

Before you upgrade Oracle9iAS version 9.0.2 to Oracle Collaboration Suite, backup your repository first (the Oracle9iAS version 9.0.2 infrastructure wireless schema is upgraded when you install Oracle Collaboration Suite).

If you downgrade to Oracle9iAS version 9.0.2 in the future, you can restore the backup repository. No middle-tier downgrade is needed because the Oracle Collaboration Suite middle-tier is installed in a different ORACLE_HOME than the Oracle9iAS version 9.0.2 middle-tier.


For more information on backup and restore, see your database documentation:

Oracle9i User-Managed Backup and Recovery Guide

Oracle9i Recovery Manager User's Guide

2.3 Accessing and Managing Oracle Voice and Wireless

After installation and configuration, ensure that you are using the correct URLs, port numbers, and login information.

To ensure that you are using the correct port number, check the port number for Oracle Voice and Wireless stored in:

[Oracle home]/install/portlist.ini

For more information on port usage, see Oracle9i Application Server Installation Guide and Oracle9i Application Server Administrator's Guide.

2.3.1 Accessing Oracle Voice and Wireless

To access Oracle Voice and Wireless, use the following URLs and other information:

Table 1 Accessing Oracle Voice and Wireless
Component URL Port number and login

Oracle Voice and Wireless Device Portal


The default port number for Oracle Voice and Wireless is 7777. The port number range is 7777 to 7877.

Enter your user name and then enter your password. If you are an administrator, enter orcladmin as your user name. The password for orcladmin is what you supplied at installation time for ias_admin.

Oracle Voice and Wireless System Manager Portal


2.3.2 Managing Oracle Voice and Wireless

Management of Oracle Voice and Wireless Server is accomplished through Oracle Enterprise Manager. To access the System Manager for Oracle Voice and Wireless through the Oracle Enterprise Manager (OEM) console:

Table 2 Accessing Oracle Voice and Wireless
Component URL Port number and login

Oracle Enterprise Manager


The default ports are 1810 and 1811. The port number range is 1812 to 1820.

Enter your OEM user name (ias_admin is the default) and the password you supplied at installation.

For more information, see Oracle9iAS Wireless Getting Started and System Guide.

3 Additional and Updated Information

You can find additional and updated documentation and other information on Oracle Voice and Wireless through the Oracle Technology Network (OTN). OTN provides developers with the latest information on Oracle's products and technologies. To access OTN, visit:

3.1 Oracle Voice and Wireless Access Number

The Oracle telephone number for accessing Voice and Wireless is contained in the welcome.uix file, and is displayed on the right-hand side of the interface. This telephone number is only for Oracle-hosted instances. Administrators must change the access number to their own corporate numbers to customize the information for their own instances.

3.2 Messaging System Notes

Following are notes on the Messaging System for this release.

  1. You can declare the sending and receiving capability of transport driver programmatically, or through the site-level configuration of the messaging server drivers, accessed through Oracle Enterprise Manager. In this release, a value returned by a driver that has been configured programmatically overrides one set through the UI (if there is a conflict between the two).

  2. The body of an email can only consist of text; you cannot receive email attachments.

  3. Oracle Voice and Wireless can use a transport driver that is configured to either deliver or receive messages. The Wireless messaging system is considered a store-and-forward system and requires no immediate delivery capability for a driver. That is, transport drivers are considered active, even if you have not created any driver instances that are based upon them. As a result, you may encounter problems with your installation of Wireless. For example, this release includes a Push driver and a messaging server with an instance of the Push driver. By default, the Push driver handles SMS, Voice, Email and Fax. If you do not want to use the Push driver and choose to configure your own SMS or Email driver (as well as the corresponding driver instances), you must remove the Push driver itself to ensure that your own drivers are used explicitly. Removing the messaging server's driver instance for the Push driver is not sufficient. In addition to removing the Push driver, you can optionally remove the instances of the Push driver. This is an optional step, because any remaining instances become obsolete once you remove or modify the definition of a driver.

    If you do not remove the Push driver, then Wireless cannot send an SMS message. The SMS driver does not receive the delivery request because the system still considers the Push driver capable of delivering SMS. The delivery request remains in the system until a future instance of the Push driver becomes available.

  4. The statistics of the transport system performance on wireless servers (such as the Async Server and Alert Server) does not function correctly in this version. The problem will be corrected in a future release.

3.3 Pointing to a Different Schema

Generic to all platforms.

If, for some reason, the Wireless schema (that is, the database connect string and/or password have been modified to point to a different schema, the targets.xml file on the middle tier must be modified to reflect this change. Edit targets.xml in Oracle Voice and Wireless Release 9.0.2 OracleHome/sysman/emd, to make the following changes (in bold) to the target entry corresponding to oracle_wireless.

<Property NAME="ConfigDBPort" VALUE="port number of new database"/>

<Property NAME="ConfigDBpassword" VALUE="schema password of new database" ENCRYPTED="FALSE"/>

<Property NAME="MachineName" VALUE="machine name of new database"/>

<Property NAME="ConfigDBSID" VALUE="SID of new database"/>

<Property NAME="ConfigDBMachineName" VALUE="machine name of new database"/>

<Property NAME="UserName" VALUE="schema name of new database" ENCRYPTED="FALSE"/>

<Property NAME="Port" VALUE="port number of new database"/>

<Property NAME="SID" VALUE="SID of new database"/>

<Property NAME="ConfigDBUserName" VALUE="schema name of new database" ENCRYPTED="FALSE"/>

<Property NAME="ORACLE_HOME" VALUE="/private/ias/OraHome1"/>

<Property NAME="password" VALUE="schema password of new database" ENCRYPTED="FALSE"/>

3.4 High-Availability for Oracle Voice and Wireless

In Oracle9iAS 902, wireless applications cannot be clustered using the Oracle9iAS clustering mechanism. However, it is still possible to configure Oracle9iAS 902 such that a high-availability deployment can be achieved. Complete the following steps for high-availability deployment.


Remember to back up all files before you modify them!

  1. Install the Oracle9iAS 902 Infrastructure tier on a machine and install multiple middle-tiers on separate machines. Ensure that each of these middle-tier installations point to the infrastructure tier.

  2. Shut down DCM and all process by running the command
    [oracle home]/dcm/bin/dcmctl stop

  3. Shut down Oracle Enterprise Manager by running the command
    [oracle home]/bin/emctl stop

  4. Verify that the file [oracle home]/opmn/conf/ons.conf on each of the mid-tiers and on the infrastructure tier contains IP-address entries for all the other tiers. If not, file and add missing IP-address entries.

  5. On each middle-tier, increase the number of processes that need to participate in the default island for the OC4J_Wireless OC4J instance to the desired number.

    This can be done from the EM console or by modifying the file [oracle home]/opmn/conf/opmn.xml.

    For details and concepts of OC4J instance and OC4J islands refer to the OC4J Administration Guide.

    For instance, if modifying opmn.xml, a typical entry to start 4 OC4J processes in the default island would be of the form:

    <oc4j maxRetry="3" instanceName="OC4J_Wireless" gid="OC4J_Wireless" numProcs="4">

  6. In the mod_oc4j configuration file for each middle-tier (that is: [oracle home]/Apache/Apache/conf/mod_oc4j.conf), modify the mount-point entries for the Wireless runtime. If two mid-tiers [M1 and M2] are used, the entries should be of the form:

    Oc4jMount /ptg instance://,


    Oc4jMount /ptg/* instance://,

    and c2 are the respective Oracle9iAS 902 instance names and can be determined by running the command:
    [oracle home]/dcm/bin/dcmctl whichInstance.

    These entries should be exactly the same for all middle tier machines.

  7. Run [oracle home]/dcm/bin/dcmctl updateConfig to update the DCM repository with the configuration file changes.

    On slow machines, it is likely that a DCM error (timeout) of the form ADMN-906005 is displayed. If this occurs, run the command [oracle home]/dcm/bin/dcmctl getReturnStatus and wait until the command exits. This confirms that the changes have been propagated to the DCM repository.

  8. Add the tag <cluster-config/> under the <orion-web-app> tag in the file [oracle home]/j2ee/OC4J_wireless/application-deployments/ptg/ptg-web/orion-web.xml.

  9. Start DCM and all processes by running the command
    [oracle home]/dcm/bin/dcmctl start.

  10. Start EM by running the command [oracle home]/bin/emctl start

  11. Configure a hardware load-balancer to point to the middle-tiers.

Currently, high-availability support is only available for the core server runtime (by default mapped to the URI /ptg/rm).

For more information, refer to the OC4J documentation.

Oracle is a registered trademark, and Oracle9i, OracleMobile, PL/SQL, SQL*Net, and SQL*Plus are trademarks or registered trademarks of Oracle Corporation. Other names may be trademarks of their respective owners.

Copyright © 2002 Oracle Corporation.

All Rights Reserved.

Copyright © 2002 Oracle Corporation.

All Rights Reserved.
HomeSolution Area