Siebel Mobile Connector Guide > Siebel Mobile Connector Troubleshooting Guide >
- Question. Are the parameters in the metadata.cfg file set to the correct values?
Requirement. The following parameters in the metadata.cfg file must be set with the correct values:
GatewayServer=Gateway Server Name
SiebelServer=Siebel Server Name
How to check. Go to drive:\install_dir\siebsrvr\BIN\ENU
drive = the drive where Siebel Server is installed.
install_dir = the directory where you installed Siebel Server.
Then open the metadata.cfg file and verify that the parameters are set correctly.
- Question. Are the Siebel Server and the desired object managers up and running?
Requirement. Siebel Server and the Siebel Mobile Connector object manager must be running in order to log in or use the Siebel Mobile Connector. The Reference Configuration Sample will not work without the sstchca.dll file.
How to check. To view the object managers:
- Get the OS pid for a particular Object Manager by going to the Siebel Server log directory and opening the siebel.machine_name.log file.
- Once the process id is identified, go to Task Manager and look for the SIEBMTSHW.EXE with that PID.
- Go to your registry editor and search for the key value SiebelDataControl.SiebelDataControl.1.
- Verify that this entry exists as a ProgID value and that the InprocServer32 key value for this entry points to the path where the sstchca.dll file is located.
- Make sure that the drive of the file is physical, not virtual. This DLL file is provided with installation of eAI. If this file is not there, then you must reinstall eAI.
NOTE: sstchca.dll is only one of many DLL files required for the Siebel Mobile Connector.
- Question. Have you changed the ASP Script time-out and session time out values?
Requirement. In Microsoft Internet Information Server running on the machine where the Reference Configuration Sample is installed, the ASP Script time-out value must be set to a big number (for example, 2147483646 seconds) and the session time out value must be set to a big number (for example, to 200 minutes).
How to check. In Microsoft Internet Information Server:
- Right-click on the virtual directory created for the Reference Configuration Sample and select Properties.
- Click the Configuration button and click the App Options tab.
- Question. Did you change the values of the Execute Permissions and Application Protection options?
Requirement. In Microsoft Internet Information Server running on the machine where the Reference Configuration Sample is installed, the Execute Permissions must be set to Scripts Only and Application Protection must be set to Low (IIS Process).
How to check. Make sure Execute Permissions is Scripts Only and Application Protection is Low (IIS Process).
- Question. Did you receive an error message in XML output when sending XML commands using a Web browser?
Requirement. The XML Interface to SWE will return an error tag in XML output.
<ERROR> we are unable to process your request.
This is most likely because you used the browser BACK or REFRESH button to get to this point.
</ERROR> if the application does not have a specified home page.
You can ignore the error message or, if you prefer, set a home page for the application.
- Question. Are you uploading the files programmatically or in a browser window?
Requirement. Uploading file attachments cannot be done by sending HTTP requests in a Web browser. Instead, uploading files must be done programmatically, so the application that uploads the files can modify the Content-Type of the HTTP request and send the file in the appropriate format for file uploads.
- Question. Are you trying to use the GetSMCUpdate method to retrieve an update for a particular field of a record?
Requirement. The GetSMCUpdate method notes changes that occur at the record level versus for a specific field. If you request an update for a particular field on a record, you will be notified of a change when any field of that record has changed. If your application requires notification about changes to specific fields, then you can use the Alert Business Service for this purpose.
For more information on using the Alert Business Service, see Working with the Alert Business Service.
- Question. Are you using the correct spelling and valid values for all commands, methods and arguments to SWE?
Requirement. SWE expects the correct spelling and valid values for all commands, methods, and arguments. Invalid SWE commands, methods, and arguments are ignored. No error message is returned by SWE for such errors and the calling application may experience unexpected results.
- Question. Is it possible to query simultaneously for many-to-many relationships between parent and child applets?
SWE does not currently support querying simultaneously for:
- Parent rows in applets (such as all activities)
- Child applets (such as all contacts)
- Man-to-many relationships between all parent and all child applets.
In other words, it is not possible to perform a query using the XML Web Interface that will retrieve the links between all contacts and which activities they are related to, and vice versa. (such as all contacts related to each activity and vice versa).
There are at least three possible solutions to this task, although the efficacy of these solutions has not yet been firmly established.
- First, you can query the database directly for the Siebel table containing the links between activities and contacts, and then map all tables together on the Siebel Server. The disadvantage of this method is that it is database dependent.
- Second, you can create a specialized business component using Siebel Tools that could perform this task.
- Third, you can get the list of children rows for each parent row as you enumerate through the parent rows.
- Question. Are the alerts being received on the destination server?
Requirement. Alert Business Service alerts must be configured to send alerts to a destination server, where the alerts will be handled by a third-party application.
How to check. You may want to create a program residing on the receiving server that outputs the Alert Business Service alerts to a file so that you can view the output. Such a program could work like the following SampleFileReceiver.asp.
'Sample receive page that writes document to a file
Response.Buffer = True
Dim objFS, objStream
ContentType = Request.ServerVariables( "CONTENT_TYPE" )
' Determine request entity body character set (default to us-ascii)
CharSet = "us-ascii"
StartPos = InStr( 1, ContentType, "CharSet=""", 1)
If (StartPos > 0 ) then
StartPos = StartPos + Len("CharSet=""")
EndPos = InStr( StartPos, ContentType, """",1 )
CharSet = Mid (ContentType, StartPos, EndPos - StartPos )
' Check for multipart MIME message
PostedDocument = ""
if ( ContentType = "" or Request.TotalBytes = 0) then
' Content-Type is required as well as an entity body
Response.Status = "406 Not Acceptable"
Response.Write "Content-type or Entity body is missing" & VbCrlf
Response.Write "Message headers follow below:" & VbCrlf
Response.Write Request.ServerVariables("ALL_RAW") & VbCrlf
if ( InStr( 1,ContentType,"multipart/" ) > 0 ) then
' MIME multipart message. Build MIME header
PostedDocument = "MIME-Version: 1.0" & vbCrLf & "Content-Type: " & ContentType & vbCrLf & vbCrLf
PostedDocument = PostedDocument & "This is a multi-part message in MIME format." & vbCrLf
' Get the post entity body
EntityBody = Request.BinaryRead (Request.TotalBytes )
' Convert to UNICODE
Set Stream = Server.CreateObject("AdoDB.Stream")
Stream.Type = 1 'adTypeBinary
Stream.Position = 0
Stream.Type = 2 'adTypeText
Stream.Charset = CharSet
PostedDocument = PostedDocument & Stream.ReadText
Set Stream = Nothing
' Write received document to a local file
Set objFS = CreateObject("Scripting.FileSystemObject")
Set objStream = objFS.OpenTextFile("d:\temp\httpoutputfile.txt", 8, True)
objStream.WriteLine "----------------- Received at " & Now() & " -----------------"
objStream.WriteLine "----------------- End Received at " & Now() & " -----------------"
Set objStream = Nothing
Set objFS = Nothing
' indicate that the message has been received and processed
Response.Status = "200 OK"