Hi: I am using Seam-Version: 1.2.1.GA. I am using PageFlow. I have a problem when i press a lot of time the next buttom , i have the following error
***************** 2007-08-06 09:15:04 StandardWrapperValve[FacesServlet]: Servlet.service() for servlet FacesServlet threw exception javax.faces.el.EvaluationException: /normal-application.jspx @13,72 rendered="#{normalCreditApplication.serviceProvider}": Exception getting value of property serviceProvider of base of type : com.yoogalu.ncf.web.seam.bean.NormalCreditApplication_$$_javassist_2 Caused by: org.jboss.seam.NoConversationException: no long-running conversation for @Conversational bean: normalCreditApplication ********************** I read that with Seam-Version: 1.2.1.GA i will not have problem with double click. Can you give some suggestion? . This problem only occur when i press the buttom a lot of times. Thank for your help It is my pageflow <pageflow-definition xmlns="http://jboss.com/products/seam/pageflow" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jboss.com/products/seam/pageflow http://jboss.com/products/seam/pageflow-1.2.xsd" name="normalCreditApplicationFlow"> <start-state> </start-state> <page name="normal" view-id="/normal-application.jspx" back="disabled"> <page name="normalSerialNumberPrint" view-id="/normal-serialnumber-print.jspx" back="enabled"> <page name="normalListPossibleDebtors" view-id="/list-existing-debtors.jspx" back="disabled"> <page name="normalListPossibleDebtorsPrint" view-id="/list-existing-debtors.jspx" back="disabled"> <page name="toEditApplication" view-id="/loan-application.jspx"> <page name="salary" view-id="/salaryApplication.jspx" back="disabled"> <end-conversation /> </pageflow-definition> My bean : package com.yoogalu.ncf.web.seam.bean; import java.io.Serializable; import java.sql.Timestamp; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.faces.event.ValueChangeEvent; import org.jboss.seam.ScopeType; import org.jboss.seam.annotations.Begin; import org.jboss.seam.annotations.Conversational; import org.jboss.seam.annotations.In; import org.jboss.seam.annotations.Name; import org.jboss.seam.annotations.Out; import org.jboss.seam.annotations.Scope; import org.jboss.seam.annotations.datamodel.DataModel; import org.jboss.seam.annotations.datamodel.DataModelSelection; import org.jboss.seam.core.FacesMessages; import com.yoogalu.framework.FrameworkConstants; import com.yoogalu.ncf.core.cache.CompanyCache; import com.yoogalu.ncf.core.cache.DealerCache; import com.yoogalu.ncf.core.cache.ServiceProviderCache; import com.yoogalu.ncf.core.cache.StoreCache; import com.yoogalu.ncf.core.entity.AppCustomer; import com.yoogalu.ncf.core.entity.Application; import com.yoogalu.ncf.core.entity.Company; import com.yoogalu.ncf.core.entity.Customer; import com.yoogalu.ncf.core.entity.Dealer; import com.yoogalu.ncf.core.entity.Invoice; import com.yoogalu.ncf.core.entity.ServiceProvider; import com.yoogalu.ncf.core.entity.Store; import com.yoogalu.ncf.core.util.AppContext; import com.yoogalu.ncf.web.seam.Tokens; import com.yoogalu.ncf.web.seam.Util; import com.yoogalu.ncf.web.seam.bean.UserCredentials; @Name("normalCreditApplication") @Scope(ScopeType.CONVERSATION) @Conversational public class NormalCreditApplication implements Serializable { private static final long serialVersionUID = FrameworkConstants.SERIAL_VERSION_UID; private static final int MAX_SERIAL = 999; private static final String APPLICATIONREF = "applicationRef"; private static final String APPLICANTNAME1 = "applicantName1"; private static final String APPLICANTNAME2 = "applicantName2"; private static final String SERIALNO = "serialNo"; private static final String DEALERNAME = "dealerName"; private static final String APPFEE = "appFee"; private static final String APPSTATUS_NEWAPPLICATION = "N"; private static final String NAMETEMPLATE = "template"; private static final String PRIVACY = "privacy"; private static final String ONE = "One"; private static final String TWO = "Two"; private static final String APPLICATIONFEE = "applicationFee"; private static final String NAMEFIELD1VALUE = "________________________________"; private static final String DATEFIELD1VALUE = "___/___/_____"; private static final String DATETEXT1VALUE = "Date"; private static final String NAMEFIELD1 = "nameField1"; private static final String DATEFIELD1 = "dateField1"; private static final String DATETEXT1 = "dateText1"; private static final String NAMEFIELD2 = "nameField2"; private static final String DATEFIELD2 = "dateField2"; private static final String DATETEXT2 = "dateText2"; private Dealer dealer; private String surnameSearch; private String firstNameSearch; private String serialNumberUser; private List listPossibleDebtors; private boolean serviceProvider; private boolean secondApplicant; private String idServiceProvider; private String companyName; private String storeName; private String dealerName; private Integer numRows; private boolean flgPrint; private AutoCompleteLocation autoCompleteLocation ; @Out(value = Tokens.entityLookup4Application, scope = ScopeType.CONVERSATION) private Application application; @Out(value = "mapPrint", scope = ScopeType.CONVERSATION, required = false) private transient Map<String, String> mapPrint; @In(value = Tokens.bean4UserCredentials, scope = ScopeType.SESSION) private transient UserCredentials userCredentials; @DataModelSelection(value = "listPossibleDebtors") private Customer customerSelected; @In private FacesMessages facesMessages; @Begin(join = true, pageflow = "normalCreditApplicationFlow") public void beginStandard() { initApplication(); } @Begin(join = true, pageflow = "normalCreditApplicationFlow") public void beginServProv() { initApplication(); setServiceProvider(true); String serviceProviderContractType = Util.getBundledMessageResource(Tokens.SERVICEPROVIDERCONTRACTTYPE); getApplication().setContractTypeCode(serviceProviderContractType); } private void initApplication() { this.autoCompleteLocation = new AutoCompleteLocation(); this.application = new Application(); this.application.setApplicationDate(new Timestamp(System.currentTimeMillis())); this.application.setAppStatus(APPSTATUS_NEWAPPLICATION); Customer firstCustomer = new Customer(); Customer secondCustomer = new Customer(); AppCustomer firstAppCustomer = new AppCustomer(); AppCustomer secondAppCustomer = new AppCustomer(); Invoice invoice = new Invoice(); firstAppCustomer.setCustomer(firstCustomer); firstAppCustomer.setApplicantNo(new Integer(1)); secondAppCustomer.setCustomer(secondCustomer); secondAppCustomer.setApplicantNo(new Integer(2)); this.application.setPrimaryInvoice(invoice); this.application.setApplicant1(firstAppCustomer); this.application.setApplicant2(secondAppCustomer); if (!userCredentials.isAllStoresAccessor()) { this.autoCompleteLocation.setStoreSel(Util.getStoreCodeDashStoreName(userCredentials.getStoreId())); this.autoCompleteLocation.setCompanySel(Util.getCompanyCodeDashStoreName(userCredentials.getCompanyId())); } } public void searchPossibleDebtorsbyUser() { final List customers; customers = Util.getApplicationService().searchCustomerByName(getFirstNameSearch(), getSurnameSearch()); setListPossibleDebtors(customers); this.numRows = customers.size(); } public void searchPossibleDebtorsbySystem() { final List customers; customers = Util.getApplicationService().searchCustomerByName( this.getApplication().getApplicant1().getCustomer().getFirstName(), this.getApplication().getApplicant1().getCustomer().getSurname()); setFirstNameSearch(this.getApplication().getApplicant1().getCustomer().getFirstName()); setSurnameSearch(this.getApplication().getApplicant1().getCustomer().getSurname()); setListPossibleDebtors(customers); this.numRows = customers.size(); } public void setMapPrint() { String nameFile = null; String applicationFee = null; String valueApplicationFee = null; String filePath = null; mapPrint = new HashMap<String, String>(); // Obtain the name of the pdf template if (isSecondApplicant()) { nameFile = PRIVACY + TWO; } else { nameFile = PRIVACY + ONE; } if (getApplication().getContractTypeCode() != null) { nameFile = nameFile + getApplication().getContractTypeCode().toUpperCase(); } try { filePath = Util.getBundledMessageResource(nameFile); } catch (Exception e) { filePath = null; } if (filePath == null) { if (getApplication().getContractTypeCode() != null) { nameFile = PRIVACY + getApplication().getContractTypeCode().toUpperCase(); } try { filePath = Util.getBundledMessageResource(nameFile); } catch (Exception e) { filePath = null; } } // Obtain the value of applicationFee if (getApplication().getContractTypeCode() != null) { applicationFee = APPLICATIONFEE + getApplication().getContractTypeCode().toUpperCase(); } try { valueApplicationFee = Util.getBundledMessageResource(applicationFee); } catch (Exception e) { valueApplicationFee = null; } if (valueApplicationFee == null) { try { valueApplicationFee = Util.getBundledMessageResource(APPLICATIONFEE); } catch (Exception e) { valueApplicationFee = null; } } // Set the map to print this.mapPrint.put(APPLICATIONREF, this.getDealer().getFranchiseCode() + Tokens.SPACE + Tokens.DASH + Tokens.SPACE + getApplication().getPrimaryInvoice().getInvoiceNo().toString()); this.mapPrint.put(APPLICANTNAME1, getApplication().getApplicant1().getCustomer().getFullName()); this.mapPrint.put(APPLICANTNAME2, getApplication().getApplicant2().getCustomer().getFullName()); this.mapPrint.put(SERIALNO, getApplication().getSerialNo()); this.mapPrint.put(APPFEE, valueApplicationFee); this.mapPrint.put(NAMETEMPLATE, filePath); if (serviceProvider) { String nameField2 = Tokens.SPACE; String dateField2 = Tokens.SPACE; String dateText2 = Tokens.SPACE; if (secondApplicant) { nameField2 = NAMEFIELD1VALUE; dateField2 = DATEFIELD1VALUE; dateText2 = DATETEXT1VALUE; // } } this.mapPrint.put(NAMEFIELD1, NAMEFIELD1VALUE); this.mapPrint.put(DATEFIELD1, DATEFIELD1VALUE); this.mapPrint.put(DATETEXT1, DATETEXT1VALUE); this.mapPrint.put(NAMEFIELD2, nameField2); this.mapPrint.put(DATEFIELD2, dateField2); this.mapPrint.put(DATETEXT2, dateText2); this.mapPrint.put(DEALERNAME, "Dealer: " + this.getDealer().getFranchiseName().toUpperCase() + " and Services Dealer: " + getApplication().getServiceProvider().getName().toUpperCase()); } else { this.mapPrint.put(DEALERNAME, this.getDealer().getFranchiseName()); } } public boolean validateSecondApplicant() { if (!getApplication().getApplicant2().getCustomer().getFirstName().trim().equals(Tokens.BLANK) && !getApplication().getApplicant2().getCustomer().getSurname().trim().equals(Tokens.BLANK)) { setSecondApplicant(true); return true; } else if (getApplication().getApplicant2().getCustomer().getFirstName().trim().equals(Tokens.BLANK) && getApplication().getApplicant2().getCustomer().getSurname().trim().equals(Tokens.BLANK) && getApplication().getApplicant2().getCustomer().getMiddleName().trim().equals(Tokens.BLANK)) { setSecondApplicant(false); return true; } else if (!getApplication().getApplicant2().getCustomer().getFirstName().trim().equals(Tokens.BLANK) || !getApplication().getApplicant2().getCustomer().getSurname().trim().equals(Tokens.BLANK) || !getApplication().getApplicant2().getCustomer().getMiddleName().trim().equals(Tokens.BLANK)) { setSecondApplicant(false); facesMessages.add(Util.getBundledMessageResource(Tokens.MSG_INVALIDNAME_SECONDAPPPLICANT)); } return false; } public boolean validateLocation() { try { int idDealer = Util.obtainDealerId(this.autoCompleteLocation.getCompanySel(), this.autoCompleteLocation.getStoreSel(), this.autoCompleteLocation.getDealerSel()); int idCompany = Util.obtainCompanyId(this.autoCompleteLocation.getCompanySel()); int idStore = Util.obtainStoreId(this.autoCompleteLocation.getCompanySel(), this.autoCompleteLocation.getStoreSel()); getApplication().setDealerId(null); getApplication().setStoreId(null); this.setDealerName(null); this.setStoreName(null); this.setCompanyName(null); this.setDealer(null); if (idDealer > 0) { DealerCache dealerCache = (DealerCache) AppContext.getCache(DealerCache.class.getSimpleName()); Dealer dealerAux = (Dealer) dealerCache.getEntityById(idDealer); StoreCache storeCache = (StoreCache) AppContext.getCache(StoreCache.class.getSimpleName()); Store storeAux = (Store) storeCache.getEntityById(idStore); CompanyCache companyCache = (CompanyCache) AppContext.getCache(CompanyCache.class.getSimpleName()); Company companyAux = (Company) companyCache.getEntityById(idCompany); if (dealerAux != null) { getApplication().setDealerId(dealerAux.getId()); getApplication().setStoreId(dealerAux.getStoreId()); this.setDealer(dealerAux); this.setDealerName(dealerAux.getDepartmentCode() + Tokens.DASH + dealerAux.getFranchiseName()); this.setStoreName(storeAux.getStoreCode() + Tokens.DASH + storeAux.getName()); this.setCompanyName(companyAux.getCompanyCode() + Tokens.DASH + companyAux.getName()); return true; } } facesMessages.add(Util.getBundledMessageResource(Tokens.MSG_INVALID_LOCATION)); return false; } catch (Exception e) { facesMessages.add(Util.getBundledMessageResource(Tokens.MSG_INVALID_LOCATION)); return false; } } public void calculateSerialNumber() { double serialNoSyst = Math.random() * MAX_SERIAL; getApplication().setSerialNo(getDealer().getDepartmentCode() + (int) serialNoSyst + Tokens.BLANK); } public boolean validaSerialNumber() { if (getSerialNumberUser() != null) { if (getSerialNumberUser().equals("111")) { // return // getApplication().getSerialNo().equals(getSerialNumberUser()); return true; } else { facesMessages.add(Util.getBundledMessageResource(Tokens.MSG_INVALID_SERIALNUMBER)); return false; } } else { facesMessages.add(Util.getBundledMessageResource(Tokens.MSG_INVALID_SERIALNUMBER)); return false; } } public boolean validaDefaultPrintPrivacy() { if ((Util.getBundledMessageResource(Tokens.DEFAULTPRINTPRIVACY).toUpperCase().equals(Tokens.YES))) { return true; } else { return false; } } public boolean validaInvoiceNo() { if (Util.getApplicationService().isUniqueInvoiceNo(this.getDealer(), getApplication().getPrimaryInvoice().getInvoiceNo())) { // this.setMsgWrongInvoiceNo(Util.getBundledMessageResource(Tokens.BLANK)); return true; } else { // this.setMsgWrongInvoiceNo(Util.getBundledMessageResource(Tokens.MSG_INVALID_INVOICENO)); facesMessages.add( Util.getBundledMessageResource(Tokens.MSG_INVALID_INVOICENO)); return false; } } public String getSurnameSearch() { return surnameSearch; } public void setSurnameSearch(String surnameSearch) { this.surnameSearch = surnameSearch; } public String getFirstNameSearch() { return firstNameSearch; } public void setFirstNameSearch(String firstNameSearch) { this.firstNameSearch = firstNameSearch; } public String getSerialNumberUser() { return serialNumberUser; } public void setSerialNumberUser(String serialNumberUser) { this.serialNumberUser = serialNumberUser; } @DataModel public List getListPossibleDebtors() { return listPossibleDebtors; } public void setListPossibleDebtors(List listPossibleDebtors) { this.listPossibleDebtors = listPossibleDebtors; } public boolean getServiceProvider() { return serviceProvider; } public void setServiceProvider(boolean serviceProvider) { this.serviceProvider = serviceProvider; } public String getIdServiceProvider() { return idServiceProvider; } public void setIdServiceProvider(String idServiceProvider) { this.idServiceProvider = idServiceProvider; } public boolean isSecondApplicant() { return secondApplicant; } public void setSecondApplicant(boolean secondApplicant) { this.secondApplicant = secondApplicant; } public Customer getCustomerSelected() { return customerSelected; } public void setCustomerSelected(Customer customerSelected) { this.customerSelected = customerSelected; } public void setSelectCustomerOne() { if (customerSelected != null) { getApplication().getApplicant1().setCustomer(customerSelected); if (customerSelected.getLatestAppCustomer() != null) { Application app = Util.getApplicationService().findApplicationById( customerSelected.getLatestAppCustomer().getApplication().getId()); application.getApplicant1().copyFrom(app.getApplicant1()); } } } public Application getApplication() { return application; } public void setApplication(Application application) { this.application = application; } public void createApplication() { getApplication().setStoreId(getDealer().getStoreId()); getApplication().setDealerId(getDealer().getId()); getApplication().setFranchiseCode(getDealer().getFranchiseCode()); getApplication().getApplicant1().setApplication(getApplication()); getApplication().getPrimaryInvoice().setDealerId(getApplication().getDealerId()); getApplication().getPrimaryInvoice().setApplication(getApplication()); getApplication().getPrimaryInvoice().setStoreId(getApplication().getStoreId()); if (isSecondApplicant()) { getApplication().getApplicant2().setApplication(getApplication()); } else { getApplication().setApplicant2(null); } Util.getApplicationService().saveApplication(getApplication()); } public List getListServiceProviders() { ServiceProviderCache serviceProviderCache = (ServiceProviderCache) AppContext.getCache(ServiceProviderCache.class .getSimpleName()); List serviceProviders = (List) serviceProviderCache.getEntityList(); return serviceProviders; } public void onSelectServiceProvider(ValueChangeEvent event) { ServiceProvider serProvider = (ServiceProvider) event.getNewValue(); getApplication().setServiceProvider(serProvider); } public void setPrinting() { this.setFlgPrint(true); } public void setNoPrinting() { this.setFlgPrint(false); } public Dealer getDealer() { return dealer; } public void setDealer(Dealer dealer) { this.dealer = dealer; } public String getCompanyName() { return companyName; } public void setCompanyName(String companyName) { this.companyName = companyName; } public String getDealerName() { return dealerName; } public void setDealerName(String dealerName) { this.dealerName = dealerName; } public String getStoreName() { return storeName; } public void setStoreName(String storeName) { this.storeName = storeName; } public boolean isFlgPrint() { return flgPrint; } public void setFlgPrint(boolean flgPrint) { this.flgPrint = flgPrint; } public AutoCompleteLocation getAutoCompleteLocation() { return autoCompleteLocation; } public void setAutoCompleteLocation(AutoCompleteLocation autoCompleteLocation) { this.autoCompleteLocation = autoCompleteLocation; } public Integer getNumRows() { return numRows; } public void setNumRows(Integer numRows) { this.numRows = numRows; } } ***************** My page <?xml version="1.0" encoding="UTF-8"?> <jsp:root xmlns="http://www.w3.org/1999/xhtml" xmlns:a4j="https://ajax4jsf.dev.java.net/ajax" xmlns:a="https://ajax4jsf.dev.java.net/ajax" xmlns:c="http://java.sun.com/jstl/core" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:rich="http://richfaces.ajax4jsf.org/rich" xmlns:s="http://jboss.com/products/seam/taglib" xmlns:ui="http://java.sun.com/jsf/facelets" version="2.0"> <h:messages globalOnly="true" styleClass="alertMsgBold" /> <h:form id='normalApp'> <s:validateAll> <a4j:region id="autocomplete"> <h:outputText id="idHeaderLocation" value="#{msg['creditApplication.headerLocation']}" styleClass="header1" /> <c:if test="#{userCredentials.allStoresAccessor}"> ALLSTORE=TRUE<h:outputText for="company" value="#{msg['creditApplication.company']}" />asfasf <a4j:outputPanel id="companyPanel"> <a4j:region id="companyRegion" renderRegionOnly="false"> <h:inputText value="#{normalCreditApplication.autoCompleteLocation.companySel}" size="50" required="true" id="company" /> <rich:suggestionbox for="company" suggestionAction="#{normalCreditApplication.autoCompleteLocation.autocompleteCompany}" var="company" height="200" width="250" requestDelay="350" focus="store" ignoreDupResponses="true"> <a4j:support event="onselect" action="#{normalCreditApplication.autoCompleteLocation.onSelectCompany}" reRender="storePanel,dealerPanel" oncomplete="setFocus('normalApp:store');" /> <h:column> <h:outputText value="#{company.companyCode}-#{company.name}" /> </h:column> </rich:suggestionbox> </a4j:region> </a4j:outputPanel> <a4j:outputPanel ajaxRendered="true"> <h:message for="company" styleClass="alertMsg" /> </a4j:outputPanel> </c:if> <c:if test="#{!userCredentials.allStoresAccessor}"> <h:outputText for="company" value="#{msg['creditApplication.company']}" /> <h:outputText for="company" value="#{normalCreditApplication.autoCompleteLocation.companySel}" /> </c:if> <c:if test="#{userCredentials.allStoresAccessor}"> <h:outputText for="store" value="#{msg['creditApplication.store']}" /> <a4j:outputPanel id="storePanel"> <a4j:region id="storeRegion" renderRegionOnly="false"> <h:inputText value="#{normalCreditApplication.autoCompleteLocation.storeSel}" size="50" required="true" id="store" /> <rich:suggestionbox for="store" requestDelay="350" suggestionAction="#{normalCreditApplication.autoCompleteLocation.autocompleteStore}" var="store" height="200" width="250" focus="dealer"> <a4j:support event="onselect" action="#{normalCreditApplication.autoCompleteLocation.onSelectStore}" reRender="dealerPanel" oncomplete="setFocus('normalApp:dealer');" /> <h:column> <h:outputText value="#{store.storeCode}-#{store.name}" /> </h:column> </rich:suggestionbox> </a4j:region> </a4j:outputPanel> <a4j:outputPanel ajaxRendered="true"> <h:message for="store" styleClass="alertMsg" /> </a4j:outputPanel> </c:if> <c:if test="#{!userCredentials.allStoresAccessor}"> <h:outputText for="store" value="#{msg['creditApplication.store']}" /> <h:outputText for="store" value="#{normalCreditApplication.autoCompleteLocation.storeSel}" /> </c:if> <h:outputText for="dealer" value="#{msg['creditApplication.dealer']}" /> <a4j:outputPanel id="dealerPanel"> <h:inputText value="#{normalCreditApplication.autoCompleteLocation.dealerSel}" size="50" id="dealer" required="true" /> <rich:suggestionbox for="dealer" requestDelay="350" suggestionAction="#{normalCreditApplication.autoCompleteLocation.autocompleteDealer}" var="dealer" height="200" width="250"> <a4j:support event="onselect" oncomplete="setFocus('normalApp:invoice');" /> <h:column> <h:outputText value="#{dealer.departmentCode}-#{dealer.franchiseName}" /> </h:column> </rich:suggestionbox> </a4j:outputPanel> <a4j:outputPanel ajaxRendered="true"> <h:message for="dealer" styleClass="alertMsg" /> </a4j:outputPanel> </a4j:region> <h:outputText id="headerApplicationDetails" value="#{msg['creditApplication.headerApplicationDetails']}" styleClass="header1" /> <h:outputText for="invoice" value="#{msg['creditApplication.invoice']}" /> <h:inputText id="invoice" value="#{normalCreditApplication.application.primaryInvoice.invoiceNo}" required="true"></h:inputText> <h:message for="invoice" styleClass="alertMsg" /> <h:outputText for="headerFirstApplicant" value="#{msg['creditApplication.headerFirstApplicant']}" styleClass="header1" /> <h:outputText for="firstName" value="#{msg['creditApplication.firstName']}" /> <h:inputText id="firstName" value="#{normalCreditApplication.application.applicant1.customer.firstName}" required="true"></h:inputText> <h:message for="firstName" styleClass="alertMsg" /> <h:outputText for="middleName" value="#{msg['creditApplication.middleName']}" /> <h:inputText id="middleName" value="#{normalCreditApplication.application.applicant1.customer.middleName}"></h:inputText> <h:message for="middleName" styleClass="alertMsg" /> <h:outputText for="surname" value="#{msg['creditApplication.surname']}" /> <h:inputText id="surname" value="#{normalCreditApplication.application.applicant1.customer.surname}" required="true"></h:inputText> <h:message for="surname" styleClass="alertMsg" /> <h:outputText for="headerSecondApplicant" value="#{msg['creditApplication.headerSecondApplicant']}" styleClass="header1" /> <h:outputText for="firstNameSecond" value="#{msg['creditApplication.firstName']}" /> <h:inputText id="firstNameSecond" value="#{normalCreditApplication.application.applicant2.customer.firstName}"></h:inputText> <h:message for="firstNameSecond" styleClass="alertMsg" /> <h:outputText for="middleNameSecond" value="#{msg['creditApplication.middleName']}" /> <h:inputText id="middleNameSecond" value="#{normalCreditApplication.application.applicant2.customer.middleName}"></h:inputText> <h:message for="middleNameSecond" styleClass="alertMsg" /> <h:outputLabel for="surnameSecond" value="#{msg['creditApplication.surname']}" /> <h:inputText id="surnameSecond" value="#{normalCreditApplication.application.applicant2.customer.surname}"></h:inputText> <h:message for="surnameSecond" styleClass="alertMsg" /> <f:subview rendered="#{normalCreditApplication.serviceProvider}"> <h:outputText id="headerServiceProvider" value="#{msg['creditApplication.headerServiceProvider']}" styleClass="header1" /> <h:outputLabel for="serviceProv" value="#{msg['creditApplication.serviceProvider']}" /> <h:selectOneMenu value="#{normalCreditApplication.application.serviceProvider}" style="width:280px" valueChangeListener="#{normalCreditApplication.onSelectServiceProvider}" id="serviceProviderId"> <s:selectItems value="#{normalCreditApplication.listServiceProviders}" var="serviceProvider" onchange="submit()" immediate="true" label="#{serviceProvider.name}" /> <f:converter converterId="serviceProviderConverter" /> </h:selectOneMenu> <h:message for="serviceProv" styleClass="alertMsg" /> </f:subview> </s:validateAll> <h:commandButton value="#{msg['creditApplication.next']}" action="next" styleClass="buttom" /> </h:form> </jsp:root> The errror: 2007-08-06 09:15:04 StandardWrapperValve[FacesServlet]: Servlet.service() for servlet FacesServlet threw exception javax.faces.el.EvaluationException: /normal-application.jspx @13,72 rendered="#{normalCreditApplication.serviceProvider}": Exception getting value of property serviceProvider of base of type : com.yoogalu.ncf.web.seam.bean.NormalCreditApplication_$$_javassist_2 at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:60) at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:1078) at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:601) at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:605) at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:605) at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:138) at org.ajax4jsf.framework.ajax.AjaxViewRoot.access$001(AjaxViewRoot.java:53) at org.ajax4jsf.framework.ajax.AjaxViewRoot$1.invokeRoot(AjaxViewRoot.java:256) at org.ajax4jsf.framework.ajax.JsfOneOneInvoker.invokeOnRegionOrRoot(JsfOneOneInvoker.java:53) at org.ajax4jsf.framework.ajax.AjaxContext.invokeOnRegionOrRoot(AjaxContext.java:191) at org.ajax4jsf.framework.ajax.AjaxViewRoot.processDecodes(AjaxViewRoot.java:272) at org.apache.myfaces.lifecycle.ApplyRequestValuesExecutor.execute(ApplyRequestValuesExecutor.java:32) at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:95) at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:70) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:139) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at com.yoogalu.ncf.web.servlet.Boilerplate.doFilter(Boilerplate.java:42) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127) at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264) at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107) at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:217) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:106) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:229) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148) at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683) at java.lang.Thread.run(Thread.java:595) Caused by: javax.faces.el.EvaluationException: Bean: com.yoogalu.ncf.web.seam.bean.NormalCreditApplication_$$_javassist_2, property: serviceProvider at org.apache.myfaces.el.PropertyResolverImpl.getProperty(PropertyResolverImpl.java:461) at org.apache.myfaces.el.PropertyResolverImpl.getValue(PropertyResolverImpl.java:85) at com.sun.facelets.el.LegacyELContext$LegacyELResolver.getValue(LegacyELContext.java:141) at com.sun.el.parser.AstValue.getValue(AstValue.java:118) at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:192) at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71) at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:56) ... 66 more Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor279.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.apache.myfaces.el.PropertyResolverImpl.getProperty(PropertyResolverImpl.java:457) ... 72 more Caused by: org.jboss.seam.NoConversationException: no long-running conversation for @Conversational bean: normalCreditApplication at org.jboss.seam.interceptors.ConversationalInterceptor.aroundInvoke(ConversationalInterceptor.java:55) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69) at org.jboss.seam.interceptors.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:27) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69) at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103) at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:151) at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:87) at com.yoogalu.ncf.web.seam.bean.NormalCreditApplication_$$_javassist_2.getServiceProvider(NormalCreditApplication_$$_javassist_2.java) ... 76 more View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4071010#4071010 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4071010 _______________________________________________ jboss-user mailing list jboss-user@lists.jboss.org https://lists.jboss.org/mailman/listinfo/jboss-user