Chúng tôi đã bật xác thực cơ bản trên Tomcat6. Người dùng được xác thực trong trình duyệt và sau đó JNLP được khởi chạy để khởi chạy ứng dụng trong Java Web Start. Khi khởi động, web java bắt đầu cố tải xuống các tệp jar từ máy chủ nhưng không sử dụng cùng một phiên đã được trình duyệt xác thực. Dựa trên các diễn đàn tôi đã cố gắng chuyển id phiên trong JNLP bằng cách sử dụng thuộc tính sid cũng như được thêm vào URL. Môi trường bị hạn chế nên mỗi và mọi yêu cầu cần phải được xác thực, chúng tôi không thể nói để loại trừ các yêu cầu đối với tệp jar không được xác thực. Dưới đây là JSP của tôi tạo ra tập tin JNLP, bất cứ ai có thể vui lòng giúp đỡ làm thế nào chúng ta có thể tiếp tục cùng một phiên để tải về lọ đã được xác thực bởi trình duyệt.Tiếp tục phiên trình duyệt trong JNLP
<% response.setContentType("application/x-java-jnlp-file"); %>
<%= "<?xml version=\"1.0\" encoding=\"utf-8\"?>" %>
<!-- JNLP File for SimpleTableDemo -->
<%
String baseURL = request.getRequestURL().toString().replace(request.getRequestURI(), request.getContextPath());
%>
<jnlp codebase="<%=baseURL%>">
<information>
<title>Simple Table Demo Application</title>
<vendor>Try</vendor>
<description>SimpleTableDemo</description>
<description kind="short">An application that demonstrates a simple table.</description>
</information>
<resources>
<j2se version="1.6+" />
<property name="sid" value="<%=request.getSession().getId()%>" />
<property name="serviceHost" value="<%=request.getServerName()%>"/>
<property name="servicePort" value="<%=request.getServerPort()%>"/>
<jar href="AuthenticateJNLPJars.jar;JSESSIONID=<%=request.getSession().getId()%>" />
</resources>
<application-desc main-class="SimpleTableDemo" >
</application-desc>
</jnlp>
Tôi đang chuyển id phiên trong thông số bên như được đề cập trong mã. Các tham số này có thể được sử dụng nếu ứng dụng của tôi yêu cầu máy chủ nhưng JWS không sử dụng các tham số đó trong khi tải xuống các tệp jar từ máy chủ. Đó là vấn đề – Stauz