我的xhtml网站中的代码段:
<div>
<p:photoCam id="webcam" widgetVar="webcam" listener="#{webcam.capture}" update="response" oncomplete="PF('poll').start()"></p:photoCam>
<p:poll id="capture" intervall="1" oncomplete="PF('webcam').capture()" stop="#{timeController.stamped}"></p:poll>
<p:outputLabel styleClass="#{timeController.stamped ? 'colouredGreen' : 'colouredRed'}" id="response">
<p:spacer width="50" height="50"></p:spacer>
</p:outputLabel>
<p:poll intervall="3" widgetVar="poll" autoStart="false" oncomplete="PF('triggerReset').click()"></p:poll>
<p:commandButton id="triggerReset" widgetVar="triggerReset" style="display:none" actionListener="#{rimeController.resetStamp}" ajax="false"></p:commandButton>
</div>
我想做的是以下事情:
1.自动扫描条形码(网络摄像头每秒检查其前面是否有条形码)
2.如果扫描了条形码>>>我的标签变成绿色(作为扫描条形码的人的反馈),然后停止检查条形码
3. 3秒钟后(不必担心时间跨度),重设标签(默认状态>>>红色)并再次开始扫描,或者重设后备豆中的stamp-Var并重新加载整个页面(首选第一个替代方法)。
问题: 我无法让Point 3正常工作。条形码被扫描,标签变成绿色;网络摄像头停止扫描,但未发生重置。因此,据我所知,基本上第二次民意调查并未开始。
我的问题:
我在做什么错了?
我可以将其与我采用的方法配合使用吗?
如果没有,我如何实现这样的目标?
方法2(无效):
<p:poll intervall="3" widgetVar="poll" autoStart="false" oncomplete="triggerReset()"></p:poll>
<p:remoteCommand name="triggerReset" ajax="false" action="#{timeController.resetStamp}"></p:remoteCommand>
WebcamBean:
@ManagedBean(name="webcam", eager=true)
@SessionScoped
public class WebcamController{
@ManagedProperty(value="#{timeController}")
TimeController timeController = null;
public synchronized void capture (CaptureEvent captureEvent){
timeController.registerArrival("1001");
}
public TimeController getTimeController(){return timeController;}
public void setTimeController(TimeController timeController){this.timeController=timeController;}
}
timeController:
@ManagedBean(name="timeController", eager=true)
@SessionScoped
public class TimeController{
boolean stamped = false;
public void registerArrival() {
//parameterList getting filled and data written into database, works fine
}
resetStamp() {
stamped = false;
}
public boolean isStamped(){return stamped;}
public void setStamped(boolean stamped){this.stamped=stamped;}
}
+ commandButton方法的多次迭代
在此先感谢您的帮助:)