[JBoss Seam] - null pointer exception in Seam conversation using <s:convert
by billdurrellï¼ hotmail.com
Hi , I searched the Seam forum for this problem but did not find exactly this case . I get the following exception navigating my web app that includes a dropdown list . I can go the the page with the dropdown list and save to the database but when I go to the next page and try to return to the dropdown I get the null pointer exception (sometimes) . Not sure how to proceed??? I really like Seam and would like to fix this problem .
| java.lang.NullPointerException
| at com.sun.faces.renderkit.html_basic.MenuRenderer.renderOption(MenuRenderer.java:580)
| at com.sun.faces.renderkit.html_basic.MenuRenderer.renderOptions(MenuRenderer.java:757)
| at com.sun.faces.renderkit.html_basic.MenuRenderer.renderSelect(MenuRenderer.java:811)
| at com.sun.faces.renderkit.html_basic.MenuRenderer.encodeEnd(MenuRenderer.java:335)
| at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:833)
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:896)
| at javax.faces.render.Renderer.encodeChildren(Renderer.java:137)
| at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:809)
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:886)
| at javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
| at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:577)
| at org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
| at org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:233)
| at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
| at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
| at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
| at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
| at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:63)
| at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
| at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:87)
| at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
| at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:63)
| at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
| at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:46)
| at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
| at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
| at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)
| at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:40)
| at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
| at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:140)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
| at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
| at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
| at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
| at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
| at java.lang.Thread.run(Thread.java:595)
|
page :
|
| <h:form id="orgProfile1">
| <h1>Register Organization Profile</h1>
| <hr/>
| <h:outputLabel for="orgType" value="#{messages.orgType}"/>
| <h:selectOneMenu value="#{organization.type}" id="orgType">
| <s:selectItems value="#{orgTypeList}" var="type" label="#{type.type}" noSelectionLabel="Select your type"/>
| <s:convertEntity/>
| </h:selectOneMenu>
| <h:commandButton type="submit" value="Save" action="#{profile.save}"/>
| </h:form>
|
|
| package ca.gc.acdi_cida;
|
| import ....
|
| @Stateful
| @Name("profile")
| public class OrganizationalProfileAction implements OrganizationalProfile {
|
| @In (required=false)
| @Out (required=false)
| private Organization organization ;
|
| @Out (required=false)
| private List<OrganizationalType> orgTypeList;
|
| @In(create=true)
| private EntityManager entityManager;
|
|
| @Begin(join=true)
| @SuppressWarnings("unchecked")
| @Factory( "orgTypeList" )
| public void findOrgTypes() {
| System.out.println( " -------------------- Retrieving types..." );
| orgTypeList = entityManager.createQuery("from OrganizationalType ").getResultList();
| System.out.println(" ------------------ orgTypeList size : "+ orgTypeList.size());
|
| }
|
| @End
| public String save(){
| entityManager.persist(organization);
| organization = new Organization();
| return null;
| }
|
| @Remove @Destroy
| public void destroy() {}
|
| }
|
|
| package ca.gc.acdi_cida;
|
| import java.io.Serializable;
|
| import javax.persistence.Entity;
| import javax.persistence.GeneratedValue;
| import javax.persistence.Id;
| import javax.persistence.ManyToOne;
|
| import org.jboss.seam.annotations.Name;
|
| @Entity
| @Name("organization")
|
| public class Organization implements Serializable {
|
|
| private static final long serialVersionUID = 1L;
|
|
| private Integer id;
| private OrganizationalType type;
|
| public Organization(OrganizationalType type) {
| this.type = type;
| }
|
| public Organization() {}
|
| @Id @GeneratedValue
| public Integer getId() {return id;}
| public void setId(Integer id) {this.id = id;}
|
| @ManyToOne
| public OrganizationalType getType() {return type;}
| public void setType(OrganizationalType type) {
| System.out.println(" ------------ Type : " + type);
| this.type = type;
| }
|
|
|
| }
|
|
|
|
| import javax.persistence.Entity;
| import javax.persistence.GeneratedValue;
| import javax.persistence.Id;
|
| import org.jboss.seam.annotations.Name;
|
| @Entity
| @Name("organizationalType")
|
|
| public class OrganizationalType implements Serializable{
|
| /**
| *
| */
| private static final long serialVersionUID = 2490845589570967280L;
| private String type ;
| private Integer id;
|
| public OrganizationalType(){}
|
| public OrganizationalType(String type) {
| this.type = type;
| }
|
| @Id @GeneratedValue
| public Integer getId() {return id;}
| public void setId(Integer id) {this.id = id;}
|
| public String getType() {return type;}
| public void setType(String type) {this.type = type;}
| }
|
components.xml
| <persistence:managed-persistence-context name="entityManager"
| auto-create="true"
| persistence-unit-jndi-name="java:/hopeEntityManagerFactory"/>
|
|
|
persistence.xml
| <?xml version="1.0" encoding="UTF-8"?>
| <!-- Persistence deployment descriptor for dev profile -->
| <persistence xmlns="http://java.sun.com/xml/ns/persistence"
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
| xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
| version="1.0">
|
| <persistence-unit name="hope">
| <provider>org.hibernate.ejb.HibernatePersistence</provider>
| <jta-data-source>java:/DefaultDS</jta-data-source>
| <properties>
| <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect" />
| <property name="hibernate.transaction.flush_before_completion" value="true" />
| <property name="hibernate.hbm2ddl.auto" value="create-drop" />
| <property name="hibernate.show_sql" value="true" />
| <property name="jboss.entity.manager.factory.jndi.name" value="java:/hopeEntityManagerFactory"/>
| </properties>
| </persistence-unit>
|
| </persistence>
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4067166#4067166
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4067166
18Â years, 9Â months
[JBoss Seam] - Client Tracking or Double Click like functionality baked int
by jtyrrell
I have been poking around Seam and have not found an API that would
allow me to manage what Cold Fusion called Client Management. I of
course found the "Remember Me" functionality, but that only creates a
user with active participation of the Remote User. I am looking for a feature that would smartly manage:
The Users IP address.
A Client Cookie.
Credentials or User Specified Information.
I would then have to tie the above things and a few other things to
logging of pages views, search criteria, and maybe even results counts
or other things for business intelligence and user customization.
>From the real world I am thinking about technology that would enable
you to use Seam to write Double Click like technology to track users; Orwhen I go to Amazon even if I have never logged into the site, they giveme past search results, this allows ..."super user
spyware", or as I would call it the ultimate in user personalization. I know there are scalability issues with something like this, issues with Conversations with multiple windows going on, and host of other problems. Just looking to see if anyone has some thoughts on this.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4067164#4067164
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4067164
18Â years, 9Â months
[JBoss Portal] - JBoss Portal 2.6 - org.hibernate.HibernateException
by mores
I am brand new to JBOSS, and I am trying to get the portal running.
I executed:
./run.sh --host=x.x.x.x
But ran into the following errors:
15:31:56,069 ERROR [STDERR] org.jboss.portal.portlet.container.PortletInitializationException: The portlet CMSAdminPortlet threw a portlet exception during init
15:31:56,105 ERROR [STDERR] Caused by: javax.portlet.PortletException: Authorization Service not found
15:32:00,764 ERROR [URLDeploymentScanner] Incomplete Deployment listing:
--- MBeans waiting for other MBeans ---
ObjectName: portal:service=Hibernate
State: FAILED
Reason: java.lang.RuntimeException: Couldn't connect to file:/var/jboss-portal-2.6/server/default/deploy/jboss-portal.sar/conf/hibernate/user/setup.txt within 1 seconds. Check your connection parameters or the URL.
I Depend On:
jboss.jca:service=DataSourceBinding,name=PortalDS
Depends On Me:
portal:service=Module,type=IdentityServiceController
--- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM ---
ObjectName: portal:service=Hibernate
State: FAILED
Reason: java.lang.RuntimeException: Couldn't connect to file:/var/jboss-portal-2.6/server/default/deploy/jboss-portal.sar/conf/hibernate/user/setup.txt within 1 seconds. Check your connection parameters or the URL.
I Depend On:
jboss.jca:service=DataSourceBinding,name=PortalDS
Depends On Me:
portal:service=Module,type=IdentityServiceController
15:32:04,277 INFO [Server] JBoss (MX MicroKernel) [4.0.5.GA (build: CVSTag=Branch_4_0 date=200610162339)] Started in 3m:41s:812ms
http://localhost:8080/ seems to work,
but http://localhost:8080/portal throws org.hibernate.HibernateException: Unable to locate current JTA transaction
Shouldn't jboss-portal-2.6-bundled.zip run right out of the box ?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4067162#4067162
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4067162
18Â years, 9Â months
[JBoss Seam] - Re: Problem with Seam2.0.Beta1 & a4j:poll
by pdpantages
Hello, I am also seeing this with an a4j:poll. I am using Seam 1.2.1 GA. This definitely worked for me in Seam 1.1.6.
My stack trace is a little different...
I see that there are no interceptors at all in this stack trace, so I suppose
the reason it doesn't punt over to my login page is that my @LoggedIn interceptor
is not being called anymore. If the user is logged in, the interceptor is run as
expected.
I tried using @Interceptor(type=Interceptor.CLIENT) on my login
interceptor, but the behaviour remained unchanged.
Is there anyway to get my login interceptor to run before the point
where the exception (below) happens? Or is there a alternative check that I can do for a loggedOut user?
I also tried the "no-conversation-view-id" in pages.xml, but this resulted in no change in
behaviour.
Thank you kindly for any assistance.
PdP
| javax.servlet.ServletException: Stack must not be null
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:152)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96)
| at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Thread.java:595)
| 2007-07-24 13:18:02,481 ERROR [http-0.0.0.0-8080-5] org.jboss.seam.web.ExceptionFilter
| exception root cause
|
| java.lang.IllegalArgumentException: Stack must not be null
| at org.jboss.seam.core.ConversationEntry.<init>(ConversationEntry.java:40)
| at org.jboss.seam.core.ConversationEntries.createConversationEntry(ConversationEntries.java:50)
| at org.jboss.seam.core.Manager.createConversationEntry(Manager.java:685)
| at org.jboss.seam.core.Manager.beforeRedirect(Manager.java:834)
| at org.jboss.seam.core.Manager.beforeRedirect(Manager.java:852)
| at org.jboss.seam.core.Manager.appendConversationIdFromRedirectFilter(Manager.java:1104)
| at org.jboss.seam.web.RedirectFilter$1.sendRedirect(RedirectFilter.java:64)
| at javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:125)
| at org.apache.myfaces.context.servlet.ServletExternalContextImpl.redirect(ServletExternalContextImpl.java:490)
| at org.ajax4jsf.framework.ajax.AjaxViewHandler.restoreView(AjaxViewHandler.java:177)
| at org.apache.myfaces.lifecycle.LifecycleImpl.restoreView(LifecycleImpl.java:141)
| at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:66)
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96)
| at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Thread.java:595)
| 2007-07-24 13:18:02,482 ERROR [http-0.0.0.0-8080-5] org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/client].[Faces Servlet]
| Servlet.service() for servlet Faces Servlet threw exception
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4067158#4067158
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4067158
18Â years, 9Â months