|
Java форум JavaTalks форум программистов
|
|
|
|
| Предыдущая тема :: Следующая тема |
| Автор |
Сообщение |
reds-scauser : 20 Новичок Откуда: г. Алматы
|
Янв 22, 2012 19:58 |
|
|
Здравствуйте! Надеюсь на вашу помощь.
У меня есть
index.xhtml
| Код: |
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:p="http://primefaces.prime.com.tr/ui"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets">
<h:head>
<title>Форма добавления записи БЗР</title>
</h:head>
<h:body>
<h:form prependId="false">
<p:tabView>
<p:tab title="Основные сведения">
<p:panel id="GeneralInformationPanel">
<h:panelGrid columns="4" border="0">
<h:outputLabel value="*" style="color: red; font: bold 18px Times;" escape="false"/>
<h:outputLabel for="BZRnumber" value="Номер карточки БЗР" escape="false"/>
<h:outputLabel value="&nbsp;&nbsp;" escape="false"/>
<p:inputText id="BZRnumber" required="true"
requiredMessage="Поля отмеченные звездочкой обязательные для заполнения."/>
</h:panelGrid>
</p:panel>
</p:tab>
<p:tab title="Ключевые слова">
<p:panel header="Добавления ключевых слов:" id="KeywordPanel">
<h:panelGroup style="font: 15px Times;">
<h:outputLabel for="Keywords" value="Ключевое слово"/>
<h:outputLabel value="&nbsp;&nbsp;" escape="false"/>
<p:inputText id="Keywords" value="#{keywords.keyword}" style="font: 15px Times;"/>
<h:outputLabel value="&nbsp;&nbsp;" escape="false"/>
<p:commandButton value="Добавить" update="KeywordsPanel KeywordPanel" ajax="true"
style="font: 13px Times;" action="#{keywords.addKeyword}"/>
</h:panelGroup>
</p:panel>
<p:panel header="Список ключевых слов:" id="KeywordsPanel">
<p:dataTable id="KeywordsTable" style="text-align: center; font: 14px Times;"
rowIndexVar="resIdx" value="#{keywords.keywords}">
<p:column headerText="№">
<h:outputText value="#{resIdx + 1}"/>
</p:column>
<p:column headerText="Ключевое слово">
#{keywords.keywords.get(resIdx)}
</p:column>
<p:column headerText="Действия">
<p:commandButton image="ui-icon-pencil"/>
<p:commandButton image="ui-icon-close"/>
</p:column>
</p:dataTable>
</p:panel>
</p:tab>
</p:tabView>
</h:form>
</h:body>
</html>
|
и
| Код: |
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package kz.erpca.bzr.web.ui;
import java.io.Serializable;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import java.util.*;
/**
*
* @author daniyar.artykov
*/
@ManagedBean(name = "keywords")
@ViewScoped
public class KeywordsBean implements Serializable {
/** Creates a new instance of KeywordsBean */
public KeywordsBean() {
}
String keyword;
ArrayList<String> keywords = new ArrayList<String>();
public String getKeyword() {
return keyword;
}
public void setKeyword(String keyword) {
this.keyword = keyword;
}
public ArrayList<String> getKeywords() {
return keywords;
}
public String addKeyword() {
keywords.add(keyword);
keyword = null;
return null;
}
public String deleteKeyword(String keyword) {
keywords.remove(keyword);
return null;
}
}
|
в index.xhtml не работает <p:dataTable> в этой части кода:
| Код: |
<p:panel header="Добавления ключевых слов:" id="KeywordPanel">
<h:panelGroup style="font: 15px Times;">
<h:outputLabel for="Keywords" value="Ключевое слово"/>
<h:outputLabel value="&nbsp;&nbsp;" escape="false"/>
<p:inputText id="Keywords" value="#{keywords.keyword}" style="font: 15px Times;"/>
<h:outputLabel value="&nbsp;&nbsp;" escape="false"/>
<p:commandButton value="Добавить" update="KeywordsPanel KeywordPanel" ajax="true"
style="font: 13px Times;" action="#{keywords.addKeyword}"/>
</h:panelGroup>
</p:panel>
<p:panel header="Список ключевых слов:" id="KeywordsPanel">
<p:dataTable id="KeywordsTable" style="text-align: center; font: 14px Times;"
rowIndexVar="resIdx" value="#{keywords.keywords}">
<p:column headerText="№">
<h:outputText value="#{resIdx + 1}"/>
</p:column>
<p:column headerText="Ключевое слово">
#{keywords.keywords.get(resIdx)}
</p:column>
<p:column headerText="Действия">
<p:commandButton image="ui-icon-pencil"/>
<p:commandButton image="ui-icon-close"/>
</p:column>
</p:dataTable>
</p:panel>
|
но если убрать из index.xhtml
| Код: |
<h:panelGrid columns="4" border="0">
<h:outputLabel value="*" style="color: red; font: bold 18px Times;" escape="false"/>
<h:outputLabel for="BZRnumber" value="Номер карточки БЗР" escape="false"/>
<h:outputLabel value="&nbsp;&nbsp;" escape="false"/>
<p:inputText id="BZRnumber" required="true"
requiredMessage="Поля отмеченные звездочкой обязательные для заполнения."/>
</h:panelGrid> |
<p:dataTable> работает... но не могу понят в чем проблема
Помогите разобраться, заранее спасибо! |
|
|
|
 |
demon_zx : 1568 Завсегдатай Откуда: Moscow
|
Янв 22, 2012 20:31 |
|
|
замените на &
вообще неправильно записано
иначе эти записи невалидны для xhtml |
|
|
|
 |
reds-scauser : 20 Новичок Откуда: г. Алматы
|
Янв 22, 2012 21:31 |
|
|
| demon_zx писал(а): |
замените на &
вообще неправильно записано
иначе эти записи невалидны для xhtml |
спасибо за ваш быстрый ответ!
я разобрался, это из-за
| Код: |
<p:inputText id="BZRnumber" required="true"
requiredMessage="Поля отмеченные звездочкой обязательные для заполнения."/>
|
где вместо
меняем на
но мне надо чтобы это поле было обязательной...
можете помочь? |
|
|
|
 |
demon_zx : 1568 Завсегдатай Откуда: Moscow
|
Янв 22, 2012 21:40 |
|
|
|
должен быть атрибут value, а так не понятно куда передается значение и скорее всего на попытке валидирования значения и валится |
|
|
|
 |
reds-scauser : 20 Новичок Откуда: г. Алматы
|
Янв 22, 2012 22:01 |
|
|
| demon_zx писал(а): |
|
должен быть атрибут value, а так не понятно куда передается значение и скорее всего на попытке валидирования значения и валится |
спасибо, я разобрался, благодаря вам
в коде
| Код: |
<p:commandButton value="Добавить" update="KeywordsPanel KeywordPanel"
style="font: 13px Times;" action="#{keywords.addKeyword}"/>
|
нужно добавить
| Код: |
| process="KeywordPanel" |
|
|
|
|
 |
|
|
|