Oracle empfiehlt die Verwendung von JnlpDownloadServlet
sample, um JNLP über eine Webanwendung zu starten.Starten von JNLP ohne Verwendung der JnlpDownloadServlet-Klasse
Aus irgendwelchen Gründen kann ich es nicht verwenden und muss meinen eigenen JNLP-Startcode programmieren. Diese
ist, was ich mit (Servlets, die es startet) kommen:
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
performTask(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
performTask(request, response);
}
private void performTask(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("application/x-java-jnlp-file");
byte [] b = getJNLP(..some params..).getBytes();
response.setContentLength((int) b.length);
OutputStream responseOutputStream = response.getOutputStream();
responseOutputStream.write(b);
}
getJNLP
ist ein Verfahren, das die ganze JNLP-Datei als String
zurückgibt.
Dies scheint gut zu funktionieren. Aber ich vermisse etwas. Gibt es zusätzliche Header usw.?
UPDATE: Der Grund, warum ich das JnlpDownloadServlet nicht verwende, ist, weil ich dieses JNLP aus 2 verschiedenen Webapps starten muss - ein Java & ein DOTNET. Ich kann JnlpDownloadServlet offensichtlich nicht von der DOTNET-Webanwendung verwenden. Ich habe ähnlichen Code (wie oben) in der DOTNET App geschrieben, um den JNLP zu starten. Also behalte ich es auch in der Java App.
Diese Frage ist zu weit. Es ist kein Code-Review-Service. Haben Sie Fehler? – xenteros
Die Aufgabe ist nur, dem Client eine gültige jnlp-Datei zu geben, daher denke ich, dass auch ein statischer Link zur generierten jnlp-Datei funktionieren sollte. Da Sie nichts über die Generierung der jnlp-Datei oder der versions.xml hinzugefügt haben, ist es schwer zu sagen, wenn Sie etwas vergessen haben. – Turo
@Turo Die jnlp-Datei ist nicht statisch - sie wird zur Laufzeit mit der 'getJNLP'-Methode generiert. – user93353