【问题标题】:Access to Java servlet request using JavaScript on the client side在客户端使用 JavaScript 访问 Java servlet 请求
【发布时间】:2013-04-02 19:00:00
【问题描述】:

大家好,我正在尝试使用 java 脚本访问转发的请求,双方的代码部分如下所示:

客户端

function addRow() {
var numRows = document.getElementById("request").getAttributeNode("numOfExt");
var table = document.getElementByName("extensionTable");

var allExtensions = new Array();
allExtensions = document.getElementById("request").getAttributeNode("extensions");

for ( var i = 0; i < numRows; i++) {
    var row = table.insertRow(i);
    var cell1 = row.insertCell();
    cell1.innerHTML = allExtensions[i];
}
}

小服务程序

request.setAttribute("numOfExt", extensionHandler.getExtensions()
            .size());
request.setAttribute("extensions", extensionHandler.getExtensions()
            .toString());

// forward the httpServlet
getServletContext().getRequestDispatcher("/index.jsp").forward(request,
            response);

感谢您的帮助!

【问题讨论】:

  • 错误会是......?
  • 这是什么意思?你到底想做什么? “使用 java 脚本访问转发的请求”对我来说没有任何意义。
  • 你想完成什么?
  • 这不是 servlet 的工作方式。阅读SO wiki 开始。您不能从 request 对象访问属性。您可以从返回的 html(来自 jsp)访问它们,这可能已由请求属性填充。
  • 请原谅我不准确,我对 Web 开发完全陌生,并且在询问之前已经在互联网上搜索了 2 个小时。我想将java代码所在的服务器中的一些数据发布到jsp文件中嵌入的javascript函数中,以动态设置表。

标签: java javascript servlets request


【解决方案1】:

您只需要记住有一个表单(隐藏)或在您的页面中包含一个操作:

<form name="formname" action="servlet" method="post">
    <input type="hidden" name="someParam">
</form>

然后从您的 javascript 中调用您的 servlet:

document.formname.someParam.value = "hello world";
document.formname.submit();

最好的问候。

【讨论】:

  • 感谢您的快速答复
猜你喜欢
  • 1970-01-01
  • 2015-03-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多