I’ve been capturing packets between my Zimbra server and my Firefox/Apache workstation.
Here’s my SparkWeb.html section:
function jive_sparkweb_getConfig()
{
return {
server: “zimbraserver.domain.org”,
connectionType: “socket”,
port: “5222”,
policyFileURL: “http://localhost/crossdomain.xml”,
autoLogin: “false”
};
}
Problem 1) No MATTER what I change the server setting to, the SparkWeb login page keeps reverting to the server name I was using when testing a totally local install (and the OpenFire server is shut down, so I don’t think it’s grabbing it from there). It’s as if the HTML file is cached somewhere (and yes, I keep clearing my Firefox cache first). I have to manually edit the server field to replace the name of the OpenFire server with the name of my Zimbra server before any attemt to communicate with the Zimbra server is accomplished.
Problem 2) I’ve tried numerous variations on the policyFileURL (http://localhost, http://localhost/, http://localhost/crossdomain.xml, xmlsocket://localhost/crossdomain.xml, xmlsocket://apache.domain.org/crossdomain.xml, http://apache.domain.org, http://apache.domain.org/, http://apache.domain.org/crossdomain.xml, ad infinitum) to no avail.
Once I manually edit the server field (on the SparkWeb login page) and my Firefox/Apache workstation starts talking with my Zimbra XMPP server, the Apache server ALWAYS sends a packet that looks like it’s asking for the policy file, even though I’ve been telling it to grab the copy stored locally. Taken from the packet capture, this snippet is being sent from my Firefox/Apache workstation to the Zimbra server:
Jabber XML Messaging
extensible Markup Language
\000
It looks like the Zimbra server then ACKs the msg, then the Firefox/Apache workstation FIN, ACK followed by the same thing from the Zimbra server and it’s all over.
Never does the login data ever get transmitted.
And yup, the crossdomain.xml file does exist on my Firefox/Apache workstation, I can access it through the HTTPD server directly, and it contains this:
<?xml version="1.0"?>
(where “domain” is substituted for my organization’s real domain).
Why does the server name never inherit the changes to the SparkWeb.html file?
Am I supposed to be able to pass the crossdomain.xml file using the policyFileURL directive in the SparkWeb.html file? That’s what my reading leads me to believe.
Why does my Firefox/Apache workstation appear to be requesting the crossdomain.xmlfrom the Zimbra XMPP server instead of the Apache server as I’m trying to direct it to do?