For MyFAces' custom validators (like ISBNValidator)
you need commons-validator.jar
(in MyFaces example there is a nightly build
of that file; nightly because of isbn rules are for now not *released* by Jakarta Commons)
also you need jakarta-oro.jar (RegularExpression validator needs that)
HTH, Matthias
Adrian Hine wrote:
Thank you Hermond for your help,
I had just came to that realisation when your mail came. I've now put the filter definition in the correct place but now get another error when I run the app.
Any help greatly appreciated
Error:
[#|2005-03-26T13:04:09.828+0000|SEVERE|sun-appserver-pe8.0.0_01|javax.en terprise.system.container.web|_ThreadID=11;|WebModule[/time5]org.apache. myfaces.custom.isbnvalidator.ISBNValidator
javax.faces.FacesException: Can't instantiate class: 'org.apache.myfaces.custom.isbnvalidator.ISBNValidator'.
at com.sun.faces.application.ApplicationImpl.newThing(ApplicationImpl.java: 728)
at com.sun.faces.application.ApplicationImpl.createValidator(ApplicationImp l.java:635)
at com.sun.faces.config.ConfigureListener.verifyObjects(ConfigureListener.j ava:1140)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListe ner.java:342)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.j ava:3659)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4120 )
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.ja va:830)
at org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:128 )
at org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerB ase.java:150)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:812)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:580)
at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:947)
at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:729)
at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(We bModuleDeployEventListener.java:148)
at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(We bModuleDeployEventListener.java:226)
at com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeployE ventListener(AdminEventMulticaster.java:488)
at com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeployE vent(AdminEventMulticaster.java:475)
at com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminE ventMulticaster.java:302)
at com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(Admi nEventMulticaster.java:107)
at com.sun.enterprise.admin.server.core.mbean.config.ManagedServerInstance. multicastEvent(ManagedServerInstance.java:3880)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav a:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Impl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.enterprise.admin.server.core.jmx.Introspector.invokeMethodOn(Int rospector.java:181)
at com.sun.enterprise.admin.server.core.mbean.config.AdminBase.invoke(Admin Base.java:86)
at com.sun.enterprise.admin.server.core.mbean.config.ConfigMBeanBase.invoke (ConfigMBeanBase.java:680)
at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.j ava:221)
at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:228)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBea nServerInterceptor.java:823)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:792)
at sun.reflect.GeneratedMethodAccessor93.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Impl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:54 )
at $Proxy1.invoke(Unknown Source)
at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(Sunone Interceptor.java:282)
at com.sun.enterprise.deployment.phasing.DeploymentService.multicastEvent(D eploymentService.java:341)
at com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStartEv ent(ServerDeploymentTarget.java:284)
at com.sun.enterprise.deployment.phasing.StartPhase.runPhase(StartPhase.jav a:115)
at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(Deplo ymentPhase.java:74)
at com.sun.enterprise.deployment.phasing.DeploymentService.executePhases(De ploymentService.java:233)
at com.sun.enterprise.deployment.phasing.DeploymentService.deploy(Deploymen tService.java:150)
at com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.deploy(Applicati onsConfigMBean.java:275)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav a:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Impl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.j ava:287)
at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.j ava:280)
at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.j ava:221)
at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:228)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBea nServerInterceptor.java:823)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:792)
at sun.reflect.GeneratedMethodAccessor93.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Impl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:54 )
at $Proxy1.invoke(Unknown Source)
at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(Sunone Interceptor.java:282)
at com.sun.enterprise.admin.jmx.remote.server.callers.InvokeCaller.call(Inv okeCaller.java:38)
at com.sun.enterprise.admin.jmx.remote.server.MBeanServerRequestHandler.han dle(MBeanServerRequestHandler.java:92)
at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorSer vlet.processRequest(RemoteJmxConnectorServlet.java:69)
at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorSer vlet.doPost(RemoteJmxConnectorServlet.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:768)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:861)
at sun.reflect.GeneratedMethodAccessor91.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Impl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:246)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:268)
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.jav a:162)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:236)
at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFi lterChain.java:55)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterC hain.java:145)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:141)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv e.java:220)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:109)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5 22)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon textValve.java:214)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv e.java:168)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:109)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authenticator Base.java:536)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5 22)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java :144)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:109)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java :133)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:539 )
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at com.sun.enterprise.webservice.EjbWebServiceValve.invoke(EjbWebServiceVal ve.java:134)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at com.sun.enterprise.security.web.SingleSignOn.invoke(SingleSignOn.java:25 4)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at com.sun.enterprise.web.VirtualServerValve.invoke(VirtualServerValve.java :209)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5 22)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve. java:114)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:109)
at com.sun.enterprise.web.VirtualServerMappingValve.invoke(VirtualServerMap pingValve.java:166)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5 22)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:936)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:165)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:68 3)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC onnection(Http11Protocol.java:604)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:54 2)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool .java:647)
at java.lang.Thread.run(Thread.java:534)
|#]
[#|2005-03-26T13:04:09.828+0000|SEVERE|sun-appserver-pe8.0.0_01|com.sun. faces.config.ConfigureListener|_ThreadID=11;|One or more confgured application objects could not be created. Check your web application logs for details.|#]
[#|2005-03-26T13:04:09.828+0000|SEVERE|sun-appserver-pe8.0.0_01|javax.en terprise.system.container.web|_ThreadID=11;|WebModule[/time5]Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener
javax.faces.FacesException: One or more confgured application objects could not be created. Check your web application logs for details.
at com.sun.faces.config.ConfigureListener.verifyObjects(ConfigureListener.j ava:1162)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListe ner.java:342)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.j ava:3659)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4120 )
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.ja va:830)
at org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:128 )
at org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerB ase.java:150)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:812)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:580)
at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:947)
at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:729)
at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(We bModuleDeployEventListener.java:148)
at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(We bModuleDeployEventListener.java:226)
at com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeployE ventListener(AdminEventMulticaster.java:488)
at com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeployE vent(AdminEventMulticaster.java:475)
at com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminE ventMulticaster.java:302)
at com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(Admi nEventMulticaster.java:107)
at com.sun.enterprise.admin.server.core.mbean.config.ManagedServerInstance. multicastEvent(ManagedServerInstance.java:3880)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav a:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Impl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.enterprise.admin.server.core.jmx.Introspector.invokeMethodOn(Int rospector.java:181)
at com.sun.enterprise.admin.server.core.mbean.config.AdminBase.invoke(Admin Base.java:86)
at com.sun.enterprise.admin.server.core.mbean.config.ConfigMBeanBase.invoke (ConfigMBeanBase.java:680)
at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.j ava:221)
at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:228)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBea nServerInterceptor.java:823)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:792)
at sun.reflect.GeneratedMethodAccessor93.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Impl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:54 )
at $Proxy1.invoke(Unknown Source)
at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(Sunone Interceptor.java:282)
at com.sun.enterprise.deployment.phasing.DeploymentService.multicastEvent(D eploymentService.java:341)
at com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStartEv ent(ServerDeploymentTarget.java:284)
at com.sun.enterprise.deployment.phasing.StartPhase.runPhase(StartPhase.jav a:115)
at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(Deplo ymentPhase.java:74)
at com.sun.enterprise.deployment.phasing.DeploymentService.executePhases(De ploymentService.java:233)
at com.sun.enterprise.deployment.phasing.DeploymentService.deploy(Deploymen tService.java:150)
at com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.deploy(Applicati onsConfigMBean.java:275)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav a:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Impl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.j ava:287)
at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.j ava:280)
at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.j ava:221)
at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:228)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBea nServerInterceptor.java:823)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:792)
at sun.reflect.GeneratedMethodAccessor93.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Impl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:54 )
at $Proxy1.invoke(Unknown Source)
at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(Sunone Interceptor.java:282)
at com.sun.enterprise.admin.jmx.remote.server.callers.InvokeCaller.call(Inv okeCaller.java:38)
at com.sun.enterprise.admin.jmx.remote.server.MBeanServerRequestHandler.han dle(MBeanServerRequestHandler.java:92)
at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorSer vlet.processRequest(RemoteJmxConnectorServlet.java:69)
at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorSer vlet.doPost(RemoteJmxConnectorServlet.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:768)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:861)
at sun.reflect.GeneratedMethodAccessor91.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Impl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:246)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:268)
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.jav a:162)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:236)
at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFi lterChain.java:55)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterC hain.java:145)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:141)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv e.java:220)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:109)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5 22)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCon textValve.java:214)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv e.java:168)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:109)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authenticator Base.java:536)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5 22)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java :144)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:109)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java :133)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:539 )
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at com.sun.enterprise.webservice.EjbWebServiceValve.invoke(EjbWebServiceVal ve.java:134)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at com.sun.enterprise.security.web.SingleSignOn.invoke(SingleSignOn.java:25 4)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at com.sun.enterprise.web.VirtualServerValve.invoke(VirtualServerValve.java :209)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5 22)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve. java:114)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:109)
at com.sun.enterprise.web.VirtualServerMappingValve.invoke(VirtualServerMap pingValve.java:166)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:107)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5 22)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:936)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:165)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:68 3)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC onnection(Http11Protocol.java:604)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:54 2)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool .java:647)
at java.lang.Thread.run(Thread.java:534)
Web.xml file:
<?xml version="1.0"?>
<!--
Copyright 2002, 2003 Sun Microsystems, Inc. All Rights Reserved.
-->
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/navigation.xml,/WEB-INF/managed-beans.xml</param-v
alue>
</context-param>
<context-param>
<param-name>com.sun.faces.validateXml</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>com.sun.faces.verifyObjects</param-name>
<param-value>true</param-value>
</context-param>
<!-- Extensions Filter -->
<filter>
<filter-name>extensionsFilter</filter-name>
<filter-class>org.apache.myfaces.component.html.util.ExtensionsFilter</f
ilter-class>
<init-param>
<param-name>uploadMaxFileSize</param-name>
<param-value>100m</param-value>
<description>Set the size limit for uploaded files.
Format: 10 - 10 bytes
10k - 10 KB
10m - 10 MB
1g - 1 GB
</description>
</init-param>
<init-param>
<param-name>uploadThresholdSize</param-name>
<param-value>100k</param-value>
<description>Set the threshold size - files
below this limit are stored in memory, files above
this limit are stored on disk.
Format: 10 - 10 bytes
10k - 10 KB
10m - 10 MB
1g - 1 GB
</description>
</init-param>
<!-- <init-param>
<param-name>uploadRepositoryPath</param-name>
<param-value>/temp</param-value>
<description>Set the path where the intermediary files will be stored.
</description>
</init-param>-->
</filter>
<!-- Filter Mappings -->
<filter-mapping>
<filter-name>extensionsFilter</filter-name>
<url-pattern>*.jsf</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>extensionsFilter</filter-name>
<url-pattern>/faces/*</url-pattern>
</filter-mapping>
<!-- Faces Servlet -->
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup> 1 </load-on-startup>
</servlet>
<!-- Error Handler Servlet -->
<servlet>
<servlet-name>ExceptionHandlerServlet</servlet-name>
<servlet-class>com.sun.errorhandler.ExceptionHandler</servlet-class>
<init-param>
<param-name>errorHost</param-name>
<param-value>localhost</param-value>
</init-param>
<init-param>
<param-name>errorPort</param-name>
<param-value>4444</param-value>
</init-param>
</servlet>
<!-- Faces Servlet Mapping -->
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
<!-- <url-pattern>*.faces</url-pattern> -->
</servlet-mapping>
<!-- Error Handler Servlet Mapping -->
<servlet-mapping>
<servlet-name>ExceptionHandlerServlet</servlet-name>
<url-pattern>/error/ExceptionHandler</url-pattern>
</servlet-mapping>
<!-- Welcome File List -->
<welcome-file-list>
<welcome-file>faces/Page1.jsp</welcome-file>
</welcome-file-list>
<!-- Catch ServletException -->
<error-page>
<exception-type>javax.servlet.ServletException</exception-type>
<location>/error/ExceptionHandler</location>
</error-page>
<!-- Catch IOException -->
<error-page>
<exception-type>java.io.IOException</exception-type>
<location>/error/ExceptionHandler</location>
</error-page>
<!-- Catch FacesException -->
<error-page>
<exception-type>javax.faces.FacesException</exception-type>
<location>/error/ExceptionHandler</location>
</error-page>
</web-app>
________________________________
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: 30 March 2005 14:10
To: [email protected]
Subject: RE: Myfaces Extension Filter
Hi
The error message that you are getting indicates that you have misplaced your filter definition. The web.xml file is bound by a dtd, meaning that things have to occur in certain order. Look at the MyFaces sample applications, and the web.xml files that you find there.
Hermod
-----Original Message----- From: Adrian Hine [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 30, 2005 11:35 AM To: [email protected] Subject: Myfaces Extension Filter
Could someone please help me with my problem setting up using myfaces extensions. I'm trying to use the myfaces inputCalendar component and am trying to use it in the Sun Studio Creator environment. I see from previous mails that I should set up an extensions filter in web.xml. However I'm getting an error message when running the app suggesting the filter isn't setup correctly (see below for error, web.xml & the jsp page). I've taken the filter from the myfaces-examples app.
Also I'm not entirely clear on which jars are required, I'm only including myfaces.jar and myfaces-extensions.jar in the apps WEB-INF/lib directory. Are there any other I need to use?
Many Thanks,
Adrian
ERROR MESSAGE:
[#|2005-03-26T09:40:20.359+0000|SEVERE|sun-appserver-pe8.0.0_01|javax.en
terprise.system.tools.deployment|_ThreadID=11;|Invalid Deployment
Descriptors in archive c:\Documents and Settings\Administrator\My
Documents\Creator\Projects\Time3\build in deployment descriptor file
WEB-INF/web.xml
Error at line 132 Column 11 -- The content of element type "web-app" must match "(icon?,display-name?,description?,distributable?,context-param*,filter* ,filter-mapping*,listener*,servlet*,servlet-mapping*,session-config?,mim e-mapping*,welcome-file-list?,error-page*,taglib*,resource-env-ref*,reso urce-ref*,security-constraint*,login-config?,security-role*,env-entry*,e jb-ref*,ejb-local-ref*)". |#]
[#|2005-03-26T09:40:20.359+0000|SEVERE|sun-appserver-pe8.0.0_01|javax.en terprise.system.tools.deployment|_ThreadID=11;|The content of element type "web-app" must match "(icon?,display-name?,description?,distributable?,context-param*,filter* ,filter-mapping*,listener*,servlet*,servlet-mapping*,session-config?,mim e-mapping*,welcome-file-list?,error-page*,taglib*,resource-env-ref*,reso urce-ref*,security-constraint*,login-config?,security-role*,env-entry*,e jb-ref*,ejb-local-ref*)".|#]
[#|2005-03-26T09:40:20.359+0000|WARNING|sun-appserver-pe8.0.0_01|javax.e nterprise.system.tools.deployment|_ThreadID=11;|Deployment Error
com.sun.enterprise.deployment.backend.IASDeploymentException: Error loading deployment descriptors for _time3 Line 132 Column 11 -- The content of element type "web-app" must match "(icon?,display-name?,description?,distributable?,context-param*,filter* ,filter-mapping*,listener*,servlet*,servlet-mapping*,session-config?,mim e-mapping*,welcome-file-list?,error-page*,taglib*,resource-env-ref*,reso urce-ref*,security-constraint*,login-config?,security-role*,env-entry*,e jb-ref*,ejb-local-ref*)".
at com.sun.enterprise.deployment.backend.Deployer.loadDescriptors(Deployer. java:289)
etc....
WEB.XML FILE
<?xml version="1.0"?>
<!--
Copyright 2002, 2003 Sun Microsystems, Inc. All Rights Reserved.
-->
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/navigation.xml,/WEB-INF/managed-beans.xml</param-v alue>
</context-param>
<context-param>
<param-name>com.sun.faces.validateXml</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>com.sun.faces.verifyObjects</param-name>
<param-value>true</param-value>
</context-param>
<!-- Faces Servlet -->
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup> 1 </load-on-startup>
</servlet>
<!-- Error Handler Servlet -->
<servlet>
<servlet-name>ExceptionHandlerServlet</servlet-name>
<servlet-class>com.sun.errorhandler.ExceptionHandler</servlet-class>
<init-param>
<param-name>errorHost</param-name>
<param-value>localhost</param-value>
</init-param>
<init-param>
<param-name>errorPort</param-name>
<param-value>4444</param-value>
</init-param>
</servlet>
<!-- Faces Servlet Mapping -->
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
<!-- <url-pattern>*.faces</url-pattern> -->
</servlet-mapping>
<!-- Error Handler Servlet Mapping -->
<servlet-mapping>
<servlet-name>ExceptionHandlerServlet</servlet-name>
<url-pattern>/error/ExceptionHandler</url-pattern>
</servlet-mapping>
<!-- Welcome File List -->
<welcome-file-list>
<welcome-file>faces/Page1.jsp</welcome-file>
</welcome-file-list>
<!-- Catch ServletException -->
<error-page>
<exception-type>javax.servlet.ServletException</exception-type>
<location>/error/ExceptionHandler</location>
</error-page>
<!-- Catch IOException -->
<error-page>
<exception-type>java.io.IOException</exception-type>
<location>/error/ExceptionHandler</location>
</error-page>
<!-- Catch FacesException -->
<error-page>
<exception-type>javax.faces.FacesException</exception-type>
<location>/error/ExceptionHandler</location>
</error-page>
<!-- Extensions Filter -->
<filter>
<filter-name>extensionsFilter</filter-name>
<filter-class>
org.apache.myfaces.component.html.util.ExtensionsFilter
</filter-class>
<init-param>
<param-name>uploadMaxFileSize</param-name>
<param-value>100m</param-value>
<description>
Set the size limit for uploaded files.
Format: 10 - 10 bytes 10k - 10 KB 10m - 10 MB 1g - 1 GB
</description>
</init-param>
<init-param>
<param-name>uploadThresholdSize</param-name>
<param-value>100k</param-value>
<description>
Set the threshold size - files below this limit are
stored in memory, files above this limit are stored on
disk.
Format: 10 - 10 bytes 10k - 10 KB 10m - 10 MB 1g - 1 GB
</description>
</init-param>
<!-- <init-param>
<param-name>uploadRepositoryPath</param-name>
<param-value>/temp</param-value>
<description>Set the path where the intermediary files will be stored.
</description>
</init-param>-->
</filter>
<filter-mapping>
<filter-name>extensionsFilter</filter-name>
<url-pattern>*.jsf</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>extensionsFilter</filter-name>
<url-pattern>/faces/*</url-pattern>
</filter-mapping>
</web-app>
MY JSP PAGE:
<?xml version="1.0" encoding="UTF-8"?>
<jsp:root version="1.2" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:x="http://myfaces.apache.org/extensions">
<jsp:directive.page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"/>
<jsp:text><![CDATA[
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
]]></jsp:text>
<f:view>
<html lang="en-GB" xml:lang="en-GB">
<head>
<meta content="no-cache" http-equiv="Cache-Control"/>
<meta content="no-cache" http-equiv="Pragma"/>
<title>Page1 Title</title>
<link href="resources/stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body style="-rave-layout: grid">
<h:form binding="#{Page1.form1}" id="form1">
<h:outputText binding="#{Page1.outputText1}" id="outputText1" style="height: 19px; left: 72px; top: 96px; position: absolute; width: 144px" value="Test Page"/>
<x:inputCalendar id="calendar1" style="left: 700px; top: 96px; position: absolute" value="#{Page1.calendarDate}"/>
</h:form>
</body>
</html>
</f:view>
</jsp:root>
This e-mail is sent by the above named individual, a
representative of MRAG Ltd. The contents of the message represent the views of the individual
and may not necessarily reflect those of the company. The above information transmitted,
is intended only for the person or entity to which it is addressed and may contain
confidential and/or privileged
material. Any review, retransmission, dissemination or other use
of, or taking of any action
in reliance upon, this information by persons or entities other
than the intended recipient is prohibited. If you received this in error, please contact the
sender and delete the material from any computer. MRAG Ltd reserves the right to
monitor outgoing and incoming e-mails and other telecommunications on its e-mail and
telecommunications systems.
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
This email with attachments is solely for the use of the individual or
entity to whom it is addressed. Please also be aware that the DnB NOR
Group
cannot accept any payment orders or other legally binding correspondence
with
customers as a part of an email.
This email message has been virus checked by the virus programs used in the DnB NOR Group.
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

