Debugging Windows and Windows Mobile Device Development

Device client and Unwired Server troubleshooting tools for diagnosing Microsoft® Windows and Windows Mobile development problems.

Client-side debugging

Problems on the device client side that may cause client application problems:
  • Unwired Server connection failed.
  • Data does not appear on the client device.
  • Physical device problems, such as low battery or low memory.
To find out more information on the device client side:
  • If you have implemented debugging in your generated or custom code (which Sybase recommends), turn on debugging and review the debugging information. See Developer Reference for Windows and Windows Mobile about using the MBOLogger class to add log levels to messages reported to the console.
  • Check the log record on the device. Use the DatabaseClass.GetLogRecord(Sybase.Persistence.Query) or Entity.GetLogRecords methods.

    This is the log format

    level,code,eisCode,message,component,entityKey,operation,requestId,timestamp

    Following is a log sample:

    level code eisCode message component entityKey operation requestId timestamp
     5,500,'','java.lang.SecurityException:Authorization failed: Domain = default Package = end2end.rdb:1.0 mboName = simpleCustomer action = delete','simpleCustomer','100001','delete','100014','2010-05-11 14:45:59.710'
                
    • level – the log level currently set. Values include: 1 = TRACE, 2 = DEBUG, 3 = INFO, 4 = WARN, 5 = ERROR, 6 = FATAL, 7 = OFF.
    • code – Unwired Server administration codes.
      • Replication-based synchronization codes:
        • 200 – success.
        • 500 – failure.
      • Message-based synchronization codes:
        • 401 – the client request had invalid credentials, or that authentication failed for some other reason.
        • 403 – the client request had valid credentials, but that the user does not have permission to access the requested resource [package, mobile business object (MBO) or operation].
        • 404 – the client attempted to access a non-existent package or mobile business object.
        • 405 – there is no valid license to check out for the client.
        • 500 – an unexpected (unspecified) server failure.

    • eisCode – not currently used.
    • message – the message content.
    • component – Mobile Business Object (MBO) name.
    • entityKey – MBO surrogate key, used to identify and track MBO instances and data.
    • operation – operation name.
    • requestId – operation replay request ID or messaging-based synchronization message request ID.
    • timestamp – message logged time, or operation execution time.

Server-side debugging

Problems on the Unwired Server side that may cause device client problems:
  • The domain or package does not exist. If you create a new domain, whose default status is disabled, it is unavailable until enabled.
  • Authentication failed for the synchronizing user.
  • The operation role check failed for the synchronizing user.
  • Back-end authentication failed.
  • An operation failed on the remote, replication database back end, for example, a table or foreign key does not exist.
  • An operation failed on the Web Service, REST, or SAP® back end.
To find out more information on the Unwired Server side:
  • Check the MMS server log files.
  • For message-based synchronization mode, check the SUPBridge and JMSBridge logs. Modify the log level for the module SUPBridge and JmsBridge in <server_install_folder>\UnwiredPlatform\Servers\MessagingServer\Data\TraceConfig.xml to debug.