Метод ManagedBean не вызывается из серого окна
У меня проблема в моем проекте. Я использую jsf1.2, towmhawk, фреймворки a4j и greybox javascript. Я хочу получить несколько логин и пароль. поэтому я использую приведенный ниже код
ManagedBean: psgBean
private String username;(managedbean code)
private String password; //setter and getters
public String addPsgLogin()
{
System.out.println("inside addUP");
if(username.length()!=0 && password.length()!=0)
{
psgLoginFlag=1;
psgUserNameErrorMsg="";
psgPasswordErrorMsg="";
NiPsgLoginInfo psgObj=new NiPsgLoginInfo(username,password);
userpassList.add(psgObj);
}
My Jsp page :newInstallations
UserName
<h:inputText styleClass="text_box_content" id="psgUserName" value="#{psgBean.username}" size="35" />
<h:outputLabel id="psgUserNameErrorMsg" styleClass="error_style" value="#{psgBean.psgUserNameErrorMsg}" />
Password
<h:inputText styleClass="text_box_content" id="psgPassword" value="#{psgBean.password}" size="35" />
<h:outputLabel id="psgPasswordErrorMsg" styleClass="error_style" value="#{psgBean.psgPasswordErrorMsg}" />
<h:commandButton styleClass="button_style" value="Add" actionListener="#{psgBean.addPsgLogin}" / >
<h:commandButton styleClass="button_style" value="Reset" onclick="psgClear()" type="button" />
<h:outputLink value="psgusername.faces" onclick="return GB_myShow('Solvedge smartphone Web Portal', this.href,600,850)" >
<h:commandButton styleClass="button_style" value="View"></h:commandButton>
</h:outputLink>
Это изображение, как показано ниже
после добавления нескольких логинов я хочу увидеть его после нажатия кнопки просмотра. так что я использовал arraylist для сбора объектов входа в систему и использовал t:datatable для перечисления значений. и я использовал код greybox javascript, чтобы показать внутреннюю страницу
Это похоже на изображение ниже
Вы можете увидеть кнопку обновления на второй странице. эта кнопка обновления используется для обновления отредактированных значений в значениях входного текста. но никаких изменений не происходит, если я нажимаю кнопку обновления. так что я просто вызвал нормальный метод бэк-бина, который тоже не вызывается. вот код
другая страница JSP для просмотра
<h:form>
<t:dataTable var="us" value="#{psgBean.userpassList}" rowIndexVar="rowid" styleClass="UserTable" id="psgLoginList" headerClass="UserTable_Header"
rowClasses="UserTable_Row1,UserTable_Row2" columnClasses="UserTable_ColumnLeft">
<h:column>
<f:facet name="header" >
<t:outputText styleClass="table_header_value" value="S.No" /></f:facet>
<h:inputText styleClass="text_box_content" value="#{rowid+1}" />
</h:column>
<h:column>
<f:facet name="header">
<t:outputText styleClass="table_header_value"
value="UserName" />
</f:facet>
<h:inputText styleClass="text_box_content"
value="#{us.username}" />
</h:column>
<h:column>
<f:facet name="header">
<t:outputText styleClass="table_header_value"
value="Password" />
</f:facet>
<h:inputText styleClass="text_box_content"
value="#{us.password}" />
</h:column>
<h:column>
<f:facet name="header">
<t:outputText styleClass="table_header_value"
value="Delete" />
</f:facet>
<h:commandButton value="Delete" action="#{psgBean.deletePsgLogin}">
<t:updateActionListener value="#{us}" property="#{psgBean.deletable1}"></t:updateActionListener>
<a4j:support ajaxSingle="true" reRender="psgLoginForm:psgLoginList"></a4j:support>
</h:commandButton>
</h:column>
</t:dataTable>
<h:commandButton value="Update" action="#{psgBean.saveClicking}">
</h:commandButton>
<h:commandButton value="cancel" onclick="winclose()"></h:commandButton>
</h:form>
вот метод в управляемом бобе
public String saveClicking()
{
System.out.println("just checking");
return null;
}
этот метод не вызывается. Приведенный выше код присутствует только в теге формы. Я думаю, что проблема с кодом серого.
/
1 ответ
Я нашел ошибку. Я поместил rowId(s.no) в поле ввода, так как он автоматически увеличивается, мы не можем обновить значение.