Ich brauche eine Möglichkeit, die aktive Serveradresse, den Port und den Kontext während der Laufzeit meiner Flex-Anwendung abzurufen. Da wir Ant für unseren Build-Prozess verwenden, werden die Serververbindungsinformationen dynamisch in unserer Build-Eigenschaftendatei angegeben, und die Platzhalter {server.name}, {server.port} und {context.Root} werden in der Datei services-config.xml anstelle der tatsächlichen Werte verwendet.
Wir haben einige andere Java-Servlets, die auf dem gleichen Rechner wie unser BlazeDS-Server laufen, und ich möchte eine Möglichkeit, die Server-Endpunkt-Informationen programmatisch zu bestimmen, so dass ich nicht die Servlet-URLs in eine XML-Datei hardcodieren muss (was wir derzeit tun).
Ich habe festgestellt, dass ich zumindest den Kontext Root durch Hinzufügen der folgenden zu unserer Hauptanwendung MXML-Datei erhalten kann:
<mx:Application ... >
<mx:HTTPService id="contextRoot" rootURL="@ContextRoot()"/>
</mx:Application>
Ich benötige jedoch immer noch eine Möglichkeit, die Serveradresse und den Port abzurufen, und wenn ich die gesamte Adresse durch Angabe von -context-Root= http://myserver.com:8080/mycontext dann versucht die Flex-Anwendung, eine Verbindung zu http://localhost/http://myserver.com:8080/mycontext/messagebroker/amf was natürlich völlig falsch ist. Wie kann ich den Kontext Root und die Server-URL richtig angeben und wie kann ich sie aus unserer Anwendung abrufen?
0 Stimmen
Verwenden Sie also Java-Servlets oder nur httpservice? Ich bin mir nicht sicher, ob ich Ihrer Frage genau folgen kann oder was Sie genau tun, aber mit dem Remote-Objekt können Sie all das auch im Code tun, anstatt die services-config.xml-Datei zu verwenden oder sie in eine Compileroption zu setzen. Können Sie das näher erläutern?
0 Stimmen
Wir verwenden beides. Wir haben einen HTTP-Endpunkt und separate Java-Servlets für einige zusätzliche Aufgaben. Wir sind no mit entfernten Objekten; die gesamte Nachrichtenverarbeitung erfolgt über Cairngorm.