How to integrate progressBar in my project
maserati Jan 19, 2012 8:39 AMHello,
I have a login.jsf page , where users brings in the parameters to connect in Oracle, I want that when they click on Connect, a progressBar displays and after it display 100 % users will be redirect towards the page welcome.jsf
PS: the connection to Oracle (works) , the redirection to welcome.jsf page also (works), I just want to integrate(join) the progressBar
Login.jsf
<?xml version='1.0' encoding='UTF-8' ?>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:a4j="http://richfaces.org/a4j"
xmlns:rich="http://richfaces.org/rich">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link href="css/default.css" rel="stylesheet" type="text/css" />
<title> LOGICA TESTING BI TOOL</title>
</head>
<f:view>
<body>
<img src="img/logica.jpg" class="floatLeft"
height="82" width="96"/>
<h1> LOGICA TESTING BI TOOL</h1>
<br clear="all" ></br>
<table width="100%">
<tr><td style="background-color: #200070" height="5"></td></tr>
</table>
<br clear="all" ></br>
<h:form>
<rich:tabPanel headerAlignment="right" switchType="client">
<rich:tab label="ORACLE">
<h:panelGrid columns="2">
<h:outputText value="Host"></h:outputText>
<h:inputText value="#{ManagedBeanO.host}"></h:inputText>
<h:outputText value="Port"></h:outputText>
<h:inputText value="#{ManagedBeanO.port}"></h:inputText>
<h:outputText value="User"></h:outputText>
<h:inputText value="#{ManagedBeanO.user}"></h:inputText>
<h:outputText value="Password"></h:outputText>
<h:inputSecret value="#{ManagedBeanO.mdp}"></h:inputSecret>
<h:outputText value="Base Name"></h:outputText>
<h:inputText value="#{ManagedBeanO.baseName}"></h:inputText>
</h:panelGrid>
<h:commandButton value="Connect"
action="#{ManagedBeanO.process}" style="width: 6em" />
</rich:tab>
</h:form>
</body>
</f:view>
</html>
I found a code of progressBar in the Richefaces website .... but I didn't succed to integrate it into my project:
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:a4j="http://richfaces.org/a4j"
xmlns:rich="http://richfaces.org/rich">
<h:form>
<a4j:outputPanel id="progressPanel">
<rich:progressBar value="#{progressBarBean.currentValue}"
interval="2000" label="#{progressBarBean.currentValue} %"
enabled="#{progressBarBean.enabled}" minValue="-1" maxValue="100"
reRenderAfterComplete="progressPanel">
<f:facet name="initial">
<br />
<h:outputText value="Process doesn't started yet" />
<a4j:commandButton action="#{progressBarBean.startProcess}"
value="Start Process" reRender="progressPanel"
rendered="#{progressBarBean.buttonRendered}"
style="margin: 9px 0px 5px;" />
</f:facet>
<f:facet name="complete">
<br />
<h:outputText value="Process Done" />
<a4j:commandButton action="#{progressBarBean.startProcess}"
value="Restart Process" reRender="progressPanel"
rendered="#{progressBarBean.buttonRendered}"
style="margin: 9px 0px 5px;" />
</f:facet>
</rich:progressBar>
</a4j:outputPanel>
</h:form>
</ui:composition>
JavaBeanSource
/**
*
*/
package org.richfaces.demo.progressBar;
import java.util.Date;
/**
* @author Ilya Shaikovsky
*
*/
public class ProgressBarBean {
private boolean buttonRendered = true;
private boolean enabled=false;
private Long startTime;
public ProgressBarBean() {
}
public String startProcess() {
setEnabled(true);
setButtonRendered(false);
setStartTime(new Date().getTime());
return null;
}
public Long getCurrentValue(){
if (isEnabled()){
Long current = (new Date().getTime() - startTime)/1000;
if (current>100){
setButtonRendered(true);
}else if (current.equals(0)){
return new Long(1);
}
return (new Date().getTime() - startTime)/1000;
} if (startTime == null) {
return Long.valueOf(-1);
}
else
return Long.valueOf(101);
}
public boolean isEnabled() {
return enabled;
}
public void setEnabled(boolean enabled) {
this.enabled = enabled;
}
public Long getStartTime() {
return startTime;
}
public void setStartTime(Long startTime) {
this.startTime = startTime;
}
public boolean isButtonRendered() {
return buttonRendered;
}
public void setButtonRendered(boolean buttonRendered) {
this.buttonRendered = buttonRendered;
}
}
Thanks for your help.