从 JS 访问 ServletContext

发布于 2024-10-27 06:19:01 字数 334 浏览 1 评论 0原文

我想出了如何在java端获取ServletContext,查看这个线程,但我仍然不确定如何在JS中抓住它。我正在查看JS的解释。我是否必须将 ServletContext 作为请求对象传递(我可以查看示例)还是可以在 JS 中访问它?非常感谢任何帮助。

I figured out how to grab the ServletContext on the java end looking at this thread, but I still am unsure how to grab it in the JS. I was looking at this explanation for the JS. Do I have to pass the ServletContext as a request object (can I see an example) or could I just access it in the JS? Any help much appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

猫九 2024-11-03 06:19:01

如果您将 JavaScript 作为网页的一部分进行讨论,那么您根本无法访问它。页面加载后,JavaScript 将在浏览器上执行。此时,ServletContext 早已不复存在。

您可能想要做的是基于 ServletContext 生成 JavaScript。这只是将 JavaScript 中想要的内容打印为常量的问题,这些常量通过创建它的 JSP 呈现到页面中,就像 HTML 等一样。此时它不是 JavaScript,它只是文本,就像 JavaScript 中的其他内容一样。 JSP 页面。

If you're talking about JavaScript as part of web pages, you can't access it at all. That JavaScript is being executed on the browser after the page loads. At this point, the ServletContext is long gone.

What you probably want to do is generate JavaScript based on the ServletContext. This is simply a matter of printing what you want in the JavaScript as constants that are rendered in to the page via the JSP that creates it, just like for HTML etc. At this point it's not JavaScript, it's simply text like anything else in the JSP page.

诠释孤独 2024-11-03 06:19:01

除非您正在执行服务器端 javascript,否则您无法获取 ServletContext 的句柄,因为它根本不存在于浏览器中。不过,您可以做的是从 ServletContext 读取所需的属性并在 JSP/Servlet 等中创建动态 Javascript。

Unless you are doing server-side javascript you cannot get a handle to the ServletContext because it simply doesn't exist in the browser. What you can do, though, is to read required attributes from ServletContext and create dynamic Javascript in your JSP/Servlet etc.

怎会甘心 2024-11-03 06:19:01

JS 在客户端的浏览器中运行。容器中可用的 Java 对象可以从 JSP/Servlet 中编写的 Java 代码中访问。

ServletContext 对象无法直接从 JS 内部访问 - 只是因为 JS 运行的进程和上下文与 ServletContext 对象所在的 VM/Context 不同。

从你的问题来看,你似乎想要访问 JS 可以访问的对象数据 - 你可以通过使用 JS-Java 桥如 DWR(直接 Web 远程处理)来实现这一点 - 请查看链接 - http://directwebremoting.org/dwr/index.html

JS runs on the client side from within browser. Java objects available in the container can be accessed from within the Java code written in JSP/Servlets.

ServletContext object cannot be directly accessed from within JS - simply because the process and the context in which JS runs is different from the VM/Context in which ServletContext object exists.

From your question it appears that you want to access object data accessible to JS - you can achieve this by using JS-Java bridge like DWR (Direct Web Remoting) - please have a look at the link - http://directwebremoting.org/dwr/index.html

泪是无色的血 2024-11-03 06:19:01

应用程序隐式对象是javax.servlet.ServletContext的实例。它主要用于获取初始化参数以及共享属性和属性。它们的值遍及整个 JSP 应用程序,这意味着应用程序隐式对象设置的任何属性都可用于所有 JSP 页面。
在我们的 JSP 页面中,我们在标签中使用了下面的 javascript 函数

<script type="text/javascript">  
somefunction(){
var somevar = <%=application.getAttribute("attributeName")>
}
</script>

Application implicit object is an instance of javax.servlet.ServletContext. It is basically used for getting initialization parameters and for sharing the attributes & their values across the entire JSP application, which means any attribute set by application implicit object would be available to all the JSP pages.
in our JSP page, we used below in javascript function enclosed by tag

<script type="text/javascript">  
somefunction(){
var somevar = <%=application.getAttribute("attributeName")>
}
</script>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文