我是技术JSF的新手所以我遇到了我的应用程序和数据库之间的相关问题,当我从列表中选择一个或多个项目而不是保存所选数据时,主要问题出现,它不会插入任何内容。 我发现有些问题接近我的但在我的情况下没有一个成功,因为他们大多数都给出了静态值的例子,而我正在研究动态的数据库中的哪个令牌。 最后:我需要从数据库中获取值的同步化代码核心! 这里是我的xhtml的image看起来如何。 然后在这里我的代码backbean:
public DualListModel<Mission> getMissions() {
// Players
teamNameList = new ArrayList<String>();
source = new ArrayList<Mission>();
target = new ArrayList<Mission>();
source.addAll(oservice.listMission());
missions = new DualListModel<Mission>(source, target);
return missions;
}
这个xhtml的块:
<h:form>
<p:growl id="msg" showDetail="true" escape="false" />
<p:pickList id="teamPickList" value="#{details.missions}" var="mission" itemValue="#{mission}" itemLabel="#{mission.tache}" showSourceControls="true" showTargetControls="true" showCheckbox="true" responsive="true" showSourceFilter="true" showTargetFilter="true" filterMatchMode="contains" converter="mConverter"> <f:facet name="sourceCaption">Available</f:facet> <f:facet name="targetCaption">Starting</f:facet> <p:ajax event="transfer" listener="#{details.onTransfer}" update="msg" /> <p:ajax event="select" listener="#{details.onSelect}" update="msg" /> <p:ajax event="unselect" listener="#{details.onUnselect}" update="msg" /> <p:ajax event="reorder" listener="#{details.onReorder}" update="msg" /> <p:column style="width:100%;"> #{mission.tache} </p:column> </p:pickList> </h:form>
然后这是我的转换器代码:
@ManagedBean
@ApplicationScoped
public class PlayerConverter implements Converter {
@EJB
ServiceOffreLocal oservice;
@Override
public Object getAsObject(FacesContext facesContext, UIComponent component, String submittedValue) {
return oservice.getMission(Integer.parseInt(submittedValue));
}
@Override
public String getAsString(FacesContext facesContext, UIComponent component, Object value) {
return String.valueOf(((Mission) value).getId_Miss());
}
}
我无法弄清楚我在尝试的代码中的错误在哪里!!