I am migrating a really old application from jboss 6 to wildfly 19. It bases on EJB2 and JSF1.2 - MyFaces. Application is deployed, but when I try to reach one of JSP page (wrapped with JSF) then I am getting an error, which tells me nothing. Is there somebody who could know what does it mean? Thanks in advance for help.
[javax.faces.webapp._ErrorPageWriter] (default task-1) An exception occurred: javax.faces.FacesException: javax.servlet.jsp.JspException: a minimum and / or a maximum have to be specified
at org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:347)
at org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:486)
at org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:337)
at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:187)
at org.apache.myfaces.webapp.MyFacesServlet.service(MyFacesServlet.java:122)
at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
at io.opentracing.contrib.jaxrs2.server.SpanFinishingFilter.doFilter(SpanFinishingFilter.java:52)
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:374)
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at myoldapplication.package.web.filter.ExtranetFilter.doFilter(ExtranetFilter.java:76)
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at myoldapplication.package.web.filter.PerformanceFilter.doFilter(PerformanceFilter.java:33)
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at myoldapplication.package.web.filter.ForceCharacterEncodingAndContentTypeFilter.doFilter(ForceCharacterEncodingAndContentTypeFilter.java:69)
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at myoldapplication.package.web.filter.ChineseWallsFilter.doFilter(ChineseWallsFilter.java:33)
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
at org.wildfly.elytron.web.undertow.server.ElytronRunAsHandler.lambda$handleRequest$1(ElytronRunAsHandler.java:68)
at org.wildfly.security.auth.server.FlexibleIdentityAssociation.runAsFunctionEx(FlexibleIdentityAssociation.java:103)
at org.wildfly.security.auth.server.Scoped.runAsFunctionEx(Scoped.java:161)
at org.wildfly.security.auth.server.Scoped.runAs(Scoped.java:73)
at org.wildfly.elytron.web.undertow.server.ElytronRunAsHandler.handleRequest(ElytronRunAsHandler.java:67)
at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:132)
at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
at io.undertow.server.handlers.DisableCacheHandler.handleRequest(DisableCacheHandler.java:33)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.security.handlers.AuthenticationConstraintHandler.handleRequest(AuthenticationConstraintHandler.java:53)
at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
at io.undertow.servlet.handlers.security.ServletSecurityConstraintHandler.handleRequest(ServletSecurityConstraintHandler.java:59)
at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
at org.wildfly.elytron.web.undertow.server.servlet.CleanUpHandler.handleRequest(CleanUpHandler.java:38)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at org.wildfly.extension.undertow.deployment.GlobalRequestControllerHandler.handleRequest(GlobalRequestControllerHandler.java:68)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:269)
at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:78)
at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:133)
at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:130)
at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1541)
at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1541)
at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1541)
at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1541)
at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:249)
at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:78)
at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:99)
at io.undertow.server.Connectors.executeRootHandler(Connectors.java:376)
at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:830)
at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
at java.lang.Thread.run(Thread.java:748)
Caused by: javax.servlet.ServletException: javax.servlet.jsp.JspException: a minimum and / or a maximum have to be specified
at org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:889)
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:818)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspService(BiorderFilter_jsp.java:316)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:590)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:433)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:403)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:347)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:590)
at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:81)
at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
at io.undertow.jsp.JspFileHandler.handleRequest(JspFileHandler.java:32)
at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
at org.wildfly.elytron.web.undertow.server.ElytronRunAsHandler.lambda$handleRequest$1(ElytronRunAsHandler.java:68)
at org.wildfly.security.auth.server.FlexibleIdentityAssociation.runAsFunctionEx(FlexibleIdentityAssociation.java:103)
at org.wildfly.security.auth.server.Scoped.runAsFunctionEx(Scoped.java:161)
at org.wildfly.security.auth.server.Scoped.runAs(Scoped.java:73)
at org.wildfly.elytron.web.undertow.server.ElytronRunAsHandler.handleRequest(ElytronRunAsHandler.java:67)
at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:251)
at io.undertow.servlet.handlers.ServletInitialHandler.dispatchToPath(ServletInitialHandler.java:186)
at io.undertow.servlet.spec.RequestDispatcherImpl.forwardImpl(RequestDispatcherImpl.java:227)
at io.undertow.servlet.spec.RequestDispatcherImpl.forwardImplSetup(RequestDispatcherImpl.java:149)
at io.undertow.servlet.spec.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:111)
at org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:341)
... 71 more
Caused by: javax.servlet.jsp.JspException: a minimum and / or a maximum have to be specified
at org.apache.myfaces.taglib.core.GenericMinMaxValidatorTag.createValidator(GenericMinMaxValidatorTag.java:70)
at org.apache.myfaces.taglib.core.ValidateLongRangeTag.createValidator(ValidateLongRangeTag.java:43)
at javax.faces.webapp.ValidatorELTag.doStartTag(ValidatorELTag.java:50)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_f_005fvalidateLongRange_005f0(BiorderFilter_jsp.java:3794)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_h_005finputText_005f0(BiorderFilter_jsp.java:3760)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_h_005fpanelGrid_005f0(BiorderFilter_jsp.java:3610)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_h_005fform_005f2(BiorderFilter_jsp.java:3545)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_t_005fdocumentBody_005f1(BiorderFilter_jsp.java:777)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_t_005fhtmlTag_005f1(BiorderFilter_jsp.java:693)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_f_005fview_005f0(BiorderFilter_jsp.java:359)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspService(BiorderFilter_jsp.java:301)
... 97 more
When getting a stack trace, always look at the bottommost root cause. The answer is usually right there.
Caused by: javax.servlet.jsp.JspException: a minimum and / or a maximum have to be specified
at org.apache.myfaces.taglib.core.GenericMinMaxValidatorTag.createValidator(GenericMinMaxValidatorTag.java:70)
at org.apache.myfaces.taglib.core.ValidateLongRangeTag.createValidator(ValidateLongRangeTag.java:43)
at javax.faces.webapp.ValidatorELTag.doStartTag(ValidatorELTag.java:50)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_f_005fvalidateLongRange_005f0(BiorderFilter_jsp.java:3794)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_h_005finputText_005f0(BiorderFilter_jsp.java:3760)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_h_005fpanelGrid_005f0(BiorderFilter_jsp.java:3610)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_h_005fform_005f2(BiorderFilter_jsp.java:3545)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_t_005fdocumentBody_005f1(BiorderFilter_jsp.java:777)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_t_005fhtmlTag_005f1(BiorderFilter_jsp.java:693)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspx_meth_f_005fview_005f0(BiorderFilter_jsp.java:359)
at org.apache.jsp.pages.order.BiorderFilter_jsp._jspService(BiorderFilter_jsp.java:301)
... 97 more
Carefully read out aloud the class/method names from bottom to top until some parts become sensible:
BiorderFilter.jsp
file is being serviced <f:view>
tag <t:html>
tag <t:documentBody>
tag <h:form>
tag <h:panelGrid>
tag <h:inputText>
tag <f:validateLongRange>
tag ValidateLongRangeTag
GenericMinMaxValidatorTag
So most likely you have a BiorderFilter.jsp
file with a <f:validateLongRange>
tag which doesn't have a minimum
and / or a maximum
attribute specified.
<h:inputText ...>
<f:validateLongRange />
</h:inputText>
Just specify at least one of those attribues with a non- null
value and this problem shall disappear. Eg:
<h:inputText ...>
<f:validateLongRange minimum="0" />
</h:inputText>
Or probably the whole validator is unnecessary for the specific input, you'd best just remove it. It's known that some developers use this way in order to ensure that the inputted value is a Long
instead of eg Double
. But for that a Converter
should be used instead of a Validator
, or simply a strictly typed <h:inputText value="#{bean.value}">
where value
is of type Long
so that JSF does the automatic conversion by itself.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.