出现action jsp提交时,是新的请求.所以页面就刷新

【项目实战】主流车载操作系统,QNX实时操作系统入门介绍 QNX是一种实时操作系统,自1980年代初期由Quantum Software Systems成立以来,已被广泛应用于各种行业和领域。QNX具有实时响应、高可靠性和分布式等特点,为各种设备提供了强大的底层操作系统平台。随着科技的不断发展和进步,QNX系统的应用范围和潜力也在不断扩大。本文将全面介绍QNX系统,包括其引言、背景、系统特性、应用领域和生态系统等方面。QNX作为一种实时操作系统,具有高效的实时性能、高可靠性、分布式、可剪裁性和可扩展性等特点。它在各个领域都有广泛的应用,并拥有一个庞大的生态系统。 阅读详情
各位大虾好. 

    我在开发Jsf程序时,遇到一个这样奇怪的问题.请看下面代码.

<h:form id="edit">
       
         
      <h:panelGrid columns="2" width="100%" style="width: 448px; height: 317px">
          <h:outputLabel value="仓库编码:" /><h:inputText id="whCode" value="#{wh.whCode}" />
          <h:outputLabel value="仓库名称:" /><h:inputText id="whName" maxlength="10" value="#{wh.whName}"></h:inputText>
          <h:outputLabel value="管理部门"/><h:inputText id="deptName" value="#{wh.deptName }" onclick="selectDept();"/>
          <h:outputLabel value="负责人"/><h:inputText id="empName" value="#{wh.empName }" onclick="selectEmp();"/>
          <h:outputLabel value="仓库属性"/><h:selectOneMenu id="whType" value="#{wh.whType}"><f:selectItem itemLabel="总仓" itemValue='Y'/><f:selectItem itemLabel="分仓" itemValue='N'/></h:selectOneMenu>
          <h:outputLabel value="仓库介绍"/><h:inputTextarea id="remark" rows="5" value="#{wh.remark}"></h:inputTextarea>
          
        <h:messages style="display:none;" id="errorinfo"/><h:inputHidden id="deptCode" value="#{wh.deptCode }" />
        <h:inputHidden id="empCode" value="#{wh.empCode}" /><h:outputText value="" id="t1"/>
     <h:commandButton value="添加仓库" type="submit" id="submit1" action="#{wh.saveWarehouseInfo}"></h:commandButton><h:outputText value="" id="t2"/>
     </h:panelGrid>
         
     </h:form>


问题如下: 点加添加仓库按钮时,有时数据能添加成功.有时就只是刷新页面,就好像点击了表单的重置按钮一样,(假如我把内容全部为空,点加添加仓库按钮,他确每次都成功添加数据,但只要输入了内容添加数据成功的机率只有30%.)
注:我把wh的托管bean作用域设置为request与session都无效.  
  •  

#1 得分:10 回复于: 2007-08-23 08:49:20
你的后台代码有问题

不是JSF的问题

#2 得分:10 回复于: 2007-08-23 08:57:53
沒做跟蹤調試嗎?從錯誤中找問題吧。
 |  举报 |  管理
#3 得分:0 回复于: 2007-08-23 09:18:17
回:zqpsswh(似水无痕) 兄弟

     后台怎么会有问题呢?..我是按标准做的托管bean. 如果有问题,应该是那有问题呢???


回:livan1038(李枫) 兄弟
     我在"#{wh.saveWarehouseInfo}"这个方法中的第一行设置了断点. 点击提交时如果结果是刷新页面的话它根本不激活断点. 从而我无法进行跟踪调试. 如果断点激活了,这次提交的数据肯定能添加进去.

 
打开你的错误显示:<h:messages style="display:none;" id="errorinfo"/>,去掉display:none;看看报什么错误,还有一种排查错误方法,就是你先删除有怀疑的一个组件,然后再试另一个,如果按你所说的情况,多半是数据转换时发生的错误,这种错误就是不报错误,且不能提交页面,请重点检查你的<h:selectOneMenu id="whType" value="#{wh.whType}"><f:selectItem itemLabel="总仓" itemValue='Y'/><f:selectItem itemLabel="分仓" itemValue='N'/></h:selectOneMenu>部分
 |  举报 |  管理
#5 得分:0 回复于: 2007-08-23 10:08:16
回:mxm_1123(无名)兄弟

   我将:<h:messages style="display:none;" id="errorinfo"/>,去掉display:none了,并不会提示什么错误. 另我将<h:selectOneMenu id="whType" value="#{wh.whType}"><f:selectItem itemLabel="总仓" itemValue='Y'/><f:selectItem itemLabel="分仓" itemValue='N'/></h:selectOneMenu>部分删除了. 效果依旧..

 按Jsf的生命周期   恢复视图->应用请求值->处理验证->更新模型值->调用应用程序->Render显示

 程序应该是应用请求值后就直接跳到Render显示了.. 按理说,如果是新请求才会直接跳转的呀,这是为什么呢?..
mxm_1123
关注
mxm_1123
mxm_1123
本版等级: T6
#6 得分:0 回复于: 2007-08-23 10:23:01
提交后直接跳转,我说过了多半是数据转换时的错误,你首先要做的是先查出哪个组件出现了问题,然后再解决,你不是不输入数据就能提交吗?你可按以下的方法查找发生错误的组件,一次只输入一个组件的数据,然后提交,每次只提交一个组件的数据,逐个排查,肯定能找到错误原因出现在哪个组件上。
jxpxwym
关注
jxpxwym
jxpxwym
本版等级: T1
#7 得分:0 回复于: 2007-08-23 10:24:20
我做了一个PhaseLisener
发现在我提交不成功的时候出现以下信息(Tomcat5.028控制台输出的)..

请求开始
RESTORE_VIEW 1
RESTORE_VIEW 1
RENDER_RESPONSE 6
RENDER_RESPONSE 6
操作完成!

这就说明,当提交时,完全把它当作了一个新请求("没有回传")看待. 直接跳到输出了.
jxpxwym
关注
jxpxwym
jxpxwym
本版等级: T1
#8 得分:0 回复于: 2007-08-23 10:29:39
提交成功时显示

请求开始
RESTORE_VIEW 1
RESTORE_VIEW 1
APPLY_REQUEST_VALUES 2
APPLY_REQUEST_VALUES 2
PROCESS_VALIDATIONS 3
PROCESS_VALIDATIONS 3
UPDATE_MODEL_VALUES 4
UPDATE_MODEL_VALUES 4
INVOKE_APPLICATION 5
INVOKE_APPLICATION 5
RENDER_RESPONSE 6
RENDER_RESPONSE 6
操作完成!

回:mxm_1123(无名) 

没成功时提交直接从RESTORE_VIEW跳到RENDER_RESPONSE了. 应该是数据验证转换都没有执行吧?
mxm_1123
关注
mxm_1123
mxm_1123
本版等级: T6
#9 得分:0 回复于: 2007-08-23 10:36:43
在组件上加上required="true"不就知道它执行了没有吗?
jxpxwym
关注
jxpxwym
jxpxwym
本版等级: T1
#10 得分:0 回复于: 2007-08-23 10:55:46
回mxm_1123(无名)兄弟:

      加上了,效果和以前没什么区别. 我不输内容,它会出现必须输入内容的错误提示. 我输入内容后结果依然是刷新页面.
 
提交不成功时,控制台还是输出:

请求开始
/basic/add_wh.jsf RESTORE_VIEW 1
/basic/add_wh.jsf RESTORE_VIEW 1
/basic/add_wh.jsf RENDER_RESPONSE 6
/basic/add_wh.jsf RENDER_RESPONSE 6
操作完成!


mxm_1123
关注
mxm_1123
mxm_1123
本版等级: T6
#11 得分:0 回复于: 2007-08-23 11:47:59
你用的是sun jsf1.1吧,这个版本就有个bug说的是commandbutton不提交,建议你下载sun jsf1.2或者是改用myfaces,myfaces是不用出现这种问题的。
jxpxwym
关注
jxpxwym
jxpxwym
本版等级: T1
#12 得分:0 回复于: 2007-08-23 12:12:36
回mxm_1123(无名) 兄弟:

呵呵,我终于发现问题所在了.

我只要不点击<管理部门>与<负责人>这两个输入框,系统就可以正常的添加数据.
原因:<管理部门>点击时,会弹出新窗口,新窗口中显示的select_dept.jsf文件. 当弹出select_dept.jsf时,就会产生select_dept的UIViewRoot. ,问题就在这里,select_dept.jsf中的UIViewRoot居然会将原来父窗口中add_wh.jsf的UIViewRoot替换掉.这样就会出现add_wh.jsf提交时,找不到原来的UIViewRoot.从而认为是新的请求.所以页面就刷新了.


但是如何解决这个问题,我目前还没想到.我现在确实用的是SUN JSF1.1
efm32 入门.pdf 本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。 立即下载

相关推荐

中国高精度年度平均气温栅格数据集(1901-2024)

本文基于中国月度平均气温栅格数据集,计算生成1901-2024年1km分辨率的年度平均气温数据集,并按中国省市行政区划进行裁剪。该数据集融合CRU全球数据和WorldClim高分辨率数据,经496个站点验证,具有高时空精度和长时间序列特点,覆盖全国(含港澳台)逾百年气温记录,为气候变化研究、生态水文分析及农业生产评估等提供重要数据支撑。数据格式为Tif,单位为0.1℃,可获取全国、各省及各市三个尺度的气温栅格数据。

PPdata_Academy的博客 1241

Form表单异步提交,不刷新页面

一.先导入需要用到的js 二.HTML代码 注册账户: *必填 用户名: *必填

ChenSuoZhang的博客 3275

AI赚钱新思路 利用RPA+KIMI实现小红书全自动制作发布(详细攻略)

我已经事先准备好了文案素材,现在就利用Kimi的智能,根据我们已有的文案来创作出新的文案吧。之前我写过一篇关于【:一个戴着用百元大钞制成的简约头饰的少女,她坐在小车里,手里拿着一叠港元,整个画面洋溢着现实主义动漫风格和治愈系的温暖气息。通过这篇文章,我们已经一步步地完成了小红书治愈系文案的创作、治愈系图片的生成,以及笔记的发布,实现了整个流程的自动化。不慌不忙,快乐常在 在繁忙的日常中,给自己的心灵留一片净土,感受内心深处的平静与安宁。接下来,我将展示如何使用影刀来编写自动化脚本,以生成治愈系的图文图片。

weixin_42172073的博客 3680

html点击按钮后页面刷新的问题,form表单中button按钮触发submit点击事件

html点击按钮 有如下form表单,包含了一个button按钮: 情况1: <form action=""> <button onclick="">我是按钮</button> </from> 尽管button按钮没有执行任函数,但是点击按钮后,页面刷新。 情况2: <form action="http://www.baidu.com"> <button onclick="">我是按钮</button> </fr

MaYuKang的博客 7728

RAG优化知识库检索(4):混合检索技术

混合检索技术在RAG(检索增强生成)系统中的应用显著提升了检索效果。本文探讨了语义检索与关键词检索的优缺点,指出两者在语义理解和精确匹配方面的互补性。通过结合BM25与向量检索,混合检索系统能够更全面地捕捉文档的相关性。文章详细介绍了并行检索、级联检索、稀疏-密集混合表示等多种结合方式,并探讨了权重调整策略,如线性组合、动态权重调整和排序融合算法。此外,稀疏-密集混合检索架构的设计和实现方案也被深入分析,展示了如何通过结合不同检索方法的优势,提升RAG系统的检索质量和效率。

分享一些感兴趣的技术方面 2071

Mujoco xml actuator

在MuJoCo中,actuator(执行器) 是用于定义外部力或力矩的机制,这些力或力矩可以作用于关节、肌腱或身体。执行器可以模拟各种类型的驱动器,如电机、液压缸、肌肉等。它们通过定义传输(transmission)和力生成机制(force generation)来实现对模型的控制。

m0_52113469的博客 2891

jsp中自动重新发送请求刷新当前页面

由于某些原因,加载页面时我们需要自动刷新一下此页面,代码如下, function reurl(){ url = location.href; //把当前页面的地址赋给变量 url var times = url.split("?"); //分切变量 url 分隔符号为 "?" if(times[1] != 1){ //如果?后的值不等于1

chengsi101的博客 8144

把审批体验做成一体化:SAP Business Workflow 里的 Secondary Method、Before Method 与 After Method

摘要:SAP Business Workflow 中,Task 的 Secondary、Before 和 After 三类方法对提升审批体验和可追溯性至关重要。Secondary Method 可自动展示辅助信息(如审批时弹出排班报表),但需注意其独立会话特性;Before Method 适合预处理和审计留痕;After Method 确保收尾动作可靠执行。三类方法按特定顺序调用,且错误不影响主流程。合理使用这些方法能减少事务码切换,增强审计能力,优化用户体验。(149字)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 184

struts2实现不刷新页面执行action

前言在jsp中有一些动作的执行不适合刷新页面来执行,比如点赞。一般在jsp中可以利用ajax实现这个功能,下面是一个不刷新页面来提交表单,数据或者单纯执行action的例子。开始首先在jsp中加入代码,在需要触发action的部分写入如下代码:<input id="name" type="text"> <input type="button" value="ok" onclick="javascri

dongchang's blog 4877

1998年高教社杯全国大学生数学建模竞赛 B 题:《灾情巡视路线》真题解析与 MATLAB 解决方案

🏆 本文已收录于专栏:《滚雪球学数学建模(含历年真题)》,持续更新最新及历年数学建模竞赛资料,每篇内容力求做到“问题讲透、模型讲清、代码可用、论文可参考”,帮助你从零开始逐步建立完整的数学建模知识体系。

**My Coding Family** 881

基于Simulink的永磁同步电机力位混合控制(导纳+位置)仿真

本文详细介绍了基于Simulink的永磁同步电机(PMSM)力位混合控制系统实现方法。主要内容包括:1) 通过导纳控制原理(二阶质量-阻尼-弹簧模型)实现机器人柔顺控制;2) 在Simulink中构建虚拟环境、导纳控制器、PMSM驱动系统等完整框架;3) 针对曲面恒力打磨场景,实现20N恒力跟踪(RMS误差1.2N)和位置顺应;4) 支持纯位置/导纳/恒力三种工作模式切换;5) 提供系统性能评估指标和高级扩展功能。该方案显著提升了机器人环境交互的安全性和适应性,适用于精密装配、人机协作等应用场景。

xiaoheshang_123的博客 145

java防止页面刷新重复提交

看了网上的,有几种方法: 1 在你的表单页里HEAD区加入这段代码: 2 生成一个令牌保存在用户session中,在form中加一个hidden域,显示该令 牌的值,form提交后重新生成一个新的令牌,将用户提交的令牌和session 中的令牌比较,如相同则是重复提交 3 在你的服务器端控件的代码中使用Response.Redirect("selfPa

JasonSSH的专栏 1万+

【项目实战】使用Python - Mediapipe、OpenCV进行手部面部检测(Python源码)

本文介绍了使用MediaPipe和OpenCV库进行实时面部和手部关键点检测的方法。通过MediaPipe的Holistic模型,可以获取468个面部特征点及每只手21个特征点。文章详细说明了环境配置、模型初始化参数设置,并提供了完整的代码实现,包括视频流处理、关键点绘制和FPS计算等功能。这套方案可应用于手语识别、疲劳检测等计算机视觉场景,为开发者提供了一套高效的开箱即用解决方案。

梦想起飞的地方 480

.jsp页面中请求action的几种方式

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://gaochaojs.blog.51cto.com/812546/166697   方式1.用javascript的location.href    -------(实现整个页面刷新) &lt;table width="95%" border="0...

iteye_14194的博客 613

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

struts2 无刷新调用action 实现页面数据动态加载

js代码分为请求请求、处理返回两个函数。 function test(ot){     //var url = "getData.jsp?username="+document.getElementById("username").value;     var url = "http://localhost:8080/localEshop/updateQuantity?pid="

william_eyes的专栏 2074

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

jsp action java_【JSP】JSP Action动作标签

Action动作标签简述JSP action是JSP技术体系内置的一组标签,使用无需导入,或者添加另外的库。JSP action标签都是对Java代码的逻辑的封装。主要使用的是下面这些。标签作用jsp:include在页面被请求的时候引入一个文件。jsp:forward把请求转到一个新的页面。jsp:useBean寻找或者实例化一个JavaBean。jsp:setProperty设置JavaBea...

weixin_33708633的博客 781

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

ajax请求的url可以是action,也可以是jsp、html

一般我们请求的url是action,然后action返回一个jsp,此时请求的datatype是html,同样我们可以直接的请求一个url是jsp,其实他返回的就是一个jsp,只不过我们并没有经过action,代码如下: <divclass="col-sm-9"id="to_pag...

chenshoumo1978的博客 1070

JSP页面跳转的几种方式

JSP页面之间跳转的几种方式 1 使用href超链接标记 客户端跳转 2 表单提交 客户端跳转 3 使用RequestDispatcher.forward()(转发) 服务器跳转 4 使用 response.sendRedirect()(重定向) 客户端跳转 5 使用forward动作标记 服务器跳转 6 使用response对象...

weixin_43656426的博客 8559

Ajax请求返回一个页面,实现页面局部刷新

本文实现Ajax的局部刷新。思路如下: 首先,从JSP页面A.jsp向服务端发起一个Ajax请求,由Action中方法MethodA处理,该MethodA方法进行数据组装后,返回一个jsp页面Result.jsp,然后在Ajax的返回结果中,将Result.jsp元素,渲染到A.jsp中。 如图:占

实鼠不疫,牛转乾坤 2万+

jsp页面上传图片文件到服务器页面无刷新的技巧

最近做SSH项目碰到一个问题,我在页面上想上传一个图片文件到服务器,但是在上传前希望能在页面上看到图片的预览。查了一下资料,发现有几种方式可以完成这个功能。一种是通过javascript来实现这个预览的功能,但是这种方法对浏览器有限制,有的浏览器用此方法无效。一种是通过ajax实现,还有一种就是通过无刷新页面上传文件到服务器,通过显示服务器上的临时图片文件也可以实现预览的效果。        

moon__stone888888的博客 5469

解决struts后退和刷新页面重复提交的方案

        最近做了一个struts的小工程,由于是经验太少,遇到了这样的问题:struts执行完跳转后,它的动作仍然是停留在上一步,如:新增后我把页面转到列表页面,我刷新一下页面,就又新增了上一条记录;由于本人是菜鸟,也费了不少劲,所以写在这供同样是菜鸟的人参考,解决方案如下:        一、在跳转到新增页面的Action方法中,加入一条saveToken(request)语句,下面

JAVA学习专用BLOG 1795

提交表单时,固定jsp页面<select>标签下option的值不刷新

主要内容:SSH解决从a.jsp页面中的select标签中选中一个值param,同时将param提交到Action,再将结果传回a.jsp同时保持之前选中 的param仍为选中状态。 a.jsp页面   //获取后台传来的值进行判断   上线 下线 上线 下线 搜索 js代码 function sousuo(){    docume

cherry5230的博客 4027

解决web页面刷新重复提交action导致插入重复数据的问题

方法有二: 1、action处理完用户提交的数据后,重定向到另一个action或者页面中,提交之后,所停留的位置不是当前处理数据的action了,再刷新也是无法插入数据。 struts.xml: &lt;action name="action1" class="com.suo.actions.Action1"&gt; &lt;result name="success" type="red...

程序员小嗨 2323

jsp中防止刷新后退等操作造成表单重复提交(纯jsp或者struts)

1        js验证方法(js 判断防止form重新提交)  1.1 在页面中设置一个隐藏域值判断                              如果已经POST   OK   过,   就改变   value="true"   ;

xiashan17的专栏 6213

Jsp页面无法显示List数值debug4天经历-dayFour

csdn 上看了一个讨论帖 ,意识到问题可能出在页面的结构上,页面最后还是以ajax方式提交的请求。ajax不刷新页面,所以虽然有了新的页面,但是什么也不改变。 所以把ajax方式改成form 表单提交 ,问题应该就解决了。 改为form 提交表单。结果页面还是没有刷新,并且每提交一次form 浏览器就自动下载 一个gm!executeGM (12).action的文件,点了12次,就有了1

accontras的专栏 809

ajax提交form表单 局部刷新页面,jQuery ajaxSubmit 实现ajax提交表单局部刷新

AJAX简介AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。AJAX 不是新的编程语言,而是一种使用现有标准的新方法。AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下。需要引入 : jquery-form.js使用说明:Java代码调用的方法//success: showResponse // ...

weixin_42131316的博客 634
上一篇: StrutsSpringObjectFactory继承了com.opensymphony.xwork2.spring.SpringObjectFactory,主要做了几件事情
下一篇: 一个Servlet同一时刻只有一个实例。 当多个请求发送到同一个Servlet,服务器会为每个请求创建一个新线程来处理。
文谷
博客等级 码龄14年 4粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值