从 jsp 文件构建 jnlp
Building a jnlp from a jsp file
我正在尝试使用 jsp 文件通过 jnlp 文件传递动态参数以启动我的 java 应用程序。但是我真的是 JWS 的新手,所以我们将不胜感激。
我的问题是,test.jnlp 中应该包含什么才能接收用户名参数并将参数传递给 java 应用程序?我已经阅读了许多其他帖子,但我仍然无法让我的应用程序接收参数。
当前代码:
JNLP.JSP
<%
response.setHeader("Pragma", "no-cache");
response.setHeader("Expires", "0");
response.setHeader("Content-Disposition", "filename=\"bb.jnlp\";");
response.setContentType("application/x-java-jnlp-file");
%>
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+"
codebase=<%=request.getScheme() + "://"+ request.getServerName() + ":"
+
request.getServerPort()+ request.getContextPath() + "/" %>
href="test.jnlp?username=<%=request.getParameter("username")%>">
<information>
<title>ProBuilder</title>
<vendor>pAtoms</vendor>
<homepage href="http://localhost:8080/" />
<description>ProBuilder</description>
</information>
<security>
<sandbox/>
</security>
<resources>
<j2se version="1.6+" />
<jar href="ProBuilder.jar" />
</resources>
<application-desc main-class="adam.Adam" >
<argument><%=request.getParameter("username")%></argument>
</application-desc>
</jnlp>
在你的servlet中class获取参数:
String username = req.getParameter("username");
String pass = req.getParameter("pass");
假设 req
是 HttpServletRequest
,如果您想要安全的应用程序,那么最好以某种方式保护您的密码。
在您的请求中设置属性:
req.setAttribute(username, "username");
req.setAttribute(pass, "pass");
并将您的属性分派给 jnlp
req.getRequestDispatcher("jnlp.jsp").forward(req, YOUR_HttpServletResponse);
在你的 jsp 中获取这样的属性:
${requestScope.username}
我正在尝试使用 jsp 文件通过 jnlp 文件传递动态参数以启动我的 java 应用程序。但是我真的是 JWS 的新手,所以我们将不胜感激。
我的问题是,test.jnlp 中应该包含什么才能接收用户名参数并将参数传递给 java 应用程序?我已经阅读了许多其他帖子,但我仍然无法让我的应用程序接收参数。
当前代码:
JNLP.JSP
<%
response.setHeader("Pragma", "no-cache");
response.setHeader("Expires", "0");
response.setHeader("Content-Disposition", "filename=\"bb.jnlp\";");
response.setContentType("application/x-java-jnlp-file");
%>
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+"
codebase=<%=request.getScheme() + "://"+ request.getServerName() + ":"
+
request.getServerPort()+ request.getContextPath() + "/" %>
href="test.jnlp?username=<%=request.getParameter("username")%>">
<information>
<title>ProBuilder</title>
<vendor>pAtoms</vendor>
<homepage href="http://localhost:8080/" />
<description>ProBuilder</description>
</information>
<security>
<sandbox/>
</security>
<resources>
<j2se version="1.6+" />
<jar href="ProBuilder.jar" />
</resources>
<application-desc main-class="adam.Adam" >
<argument><%=request.getParameter("username")%></argument>
</application-desc>
</jnlp>
在你的servlet中class获取参数:
String username = req.getParameter("username");
String pass = req.getParameter("pass");
假设 req
是 HttpServletRequest
,如果您想要安全的应用程序,那么最好以某种方式保护您的密码。
在您的请求中设置属性:
req.setAttribute(username, "username");
req.setAttribute(pass, "pass");
并将您的属性分派给 jnlp
req.getRequestDispatcher("jnlp.jsp").forward(req, YOUR_HttpServletResponse);
在你的 jsp 中获取这样的属性:
${requestScope.username}