Troubleshoot Your Flash Client
This procedure provides troubleshooting information for the most common issue that occurs when using Kaazing Flash clients.
Before You Begin
This procedure is part of Checklist: Build Flash Clients Using Kaazing WebSocket Gateway:
- Set Up Your Development Environment
- Interact with Kaazing WebSocket Gateway Using the WebSocket API
- Interact with Kaazing WebSocket Gateway Using the EventSource API
- Secure Your Flash Client
- Display Logs for the Flash Client
- Troubleshoot Your Flash Client
Note: Learn about supported browsers, operating systems, and platform versions in the Release Notes.
What Problem Are You Having?
- Error: com.kaazing.gateway.client.security.impl.class_name cannot be found
- Kerberos challenge handler not working
Error: com.kaazing.gateway.client.security.impl.class_name cannot be found
When compiling your Flash client code, you see something similar to the following, where class_name is something like DefaultBasicChallengeHandler:
"ERROR: A class with the name 'com.kaazing.gateway.client.security.impl.class_name' could not be found..."
This warning occurs when you have not included the Kaazing Flash client security library in your Flash compiler.
To resolve this issue, add the following argument to the Flash compiler:
-include-libraries
GATEWAY_HOME/lib/client/actionscript/com.kaazing.gateway.client.swc
If you built your application using Flash Builder, you can do this by choosing Project > Properties. In the dialog, choose Flex Compiler, then add the argument to the Additional compiler arguments text box. Otherwise, add the argument to the Flash compiler manually.
Kerberos challenge handler not working
Cause: Kerberos challenge handlers might not work for one or more of the following reasons:
The client cannot connect to the Kerberos Domain Controller (KDC).
Solution: Ping the KDC from the computer running the client and the server hosting the Gateway. Also, ensure that you can Telnet to Kerberos port number 88 from both computers (telnet> open KDC-server-name 88).
The client cannot obtain a Kerberos ticket.
Solution: Test ticket acquisition by executing the following commands to ensure that the KDC is accessible and able to issue service tickets:
For Linux:
$ kinit -t /etc/keytab-name.keytab -S service-instance-name username@KDC-server-name
For Windows:
$ kinit username@KDC-server-name
The output will be:
Please enter the password for username@KDC-server-name:
Enter the password, and then enter:
$ klist
The ticket cache is displayed along with each ticket's expiration date.
Service name is in the incorrect format in the Kerberos challenge handler code.
Solution: The service name should be in the format: HTTP/servergw.hostname.com. See Creating Kerberos Challenge Handlers for examples.
The pop-up dialog in the client used to obtain user credentials does not ensure that the username format is correct.
Solution: Ensure that the result of the pop-up dialog used to obtain user credentials is formatted as
username@KDC-server-name.
Next Step
You have completed the Flash client howtos. For more information on client API development, see the ActionScript (Flex) Client API.