struts2 相关问题

Apache Struts 2是一个基于servlet的可扩展框架,在其架构中实现了模型 - 视图 - 控制器(MVC)模式,用于创建企业级Java Web应用程序。

从 JSP 页面到 Struts 2 操作进行 jQuery Ajax 调用时浏览器中出现 404 异常

我已经创建了Struts 2数据库应用程序。在这一示例中,我使用 Query 对 Struts 2 操作进行了 Ajax 调用。问题是每当我点击提交按钮时,它都会触发 Ajax 调用,但是 Ajax

回答 2 投票 0

如何在 Struts 2 中的 Ajax 成功主体中设置 s:param 值

如何在 Ajax 成功主体中设置 值? 我使用 Ajax 调用加载数据并将其提取到数据表中 但是当我想设置 s:param 值时我无法获取它的值,下面是我的代码: $.

回答 2 投票 0

如何使用 Struts 2 通过 Ajax 进行编辑

我想按照以下逻辑编辑数据库中的某些元素: 我从下拉列表中选择了一个项目(自动完成),其他字段是根据字段直接从数据库填写的

回答 1 投票 0

JQuery Ajax 无法在带有 Struts 的 JSP 中工作

我正在尝试创建一个具有 Ajax 功能的 Web 应用程序演示。然而,Ajax 似乎无法使用 JQuery 工作。 我还没有给出任何回应,但我认为警报应该起作用了。哈...

回答 1 投票 0

在Struts 2中使用Ajax时如何传递属性登录

将 Struts 2 与 Ajax 结合使用,当我尝试提交表单时,属性未传递给操作类,因此我得到了 null。 我的 JSP: 登录 将 Struts 2 与 Ajax 结合使用,当我尝试提交表单时,属性未传递给操作类,因此我得到 null。 我的JSP: <head> <title>Login</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="publicHtml/css/bootstrap.min.css"> <script src="publicHtml/js/jquery.min.js"></script> <script src="publicHtml/js/bootstrap.min.js"></script> <script> var contextName = "<%=request.getContextPath()%>"; </script> <script src="publicHtml/js/automation.js"></script> </head> <body> <form action="loginAction" id="myForm" method="post"> <div class="container-fluid"> <div class="jumbotron"> LOG CREATION </div> </div> <div class="row" style="height: 50px"> <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12" style="text-align: center"> <mark style="color: red;display: none;" id="errorMessage"></mark> </div> </div> <div class="row"> <div class="col-lg-7 col-md-7 col-sm-5 col-xs-5"> </div> <div class="col-lg-3 col-md-3 col-sm-6 col-xs-6"> <div id="loginJSP"> <div class="form-group"> <input type="text" class="form-control" placeholder="User Name" id="userName" name="userName"> </div> <div class="form-group"> <input type="password" class="form-control" placeholder="Password" id="password" name="password"> </div> <input type="button" onclick="validLogin()" value="Login"> </div> </div> <div class="col-lg-2 col-md-2 col-sm-1 col-xs-1"> </div> </div> </form> </body> 我的Action: public class LoginAction extends ActionSupport { String forward = ERROR; public LoginAction() { } /** * * @return @throws Exception */ @Override public String execute() throws Exception { System.err.println("Assigned Property is "+userName); forward = null; return forward; } private String userName=null,password=null; public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; }} 我的JS是: function submitForm(actionName, commandName) { var frm = document.forms[0]; var url = contextName + "/" + actionName + "?command=" + commandName; frm.action = url; frm.submit(); } function validLogin() { alert('hi'); var userName = document.getElementById('userName').value; var password = document.getElementById('password').value; document.getElementById('errorMessage').innerHTML = ""; $('#errorMessage').hide(); alert('hi'); if (userName == '' && password == '') { $('#errorMessage').append("USERNAME AND PASSWORD CANT BE BLANK"); $('#errorMessage').show(); } else { $.ajax({ type: "POST", url: "./loginAction", data: "command=loginValidation", beforeSend: function () { }, success: function (response) { }, error: function (e) { alert('hi error'); } }); } 我给出的输入是AAA。 预期输出应该是: Assigned Property is AAA 我的输出是: Assigned Property is null 您在验证后没有在ajax调用中发送参数。如果您使用以下代码可以解决此问题: $.ajax({ type: "POST", url: "./loginAction", data: {command: "loginValidation", userName: userName, password: password}, beforeSend: function () { }, success: function (response) { }, error: function (e) { alert('hi error'); } });

回答 1 投票 0

在 Struts 2 中使用 Ajax 和 Oracle 数据库自动完成文本框

我正在尝试使用来自 Oracle 数据库中的作业表的值填充我的文本框,但我无法这样做,并且无法理解我在哪里犯了错误。下面是我的代码...

回答 1 投票 0

添加 selectBox="true" 属性时,Struts2 JQuery 插件自动完成器不起作用

有效(加载列表正常): 有效(加载列表正常): <s:url id="countrylist" action="lstcountryaction" /> <sj:autocompleter list="lstcountry" listKey="idcountry" listValue="countryname" label="Country" href="%{countrylist}" name="idcountry" /> 不起作用(未加载任何内容。未调用该操作): <s:url id="countrylist" action="lstcountryaction" /> <sj:autocompleter selectBox="true" list="lstcountry" listKey="idcountry" listValue="countryname" label="Country" href="%{countrylist}" name="idcountry" /> 唯一的区别是添加了 selectBox 属性。我缺少什么?我正在使用 Struts 2.3.15 和 Struts2 JQuery Plugin 3.6.1(它们都是相当新的)。 谢谢!! 启用 <sj:autocompleter> 的 Struts2 jQuery selectBox=true 小部件能够正常工作,不应远程加载数据。换句话说,属性 href="%{countrylist}" 是选择框不起作用的罪魁祸首。这两个属性是互斥的。您必须在两个选项之间进行选择,要么使用 autocompleter 作为带有远程数据的输入框,要么作为选择框但不远程加载数据,因为它是从 valueStack 作为普通 select 标签加载的。 您可以用 selectBoxIcon="true" 补充选择框以使小部件顺利显示或在标题标签中使用相应的 jQuery 主题。 尝试一下 <sj:autocompleter selectBox="true" selectBoxIcon="true" list="lstcountry" listKey="idcountry" listValue="countryname" label="Country" name="idcountry" /> 来自 struts2 jQuery 插件 wiki 页面的示例。 +1,因为我看到你已经已经在相关的Google群组上发布了...但是,如果事情没有改变,根据插件作者的这个(相当旧,但仍然打开JIRA)评论 : 带有 selectBox 的自动完成器正在使用静态列表。在 您的用例应该使用 <sj:select /> 标签 改为 autocomplete="true"。 <s:url id="remoteurl" action="jsonsample"/> <sj:select href="%{remoteurl}" autocomplete="true" id="echo3" name="echo" list="languageObjList" listKey="myKey" listValue="myValue" emptyOption="true" headerKey="-1" headerValue="Please Select a Language"/> 然后,将 <sj:select /> 和 emptyOption 设置为 autocomplete 的 true 可以替代您正在寻找的动态选择框 <sj:autocompleter />。 也可以随意运行这个示例,它似乎是开箱即用的。

回答 2 投票 0

Struts 2 jquery 自动完成器与forceValidOption =“false”

我已将 Struts 2 jquery 自动完成标记 forceValidOption 设置为 false,如下所示: 我已将 Struts 2 jquery 自动完成标记 forceValidOption 设置为 false: <sj:autocompleter list="destinationAccounts" id="sample" listKey="accountNo" name="toAccount" listValue="%{accountNo + \" \" + firstName + \" \" + lastName }" forceValidOption="false"/> forceValidOption不起作用,它强制用户从选项中进行选择,并在用户离开输入时自动清除用户输入的数据。 生成的javascript如下: var options_sample_widget = {}; options_sample_widget.hiddenid = "sample"; options_sample_widget.selectBox = true; options_sample_widget.forceValidOption = false; options_sample_widget.jqueryaction = "autocompleter"; options_sample_widget.id = "sample_widget"; options_sample_widget.name = "toAccount.accountNo_widget"; options_sample_widget.href = "#"; options_sample_widget.formids = "ownToOtherForm"; jQuery.struts2_jquery_ui.bind(jQuery('#sample_widget'),options_sample_widget); 表明forceValidOption已设置。 我应该设置其他选项才能使其正常工作吗?! 我已经在展示柜中对其进行了测试,但仍然无法使其工作。 如果这里有bug,我可以直接使用jQuery自动完成功能并禁用此功能吗?! 不带 <sj:autocompleter> 属性的 href 用于加载静态列表。 如果与 selectBox="true" 一起使用,它会呈现 select 标签来保存其选项和两个输入字段:一个是提交值的隐藏字段,另一个是组合框。该字段的值应设置为隐藏字段。 要使其工作,您应该设置以下功能 $(".s2j-combobox-input.ui-autocomplete-input").keyup(function(e){ $("#sample").val($(".s2j-combobox-input.ui-autocomplete-input").val()) });

回答 1 投票 0

Struts 2 自动完成器不能作为下拉菜单工作

我有一个 JSP 页面,其中使用了 sx:autocompleter。它正在工作,但在文本框中输入时,建议不会出现在下拉列表中,而是会作为完成单词出现。像这样

回答 1 投票 0

迁移到 WAS 8.5 和 java 1.7 后出现 javax.naming.ConfigurationException

我正在将应用程序从 java 1.5 和 WAS 6.1 迁移到 java 1.7 和 WAS 8.5 我收到以下异常。 [8/20/12 12:01:00:286 EDT] 0000006b SystemErr R org.springframework.beans。

回答 1 投票 0

带有 Struts 2 的 Ajax jQuery 插件

我正在使用 Ajax jQuery 插件 jar 和 Struts 2。我已经使用 Ajax 选择标签填充列表,但列表未填充。如果我使用 标签,它就可以正常工作。 这是我的代码: &l...

回答 1 投票 0

Struts 2 应用程序中的“org.apache.tiles.request.render.CannotRenderException:无法渲染不是字符串的属性,toString 返回:null”

我正在开发一个与 Tiles 插件集成的 Struts 2 应用程序。它在我的本地计算机上运行良好。但是当我将其部署到 UNIX 服务器并尝试导航到登录页面时......

回答 1 投票 0

Struts-core-6.X.X 与 Jakartaee 10 兼容吗?

我正在将我的struts应用程序从Javaee 8迁移到Jakartaee 10,将Payara 5迁移到Payara 6(使用社区版本),将Jdk8迁移到JDK 11。 目前,我使用的是struts-core-2.5.26。是最新版本的st...

回答 2 投票 0

迁移到 struts 6.3.0 时未选中单选按钮

我最近从struts 2.5.30迁移到struts 6.3.0。我遇到的问题是,从 radiomap.ftl 中删除 ?html 后,单选按钮未设置其值(未选中)。 按照 (https:/...

回答 1 投票 0

在 Struts 2 表单的字段之间添加水平线?

我有一个表单定义为: 我的表单定义为: <s:form id="myForm" action="myFormAction"> <s:hidden name="ID" /> <sj:submit/> <s:select name="color.id" label="Color" labelposition="top" listKey="id" listValue="name" list="%{#application.colorSelect}"/> <s:textarea name="color.notes" cols="120" rows="5" label="Color Notes" labelposition="top"/> <s:select name="brightness.id" label="Brightness" labelposition="top" listKey="id" listValue="name" list="%{#application.brightnessSelect}"/> <s:textarea name="brightness.notes" cols="120" rows="5" label="Brightness Notes" labelposition="top"/> </s:form> 它按预期呈现,但我希望在 <hr/> 和 "color" 部分的上方、下方以及之间有水平规则 "brightness"。将它们添加到 Struts 表单会将它们呈现在表单上方。 如何在表格中交错它们? form 标签以表格布局呈现 HTML。默认情况下,Struts 标签使用 freemarker 模板在内部渲染 HTML。 有一种方法可以使用 struts 标签中的 template 属性来更改模板。 您还可以更改 theme 属性。使用的默认主题是xhtml。有一个名为 simple 的主题,它具有最小的 HTML 布局。 你可以找到一个例如。 这里。 这个答案将告诉您如何使用 Struts 配置常量全局设置主题。

回答 1 投票 0

将 JSON jar 文件添加到我的 Struts 2 项目会出现错误:404 资源未找到

我正在使用 jTable 制作一个 Struts 2 应用程序,这需要使用 JSON。为此,我将 Struts 2 JSON 插件 jar 添加到我的项目中 struts2-json-plugin-2.3.8.jar 没有那个罐子我的项目是

回答 1 投票 0

如何在struts 2中从响应中排除参数并发送我们想要的对象?

我想要 Ajax 请求的 JSON 结果,但我的要求是仅发送对象的 ArrayList 并排除操作类中存在的一些参数。那么如何做到这一点呢? 这是我的动作课

回答 1 投票 0

如何使用Ajax请求创建和下载Excel文件

如果用户在我的网页上按下公式按钮,我想创建一个 Excel 文件。我的第一个解决方案效果很好。用户按下按钮,服务器端 java 代码创建文件,然后

回答 2 投票 0

从struts2中的jsp页面调用action类中的方法

我编写了以下代码,将变量 artpsMstId 传递给 JavaScript 函数,然后更新针对该变量存储的记录: 在 JSP 中: 我编写了以下代码,将变量 artpsMstId 传递给 JavaScript 函数,然后更新针对该变量存储的记录: 在 JSP 中: <td> <a href="javascript:fnUpdate('<s:property value="artpsMstId" />');">testupdate</a> </td> <script type="text/javascript"> function fnUpdate(id) { <s:url action='updateServiceDetails'></s:url> document.forms[0].artpsMstId.value=id; document.forms[0].submit(); } </script> 在struts.xml中: <action name="updateServiceDetails" class="com.stp.portal.view.SearchServicePortlet" method="updateServiceDetails"> <result name="success">/WEB-INF/view/ServiceSubmitPage.jsp</result> </action> 我在updateServiceDetails中定义了函数SearchServicePortlet.java。 但流量并没有到达SearchServicePortlet.java。如果有人能帮助我,我将非常感激...谢谢 ----已编辑----- 这基本上就是我想做的事情 <s:form action="updateServiceDetails" method="POST" theme="simple" > <tr> <td> FirstName </td> <td> LastName </td> <td> Edit </td> </tr> <s:iterator value="resultList" > <tr> <td align="center"> <s:textfield name="firstName" /> </td> <td align="center"> <s:textfield name="lastName" /> </td> <td> Edit </td> <td align="center"> <a href="javascript:fnUpdate('<s:property value="artpsMstId" />');">testupdate</a> </td> </tr> </s:iterator> </s:form> 上面的代码显示了一个包含名字和姓氏的列表,每行都有一个编辑选项。现在我想在 javascript 中调用函数 fnUpdate() 以便 我可以单独编辑和保存每一行。这就是我基本上需要做的。 不必在整个表格上使用表单,只需使用单独的表单,然后单击表格行中的链接,调用 javascript 函数来提交该单独的表单, 尝试下面的代码, 在jsp中, <form name="updateServiceDetailForm"> <input type="hidden" name="artpsMstId"/> </form> <table> <tr> <td> FirstName </td> <td> LastName </td> <td> Edit </td> </tr> <s:iterator value="resultList" > <tr> <td align="center"> <s:textfield name="firstName" /> </td> <td align="center"> <s:textfield name="lastName" /> </td> <td> Edit </td> <td align="center"> <a href="javascript:fnUpdate('%{artpsMstId}');">testupdate</a> </td> </tr> </table> 在 JavaScript 中, function fnUpdate(artpsMstId) { document.forms.updateServiceDetailForm.action = "updateServiceDetails.action"; document.forms.updateServiceDetailForm.method = "post"; document.forms.updateServiceDetailForm.artpsMstId.value = artpsMstId; document.forms.updateServiceDetailForm.submit(); }

回答 1 投票 0

如何为基于 Java 和 struts2 框架构建的旧 Web 应用程序提供针对跨站请求伪造 (CSRF) 攻击的保护 [重复]

如何为基于 Java 和 struts2 框架构建的旧 Web 应用程序提供针对跨站请求伪造 (CSRF) 攻击的保护? 尝试在 servlet 之前添加过滤器,卡在那里。

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.