我需要在一段 Javascript 代码中获取 userPrincipal。我的应用程序当前在客户端使用 Dojo,在服务器端使用 servlet。我不使用 JSF,也不使用 JSP(如果可能的话,我会尽量避免仅将其用于此目的),也不使用 JQuery(我会避免将 JQuery 与 Dojo 混合)。 我读过这篇有趣的文章Mixing JSF EL in a JavaScript file 。按照想法#1,我编写了一个 Bean,但我不确定如何将对 Bean 的调用嵌入到我的(相当长的)js 文件中。
最佳答案
如果您不使用 JSF 或 JSP 或任何类似的东西,只使用裸 servlet,我建议创建一个 servlet,它从 HttpServletRequest(或任何其他位置)获取 userPrincipal 名称并以 JSON 格式返回它。然后您可以对 servlet 进行 AJAX 调用并找出您需要的内容。我不太了解 Dojo,但我相信您可以轻松地将这个 AJAX 调用插入到您的事件链中。
我不建议将托管 bean 与普通的 servlet 混合。
如果 AJAX 由于其异步性质而不适合您,您可以创建一个提供文本/javascript 内容的 servlet,以 javascript 代码的形式提供主体名称,然后将脚本标记添加到您的页面。
关于java - 在 Javascript 中获取 userPrincipal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7301381/