दिलचस्प पोस्ट
एएसपी.एन.टी. एमवीसी विवरण @ अनुभाग की क्या इस टपल-सृजन मुहावरे का नाम है? एक संरचना की याद में लेआउट सी / सी ++ में सरणियों के सरंचना और स्ट्रैक्ट्स की सरणी Json.Net का उपयोग करते हुए JSON सरणी को पार्स करना Google मानचित्र एपीआई – सड़क निर्देशांक प्राप्त करना एक "कोई नहीं" के साथ इनपुट रिटर्न के अंदर प्रिंट स्टेटमेंट मैं अपने खुद के मूल अनुप्रयोग के भीतर से Google मानचित्र iPhone एप्लिकेशन कैसे लॉन्च कर सकता हूं? मैं पायथन में सेट्स का सेट कैसे बना सकता हूं? जावास्क्रिप्ट window.location में लक्ष्य = "_ रिक्त" कैसे जोड़ें? क्यों मेरा वेब सर्वर सॉफ्टवेयर अस्वीकार करें और अनुरोध हटाएं? एंड्रॉइड एमुलेटर में कैमरे का उपयोग करना बहु-कोर CPU पर x86 लॉक प्रश्न इंक निर्देश बनाम एडीडी 1: क्या यह बात है? मैं SQL सर्वर में एक निश्चित तिथि से अधिक सभी दिनांक के लिए कैसे पूछ सकता हूँ? .htaccess का उपयोग कर एक फ़ोल्डर नाम फिर से लिखना

@ सत्रसैक्ड बीन दायरे को खो देता है और हर समय पुन: निर्मित हो जाता है, फ़ील्ड शून्य हो जाते हैं

जेएसएफ 2.0 प्रोजेक्ट में एक सत्र स्क्वाड बीन के साथ मेरे पास बहुत अजीब समस्या है नेटबीन्स 6.9.1, ग्लासफ़िश 3 सर्वर और प्राइमफैसेस 3 का उपयोग जेएसएफ कॉन्टैक्ट लाइब्रेरी के रूप में

यहां कुछ कोड है:

package com.hia.jsf; import com.hia.netlabel.jpa.Genre; import com.hia.netlabel.jpa.Label; import java.io.Serializable; import java.util.List; import javax.annotation.PostConstruct; import javax.enterprise.context.SessionScoped; import javax.faces.bean.ManagedBean; import javax.faces.bean.ManagedProperty; @ManagedBean @SessionScoped public class LabelDetailJSF implements Serializable{ @ManagedProperty("#{genreLabelListJSF}") private GenreLabelListJSF genreLabelListJSF; private List<Genre> DetailLabelGenreList; private Label DetailLabel; /** Creates a new instance of LabelDetailJSF */ public LabelDetailJSF() { } @PostConstruct public void init(){ System.out.print("Running init LabelDetailJSF"); if(genreLabelListJSF.getSelectedLabel()!=null) { System.out.print("genreLabelListJSF was not null"); this.DetailLabelGenreList=genreLabelListJSF.getSelectedLabel().getGenreList(); this.DetailLabel= (genreLabelListJSF.getSelectedLabel()); } if(this.DetailLabelGenreList==null){ System.out.println("Bloody thing became null"); } } /** * @return the DetailLabel */ public Label getDetailLabel() { return DetailLabel; } /** * @param DetailLabel the DetailLabel to set */ public void setDetailLabel(Label DetailLabel) { System.out.println("Setting Detail Label For LabelDetailJSF to:"+DetailLabel.getLabelName()); this.DetailLabel = DetailLabel; } /** * @return the DetailLabelGenreList */ public List<Genre> getDetailLabelGenreList() { System.out.println("There is:"+this.DetailLabelGenreList.size()+ " Genres available"); return DetailLabelGenreList; } /** * @param DetailLabelGenreList the DetailLabelGenreList to set */ public void setDetailLabelGenreList(List<Genre> DetailLabelGenreList) { System.out.println("Setting the DetailLabelGenre List to have "+DetailLabelGenreList.size()); this.DetailLabelGenreList = DetailLabelGenreList; } /** * @return the genreLabelListJSF */ public GenreLabelListJSF getGenreLabelListJSF() { return genreLabelListJSF; } /** * @param genreLabelListJSF the genreLabelListJSF to set */ public void setGenreLabelListJSF(GenreLabelListJSF genreLabelListJSF) { this.genreLabelListJSF = genreLabelListJSF; } } 

तो बुनियादी तौर पर मैंने लेबल सत्र में एक और शतरंज का डिब्बा लगाया है, जिसे लेबललेबेलएलआईएसजेएसएफ लेबलडिटलजेएसएफ में ले लिया है। मैं एक डेटाटैबल के अंदर DetailLabelGenreList को प्रदर्शित करना चाहता हूं। आंकड़े प्रदर्शित करने के लिए यहां एक्सएचटीएमएल स्निपेट का उपयोग किया गया है

 <p:dataTable id="detailLabelGenreGrid" value="# {labelDetailJSF.detailLabelGenreList}" var="genre" paginator="true" styleClass="text70" rows="2" > <p:column style="min-width:196px;"> #{genre.genreName} </p:column> </p:dataTable> 

जब पृष्ठ लोड होता है तो मैं शुरूआत में कुछ पंक्तियों के साथ तालिका प्राप्त करता हूं। जब मैं पेजिंग बटन पर क्लिक करता हूं जहां मजा शुरू होता है

मैंने सभी सिस्टम। आउट स्टेटमेंट्स से आउटपुट की जांच की और पृष्ठ पर लोड होने पर निम्नलिखित पाया।

 INFO: Running init LabelDetailJSF INFO: genreLabelListJSF was not null INFO: There is:29 Genres available INFO: There is:29 Genres available INFO: There is:29 Genres available INFO: There is:29 Genres available INFO: There is:29 Genres available INFO: There is:29 Genres available 

जब मैं आंकड़ों के पृष्ठ बटन पर क्लिक करता हूं, तो मुझे निम्नलिखित मिलता है:

 INFO: Running init LabelDetailJSF INFO: Bloody thing became null SEVERE: javax.el.ELException: /LabelDetail.xhtml @62,165 value="# {labelDetailJSF.detailLabelGenreList}": java.lang.NullPointerException at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:107) at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:190) at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:178) at javax.faces.component.UIData.getValue(UIData.java:554) at org.primefaces.component.datatable.DataTable.getValue(DataTable.java:731) at javax.faces.component.UIData.getDataModel(UIData.java:1248) at javax.faces.component.UIData.setRowIndex(UIData.java:447) at javax.faces.component.UIData.visitTree(UIData.java:1184) at javax.faces.component.UIComponent.visitTree(UIComponent.java:1457) at javax.faces.component.UIComponent.visitTree(UIComponent.java:1457) at javax.faces.component.UIForm.visitTree(UIForm.java:333) at javax.faces.component.UIComponent.visitTree(UIComponent.java:1457) at javax.faces.component.UIComponent.visitTree(UIComponent.java:1457) at com.sun.faces.application.view.StateManagementStrategyImpl.restoreView(StateManagementStrategyImpl.java:223) at com.sun.faces.application.StateManagerImpl.restoreView(StateManagerImpl.java:177) at com.sun.faces.application.view.ViewHandlingStrategy.restoreView(ViewHandlingStrategy.java:131) at com.sun.faces.application.view.FaceletViewHandlingStrategy.restoreView(FaceletViewHandlingStrategy.java:430) at com.sun.faces.application.view.MultiViewHandler.restoreView(MultiViewHandler.java:143) at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:199) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:110) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:312) at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1523) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215) at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:277) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641) at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97) at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185) at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:226) at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165) at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791) at com.sun.grizzly.comet.CometEngine.executeServlet(CometEngine.java:473) at com.sun.grizzly.comet.CometEngine.handle(CometEngine.java:341) at com.sun.grizzly.comet.CometAsyncFilter.doFilter(CometAsyncFilter.java:84) at com.sun.grizzly.arp.DefaultAsyncExecutor.invokeFilters(DefaultAsyncExecutor.java:161) at com.sun.grizzly.arp.DefaultAsyncExecutor.interrupt(DefaultAsyncExecutor.java:137) at com.sun.grizzly.arp.AsyncProcessorTask.doTask(AsyncProcessorTask.java:88) at com.sun.grizzly.http.TaskBase.run(TaskBase.java:189) at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330) at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309) at java.lang.Thread.run(Thread.java:662) Caused by: java.lang.NullPointerException at com.hia.jsf.LabelDetailJSF.getDetailLabelGenreList(LabelDetailJSF.java:72) at sun.reflect.GeneratedMethodAccessor951.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at javax.el.BeanELResolver.getValue(BeanELResolver.java:302) at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:175) at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:72) at com.sun.el.parser.AstValue.getValue(AstValue.java:116) at com.sun.el.parser.AstValue.getValue(AstValue.java:163) at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:219) at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:102) ... 48 more 

मैं देख सकता हूं कि यह लगभग सेम की तरह है, जो गुंजाइश है और हर समय पुन: निर्मित हो जाता है। शुरू में मूल्य तब होते हैं जब पृष्ठांकन शुरू होता है, फल की मात्रा खो देता है उदाहरण के लिए मैंने देखा है कि पेजिंग शुरू होने पर @ManagedProperty बीन भी शून्य हो जाते हैं। कौन सी तरह की पागल है क्योंकि यह भी एक सत्र scoped बीन है।

जेएसएफ में फिर भी एक नया हाथ है, इसलिए मैंने शायद कुछ नोब गलती की। उल्लेख करना चाहिए कि मैंने शुरू में इसे दुर्घटना से दृश्यस्क्रॉइड बीन के रूप में बना दिया था, और सत्र के लिए बीन को बदलने के बाद मैंने अप्लीकेशन को ग्लासफ़िश को पुनरारंभ किया और इसे फिर से बनाया और उसे दोबारा तैनात किया।

कोई विचार?

Solutions Collecting From Web of "@ सत्रसैक्ड बीन दायरे को खो देता है और हर समय पुन: निर्मित हो जाता है, फ़ील्ड शून्य हो जाते हैं"

आप गलत @SessionScoped एनोटेशन का उपयोग कर रहे हैं आप सीडीआई में से एक का उपयोग कर रहे हैं, जबकि आपने @Named @ @Named एनोटेशन के बजाय जेएसएफ @Named बीन एनोटेशन के साथ बीन पंजीकृत किया है।

सीडीआई @SessionScoped आयात को बदलें

 import javax.enterprise.context.SessionScoped; 

जेएसएफ @SessionScoped आयात द्वारा

 import javax.faces.bean.SessionScoped; 

यह भी देखें:

  • कैसे सही बीन क्षेत्र का चयन करने के लिए?
  • बैकिंग बीन्स (@ManagedBean) या सीडीआई बीन्स (@ नोमेड)?