[JBoss JIRA] Created: (RF-10189) Comparator doesn't consider null values
by Lukas Fryc (JIRA)
Comparator doesn't consider null values
---------------------------------------
Key: RF-10189
URL: https://issues.jboss.org/browse/RF-10189
Project: RichFaces
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: component-tables
Affects Versions: 4.0.0.Milestone5
Environment: * RichFaces 4.0.0-SNAPSHOT r.20958
* Metamer 4.0.0-SNAPSHOT r.20964
* Mojarra 2.0.3-b05
* JBoss AS 6.0.0.Final
* OpenJDK Runtime Environment 1.6.0_20-b20 @ Linux
* Firefox 3.6.13 @ Linux x86_64
Reporter: Lukas Fryc
See also [Steps to Reproduce] to reproduce it in Metamer.
I have model which contains null values in one column and when I want to sort by such column, I want to let RichFaces consider it and sort it on the end of the.
The java.lang.Comparable itself [1] states that the NullPointerException should be thrown when comparing object to null value.
However for user convenience, it will be better to handle null values in consistent way to avoid necessity for defining custom comparator.
[1] http://download.oracle.com/javase/6/docs/api/java/lang/Comparable.html
java.lang.NullPointerException
at java.util.Date.getMillisOf(Date.java:956)
at java.util.Date.compareTo(Date.java:976)
at java.util.Date.compareTo(Date.java:129)
at org.richfaces.model.ArrangeableModel.compareSortByValues(ArrangeableModel.java:328)
at org.richfaces.model.ArrangeableModel.compare(ArrangeableModel.java:309)
at org.richfaces.model.ArrangeableModel.access$200(ArrangeableModel.java:52)
at org.richfaces.model.ArrangeableModel$2.compare(ArrangeableModel.java:262)
at java.util.Arrays.mergeSort(Arrays.java:1283)
at java.util.Arrays.mergeSort(Arrays.java:1294)
at java.util.Arrays.mergeSort(Arrays.java:1294)
at java.util.Arrays.mergeSort(Arrays.java:1295)
at java.util.Arrays.mergeSort(Arrays.java:1294)
at java.util.Arrays.mergeSort(Arrays.java:1294)
at java.util.Arrays.sort(Arrays.java:1223)
at java.util.Collections.sort(Collections.java:176)
at org.richfaces.model.ArrangeableModel.sort(ArrangeableModel.java:260)
at org.richfaces.model.ArrangeableModel.arrange(ArrangeableModel.java:214)
at org.richfaces.component.UIDataTableBase.createExtendedDataModel(UIDataTableBase.java:170)
at org.richfaces.component.UIDataAdaptor.getExtendedDataModel(UIDataAdaptor.java:560)
at org.richfaces.component.UIDataAdaptor.getRowCount(UIDataAdaptor.java:607)
at org.richfaces.renderkit.AbstractTableRenderer.encodeTableRows(AbstractTableRenderer.java:147)
at org.richfaces.renderkit.AbstractTableRenderer.doEncodeChildren(AbstractTableRenderer.java:209)
at org.richfaces.renderkit.RendererBase.encodeChildren(RendererBase.java:157)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:849)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1643)
at org.richfaces.renderkit.DataTableRenderer.encodeRow(DataTableRenderer.java:183)
at org.richfaces.renderkit.AbstractRowsRenderer.process(AbstractRowsRenderer.java:62)
at org.ajax4jsf.model.SequenceDataModel.walk(SequenceDataModel.java:109)
at org.richfaces.component.UIDataAdaptor.walk(UIDataAdaptor.java:918)
at org.richfaces.renderkit.AbstractRowsRenderer.encodeRows(AbstractRowsRenderer.java:72)
at org.richfaces.renderkit.AbstractTableRenderer.encodeRows(AbstractTableRenderer.java:102)
at org.richfaces.renderkit.AbstractRowsRenderer.processRows(AbstractRowsRenderer.java:80)
at org.richfaces.renderkit.AbstractTableRenderer.encodeTableRows(AbstractTableRenderer.java:159)
at org.richfaces.renderkit.AbstractTableRenderer.doEncodeChildren(AbstractTableRenderer.java:209)
at org.richfaces.renderkit.RendererBase.encodeChildren(RendererBase.java:157)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:849)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1643)
at org.richfaces.context.ExtendedPartialViewContextImpl$RenderVisitCallback.visit(ExtendedPartialViewContextImpl.java:517)
at org.richfaces.context.BaseExtendedVisitContext.invokeVisitCallback(BaseExtendedVisitContext.java:480)
at org.richfaces.component.UIDataAdaptor.visitTree(UIDataAdaptor.java:1343)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1487)
at javax.faces.component.UIForm.visitTree(UIForm.java:331)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1487)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1487)
at javax.faces.component.UIComponent.visitTree(UIComponent.java:1487)
at org.richfaces.context.ExtendedPartialViewContextImpl.processPartialRenderPhase(ExtendedPartialViewContextImpl.java:284)
at org.richfaces.context.ExtendedPartialViewContextImpl.processPartial(ExtendedPartialViewContextImpl.java:206)
at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:968)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1643)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:378)
at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:127)
at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:269)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:117)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:135)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:309)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.richfaces.tests.metamer.TestIdentityFilter.doFilter(TestIdentityFilter.java:93)
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:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:636)
Jan 12, 2011 2:28:15 PM org.richfaces.context.ExtendedPartialViewContextImpl$RenderVisitCallback logException
SEVERE: null
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 8 months
[JBoss JIRA] Created: (RF-9559) Autocomplete without button - input field doesn't fit whole component
by Lukas Fryc (JIRA)
Autocomplete without button - input field doesn't fit whole component
---------------------------------------------------------------------
Key: RF-9559
URL: https://jira.jboss.org/browse/RF-9559
Project: RichFaces
Issue Type: Bug
Security Level: Public (Everyone can see)
Affects Versions: 4.0.0.Milestone3
Environment: RichFaces 4.0.0-SNAPSHOT r.19668
Mojarra 2.0.2-FCS
Chrome 6.0.472.62, Firefox 3.6.11 @ Linux i686
Reporter: Lukas Fryc
Priority: Minor
Attachments: Screenshot-2.png, Screenshot.png
It is also visible in richfaces-showcase and especially using Webkit-based browsers because of border around the input field (see attached Screenshot.png).
But you can also see it in Firefox, when typing custom sample text, which overflows the input field size, the text is then wrapped before the actual component end (Screenshot-2.png).
Everything is then ok with showButton=true.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 8 months
[JBoss JIRA] Created: (RF-10271) Metamer can't start on Tomcat6 without validation-api and impl on classpath
by Lukas Fryc (JIRA)
Metamer can't start on Tomcat6 without validation-api and impl on classpath
---------------------------------------------------------------------------
Key: RF-10271
URL: https://issues.jboss.org/browse/RF-10271
Project: RichFaces
Issue Type: Bug
Security Level: Public (Everyone can see)
Affects Versions: 4.0.0.Milestone5
Environment: RichFaces 4.0.0-SNAPSHOT r.21137
Metamer 4.0.0-SNAPSHOT r.21133
Mojarra 2.0.3-FCS
Apache Tomcat 6.0.29
OpenJDK Runtime Environment 1.6.0_20-b20 @ Linux
Reporter: Lukas Fryc
INFO: Starting service Catalina
Jan 21, 2011 1:09:35 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.29
Jan 21, 2011 1:09:36 PM com.sun.faces.config.ConfigureListener contextInitialized
INFO: Initializing Mojarra 2.0.3 (FCS b03) for context '/metamer'
Jan 21, 2011 1:09:38 PM com.sun.faces.config.ConfigManager initialize
INFO: Unsanitized stacktrace from failed start...
javax.faces.FacesException: Class for component not found
at org.richfaces.javascript.ClientServiceConfigParser.parse(ClientServiceConfigParser.java:71)
at org.richfaces.javascript.ClientServiceConfigParser.parseConfig(ClientServiceConfigParser.java:45)
at org.richfaces.application.ValidatorModule.createClientScriptService(ValidatorModule.java:71)
at org.richfaces.application.ValidatorModule.configure(ValidatorModule.java:65)
at org.richfaces.application.ServicesFactoryImpl.init(ServicesFactoryImpl.java:28)
at org.richfaces.application.InitializationListener.createFactory(InitializationListener.java:136)
at org.richfaces.application.InitializationListener.onStart(InitializationListener.java:110)
at org.richfaces.application.InitializationListener.processEvent(InitializationListener.java:152)
at javax.faces.event.SystemEvent.processListener(SystemEvent.java:102)
at com.sun.faces.application.ApplicationImpl.processListeners(ApplicationImpl.java:2040)
at com.sun.faces.application.ApplicationImpl.invokeListenersFor(ApplicationImpl.java:2016)
at com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:298)
at com.sun.faces.config.ConfigManager.publishPostConfigEvent(ConfigManager.java:598)
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:341)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:220)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
at org.apache.catalina.core.StandardService.start(StandardService.java:519)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: java.lang.ClassNotFoundException: javax.validation.constraints.NotNull
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
at org.richfaces.javascript.ClientServiceConfigParser.parse(ClientServiceConfigParser.java:58)
... 29 more
Jan 21, 2011 1:09:38 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener
com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! javax.validation.constraints.NotNull
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:351)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:220)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
at org.apache.catalina.core.StandardService.start(StandardService.java:519)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: java.lang.ClassNotFoundException: javax.validation.constraints.NotNull
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
at org.richfaces.javascript.ClientServiceConfigParser.parse(ClientServiceConfigParser.java:58)
at org.richfaces.javascript.ClientServiceConfigParser.parseConfig(ClientServiceConfigParser.java:45)
at org.richfaces.application.ValidatorModule.createClientScriptService(ValidatorModule.java:71)
at org.richfaces.application.ValidatorModule.configure(ValidatorModule.java:65)
at org.richfaces.application.ServicesFactoryImpl.init(ServicesFactoryImpl.java:28)
at org.richfaces.application.InitializationListener.createFactory(InitializationListener.java:136)
at org.richfaces.application.InitializationListener.onStart(InitializationListener.java:110)
at org.richfaces.application.InitializationListener.processEvent(InitializationListener.java:152)
at javax.faces.event.SystemEvent.processListener(SystemEvent.java:102)
at com.sun.faces.application.ApplicationImpl.processListeners(ApplicationImpl.java:2040)
at com.sun.faces.application.ApplicationImpl.invokeListenersFor(ApplicationImpl.java:2016)
at com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:298)
at com.sun.faces.config.ConfigManager.publishPostConfigEvent(ConfigManager.java:598)
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:341)
... 16 more
Jan 21, 2011 1:09:38 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Jan 21, 2011 1:09:38 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/metamer] startup failed due to previous errors
Jan 21, 2011 1:09:39 PM com.sun.faces.config.ConfigureListener contextDestroyed
SEVERE: Unexpected exception when attempting to tear down the Mojarra runtime
java.lang.IllegalStateException: Application was not properly initialized at startup, could not find Factory: javax.faces.application.ApplicationFactory
at javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:800)
at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:302)
at com.sun.faces.config.InitFacesContext.getApplication(InitFacesContext.java:104)
at com.sun.faces.config.ConfigureListener.contextDestroyed(ConfigureListener.java:312)
at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4174)
at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4778)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4675)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
at org.apache.catalina.core.StandardService.start(StandardService.java:519)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Jan 21, 2011 1:09:39 PM org.apache.catalina.loader.WebappClassLoader clearThreadLocalMap
SEVERE: The web application [/metamer] created a ThreadLocal with key of type [null] (value [com.sun.faces.util.Util$1@27059a9a]) and a value of type [java.util.HashMap] (value [{com.sun.faces.patternCache={ = }}]) but failed to remove it when the web application was stopped. This is very likely to create a memory leak.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 8 months