मैं अपने आवेदन स्टार्टअप पृष्ठ लोड पर निम्न त्रुटि हो रही है:सत्र नहीं बना सकते बाद प्रतिक्रिया किया गया है
SEVERE: Error Rendering View[/HomeTemplate/equityVolume.xhtml]
javax.el.ELException: /HomeTemplate/equityVolume.xhtml @70,78 value="#{equityBean.scripList}": java.lang.IllegalStateException: PWC3999: Cannot create a session after the response has been committed...
Caused by: java.lang.IllegalStateException: PWC3999: Cannot create a session after the response has been committed...
मैं इस त्रुटि मिलती है जब मैं अपने मुखपृष्ठ पर सीएसएस लागू, त्रुटि गायब हो जब मैं हटाने
: सीएसएस टेम्पलेट (लेकिन मैं सीएसएस टेम्पलेट aplly करना चाहते हैं) निम्नलिखित सेम कोड स्निपेट कि (डिबगिंग द्वारा पाया)public List<MasterScrip> getScripList() {
HttpServletRequest req=(HttpServletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest(); //error line
HttpSession session=req.getSession();
type=(String)session.getAttribute("type");...
एक्सएचटीएमएल कोड त्रुटि का कारण बनता है 210
<h:body>
<ui:composition template="commonClientLayout.xhtml">
<ui:define name="contentFile">
<div id="content">
<h:form id="frm">...
जब मैं ui को हटाता हूं: संयोजन और टैग परिभाषित करता हूं (यानी। अगर मैं सीएसएस लागू नहीं करता), तो मुझे यह त्रुटि नहीं मिलती है। इस त्रुटि का कारण क्या हो सकता है और मैं इसे कैसे हल करूं?
संपादित:
@PostConstruct
void initialiseSession() {
if(type!=null)
{
if(type.equalsIgnoreCase("losers"))
{
scripList=new ArrayList<MasterScrip>();
scripList=getScripByPriceLosers(exchange);
// return scripList;
}
else if(type.equalsIgnoreCase("gainers"))
{
scripList=new ArrayList<MasterScrip>();
scripList=getScripByPriceGainers(exchange);
// return scripList;
}
else
{
scripList=new ArrayList<MasterScrip>();
scripList=getScripByVolumeType(exchange);
// return scripList;
}
}
else
{
scripList=new ArrayList<MasterScrip>();
scripList=getScripByVolumeType(exchange);
}
}
public List<MasterScrip> getScripList() {
return scripList;
}
फिर से संपादित:
SEVERE: Error Rendering View[/equityVolume.xhtml]
java.lang.IllegalStateException
at org.apache.catalina.connector.ResponseFacade.setBufferSize(ResponseFacade.java:275)...
संपादित करें: web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Production</param-value>
</context-param>
<context-param>
<param-name>javax.faces.FACELETS_BUFFER_SIZE</param-name>
<param-value>65535</param-value>
</context-param>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>equityVolume.xhtml</welcome-file>
</welcome-file-list>
<security-constraint>
<display-name>Constraint1</display-name>
<web-resource-collection>
<web-resource-name>AdminTemplate</web-resource-name>
<description/>
<url-pattern>/AdminTemplate/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<description/>
<role-name>admin</role-name>
</auth-constraint>
</security-constraint>
<security-constraint>
<display-name>Constraint2</display-name>
<web-resource-collection>
<web-resource-name>ClientTemplate</web-resource-name>
<description/>
<url-pattern>/ClientTemplate/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<description/>
<role-name>client</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<realm-name>DataRealm</realm-name>
<form-login-config>
<form-login-page>/equityVolume.xhtml</form-login-page>
<form-error-page>/errorpage.xhtml</form-error-page>
</form-login-config>
</login-config>
<security-role>
<description/>
<role-name>admin</role-name>
</security-role>
<security-role>
<description/>
<role-name>client</role-name>
</security-role>
</web-app>
स्पष्टीकरण के लिए धन्यवाद। मैंने पोस्ट कॉन्स्ट्रक्चर विधि में व्यवसाय तर्क सेट किया है, फिर भी मुझे एक ही त्रुटि मिलती है (संपादित प्रश्न देखें)। मैं अपने ऐप में और कुछ नहीं प्राप्त कर सकता, मुझे क्या करना चाहिए? :( – z22
तो बीन को पृष्ठ में पहले कहीं भी संदर्भित नहीं किया गया है? आप किस जेएसएफ इंप/संस्करण का उपयोग कर रहे हैं? इसी तरह की समस्या मोजररा 2.1.8 में तय की गई थी। वैकल्पिक रूप से आप डिफ़ॉल्ट प्रतिक्रिया बफर आकार को बदल सकते हैं और बढ़ा सकते हैं। – BalusC
हां इसे पहले xhtml पृष्ठ – z22