UnavailableException

Hello,
I got the following error when I run my application, here is my environments, I used tomcat 5.0.18, j2se1.4.3, struts 2.0.
Here is the snippet of code
javax.servlet.UnavailableException
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:368)
at javax.servlet.GenericServlet.init(GenericServlet.java:211)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1044)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:876)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4017)
cheers

This is my entire stack, if u know plz help me.
2005-07-26 11:52:10 StandardContext[jsp-examples]ContextListener: contextInitialized()
2005-07-26 11:52:10 StandardContext[jsp-examples]SessionListener: contextInitialized()
2005-07-26 11:52:10 StandardContext[servlets-examples]ContextListener: contextInitialized()
2005-07-26 11:52:10 StandardContext[servlets-examples]SessionListener: contextInitialized()
2005-07-26 11:52:12 StandardContext[manager]Manager: init: Associated with Deployer 'localhost'
2005-07-26 11:52:12 StandardContext[manager]Manager: init: Global resources are available
2005-07-26 11:52:12 StandardContext[manager]Manager: list: Listing contexts for virtual host 'localhost'
2005-07-26 11:52:12 StandardContext[manager]Manager: list: Listing contexts for virtual host 'localhost'
2005-07-26 11:52:12 StandardContext[manager]Manager: undeploy: Undeploying web application at '/camopo'
2005-07-26 11:52:12 StandardContext[manager]Manager: Undeploying document base E:\CamoPO\Java\netbeans_poweb\build\web
2005-07-26 11:52:14 StandardContext[manager]Manager: install: Installing context configuration at 'file:/C:/DOCUME~1/rndas/LOCALS~1/Temp/context27520.xml' from 'file:/E:/CamoPO/Java/netbeans_poweb/build/web/'
2005-07-26 11:52:15 StandardContext[camopo]Marking servlet action as unavailable
2005-07-26 11:52:15 StandardContext[camopo]Servlet /camopo threw load() exception
javax.servlet.UnavailableException
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4017)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4337)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4337)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:368)
at javax.servlet.GenericServlet.init(GenericServlet.java:211)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1044)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:876)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4017)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
at org.apache.catalina.core.StandardHostDeployer.addChild(StandardHostDeployer.java:903)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4337)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at org.apache.catalina.core.StandardHostDeployer.addChild(StandardHostDeployer.java:903)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.lang.reflect.Method.invoke(Method.java:324)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:216)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:216)
at org.apache.commons.digester.SetNextRule.end(SetNextRule.java:256)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
at org.apache.commons.digester.Rule.end(Rule.java:276)
at org.apache.catalina.core.StandardHostDeployer.addChild(StandardHostDeployer.java:903)
at org.apache.commons.digester.SetNextRule.end(SetNextRule.java:256)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at org.apache.commons.digester.Digester.endElement(Digester.java:1058)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.commons.digester.Rule.end(Rule.java:276)
at org.apache.commons.digester.Digester.endElement(Digester.java:1058)
at org.apache.catalina.util.CatalinaDigester.endElement(CatalinaDigester.java:76)
at org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:216)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.commons.digester.SetNextRule.end(SetNextRule.java:256)
at org.apache.catalina.util.CatalinaDigester.endElement(CatalinaDigester.java:76)
at org.apache.commons.digester.Rule.end(Rule.java:276)
at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.commons.digester.Digester.endElement(Digester.java:1058)
at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at org.apache.catalina.util.CatalinaDigester.endElement(CatalinaDigester.java:76)
at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentScannerImpl$ContentDispatcher.scanRootElementHook(Unknown Source)
at org.apache.xerces.impl.XMLDocumentScannerImpl$ContentDispatcher.scanRootElementHook(Unknown Source)
at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.impl.XMLDocumentScannerImpl$ContentDispatcher.scanRootElementHook(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.commons.digester.Digester.parse(Digester.java:1567)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.commons.digester.Digester.parse(Digester.java:1567)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:488)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.catalina.core.StandardHost.install(StandardHost.java:863)
at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:488)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:814)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.catalina.core.StandardHost.install(StandardHost.java:863)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:321)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at org.apache.commons.digester.Digester.parse(Digester.java:1567)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:814)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:321)
at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:488)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:168)
at org.apache.catalina.core.StandardHost.install(StandardHost.java:863)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:814)
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.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:321)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:168)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:168)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:534)
2005-07-26 14:30:37 StandardContext[camopo]No Configuration for this context. Initializing.
2005-07-26 14:30:37 StandardContext[camopo]configuring cewolf app..
2005-07-26 14:30:37 StandardContext[camopo]using storage class de.laures.cewolf.storage.TransientSessionStorage
2005-07-26 14:30:37 StandardContext[camopo]using overlibURL /jscript/overlib.js
2005-07-26 14:30:37 StandardContext[camopo]debugging is turned on
2005-07-26 14:30:37 StandardContext[camopo]...done.
2005-07-26 14:30:37 StandardContext[manager]Manager: list: Listing contexts for virtual host 'localhost'
at java.lang.Thread.run(Thread.java:534)
2005-07-26 14:30:37 StandardContext[camopo]No Configuration for this context. Initializing.
2005-07-26 14:30:37 StandardContext[camopo]configuring cewolf app..
2005-07-26 14:30:37 StandardContext[camopo]using storage class de.laures.cewolf.storage.TransientSessionStorage
2005-07-26 14:30:37 StandardContext[camopo]using overlibURL /jscript/overlib.js
2005-07-26 14:30:37 StandardContext[camopo]debugging is turned on
2005-07-26 14:30:37 StandardContext[camopo]...done.
2005-07-26 14:30:37 StandardContext[manager]Manager: list: Listing contexts for virtual host 'localhost'
at java.lang.Thread.run(Thread.java:534)
2005-07-26 11:52:15 StandardContext[camopo]No Configuration for this context. Initializing.
2005-07-26 11:52:15 StandardContext[camopo]configuring cewolf app..
2005-07-26 11:52:15 StandardContext[camopo]using storage class de.laures.cewolf.storage.TransientSessionStorage
2005-07-26 11:52:15 StandardContext[camopo]using overlibURL /jscript/overlib.js
2005-07-26 11:52:15 StandardContext[camopo]debugging is turned on
2005-07-26 11:52:15 StandardContext[camopo]...done.
2005-07-26 11:52:15 StandardContext[manager]Manager: list: Listing contexts for virtual host 'localhost'
2005-07-26 11:52:22 StandardWrapperValve[action]: Servlet action is currently unavailable
2005-07-26 11:52:22 StandardWrapperValve[action]: Servlet action is currently unavailable
2005-07-26 11:52:25 StandardWrapperValve[action]: Servlet action is currently unavailable
2005-07-26 11:54:52 StandardContext[manager]Manager: list: Listing contexts for virtual host 'localhost'
2005-07-26 11:54:52 StandardContext[manager]Manager: list: Listing contexts for virtual host 'localhost'
2005-07-26 11:54:52 StandardContext[manager]Manager: restart: Reloading web application at '/camopo'
2005-07-26 11:54:56 StandardContext[camopo]Marking servlet action as unavailable
2005-07-26 11:54:56 StandardContext[camopo]Servlet /camopo threw load() exception

Similar Messages

  • Javax.servlet.UnavailableException: Cannot load a validator resource from '

    sorry to interrupt.
    i m using Struts1.1/jsp.
    When i comment out the codes for validation plugin the projects works fine
    but when its on its gives the following Exceptions
    Sep 18, 2008 4:17:07 PM org.apache.catalina.core.AprLifecycleListener lifecycleEvent
    INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre1.5.0_13\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\Perl\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Java\jdk1.5.0_15\bin;C:\Program Files\Apache Software Foundation\Tomcat 5.5\bin;C:\Program Files\ant\bin;C:\Program Files\hibernate-3.2\lib;C:\Program Files\hibernate-3.2;C:\Program Files\Microsoft SQL Server\80\Tools\BINN;C:\Program Files\Apache Group\Tomcat 4.1\bin
    Sep 18, 2008 4:17:07 PM org.apache.coyote.http11.Http11BaseProtocol init
    INFO: Initializing Coyote HTTP/1.1 on http-8080
    Sep 18, 2008 4:17:07 PM org.apache.catalina.startup.Catalina load
    INFO: Initialization processed in 2219 ms
    Sep 18, 2008 4:17:07 PM org.apache.catalina.core.StandardService start
    INFO: Starting service Catalina
    Sep 18, 2008 4:17:07 PM org.apache.catalina.core.StandardEngine start
    INFO: Starting Servlet Engine: Apache Tomcat/5.5.23
    Sep 18, 2008 4:17:07 PM org.apache.catalina.core.StandardHost start
    INFO: XML validation disabled
    log4j:WARN No appenders could be found for logger (org.apache.catalina.startup.TldConfig).
    log4j:WARN Please initialize the log4j system properly.
    Sep 18, 2008 4:17:12 PM org.apache.struts.tiles.TilesPlugin initDefinitionsFactory
    INFO: Tiles definition factory loaded for module ''.
    Sep 18, 2008 4:17:12 PM org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validator-rules.xml'
    Sep 18, 2008 4:17:12 PM org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validation.xml'
    Sep 18, 2008 4:17:33 PM org.apache.struts.validator.ValidatorPlugIn init
    SEVERE: Connection timed out: connect
    java.net.ConnectException: Connection timed out: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(Unknown Source)
    at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at sun.net.NetworkClient.doConnect(Unknown Source)
    at sun.net.www.http.HttpClient.openServer(Unknown Source)
    at sun.net.www.http.HttpClient.openServer(Unknown Source)
    at sun.net.www.http.HttpClient.<init>(Unknown Source)
    at sun.net.www.http.HttpClient.New(Unknown Source)
    at sun.net.www.http.HttpClient.New(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startEntity(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startDTDEntity(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.setInputSource(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.commons.digester.Digester.parse(Digester.java:1567)
    at org.apache.commons.validator.ValidatorResources.<init>(ValidatorResources.java:186)
    at org.apache.struts.validator.ValidatorPlugIn.initResources(ValidatorPlugIn.java:233)
    at org.apache.struts.validator.ValidatorPlugIn.init(ValidatorPlugIn.java:164)
    at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:839)
    at org.apache.struts.action.ActionServlet.init(ActionServlet.java:332)
    at javax.servlet.GenericServlet.init(GenericServlet.java:212)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1139)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:966)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3956)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4230)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:448)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
    Sep 18, 2008 4:17:33 PM org.apache.catalina.core.ApplicationContext log
    INFO: Marking servlet strutsController as unavailable
    Sep 18, 2008 4:17:33 PM org.apache.catalina.core.StandardContext loadOnStartup
    SEVERE: Servlet /valid threw load() exception
    javax.servlet.UnavailableException: Cannot load a validator resource from '/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml'
    at org.apache.struts.validator.ValidatorPlugIn.init(ValidatorPlugIn.java:174)
    at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:839)
    at org.apache.struts.action.ActionServlet.init(ActionServlet.java:332)
    at javax.servlet.GenericServlet.init(GenericServlet.java:212)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1139)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:966)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3956)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4230)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:448)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
    Sep 18, 2008 4:17:34 PM org.apache.struts.tiles.TilesPlugin initDefinitionsFactory
    INFO: Tiles definition factory loaded for module ''.
    Sep 18, 2008 4:17:34 PM org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validator-rules.xml'
    Sep 18, 2008 4:17:34 PM org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validation.xml'
    log4j:WARN No appenders could be found for logger (org.apache.commons.digester.Digester.sax).
    log4j:WARN Please initialize the log4j system properly.
    Sep 18, 2008 4:17:38 PM org.apache.coyote.http11.Http11BaseProtocol start
    INFO: Starting Coyote HTTP/1.1 on http-8080
    Sep 18, 2008 4:17:38 PM org.apache.jk.common.ChannelSocket init
    INFO: JK: ajp13 listening on /0.0.0.0:8009
    Sep 18, 2008 4:17:38 PM org.apache.jk.server.JkMain start
    INFO: Jk running ID=0 time=0/109 config=null
    Sep 18, 2008 4:17:38 PM org.apache.catalina.storeconfig.StoreLoader load
    INFO: Find registry server-registry.xml at classpath resource
    Sep 18, 2008 4:17:38 PM org.apache.catalina.startup.Catalina start
    INFO: Server startup in 31312 ms
    Sep 18, 2008 4:17:42 PM org.apache.struts.tiles.TilesRequestProcessor initDefinitionsMapping
    INFO: Tiles definition factory found for request processor ''.
    [Length is less than1]
    Sep 18, 2008 4:17:42 PM org.apache.struts.validator.ValidatorForm validate
    SEVERE: No such validation method: org.apache.struts.validator.FieldChecks.validateMinLength(java.lang.Object, org.apache.commons.validator.ValidatorAction, org.apache.commons.validator.Field, org.apache.struts.action.ActionErrors, javax.servlet.http.HttpServletRequest)
    org.apache.commons.validator.ValidatorException: No such validation method: org.apache.struts.validator.FieldChecks.validateMinLength(java.lang.Object, org.apache.commons.validator.ValidatorAction, org.apache.commons.validator.Field, org.apache.struts.action.ActionErrors, javax.servlet.http.HttpServletRequest)
    at org.apache.commons.validator.ValidatorAction.loadValidationMethod(ValidatorAction.java:603)
    at org.apache.commons.validator.ValidatorAction.executeValidationMethod(ValidatorAction.java:533)
    at org.apache.commons.validator.Field.validateForRule(Field.java:766)
    at org.apache.commons.validator.Field.validate(Field.java:846)
    at org.apache.commons.validator.Form.validate(Form.java:290)
    at org.apache.commons.validator.Validator.validate(Validator.java:354)
    at org.apache.struts.validator.ValidatorForm.validate(ValidatorForm.java:112)
    at org.apache.struts.action.RequestProcessor.processValidate(RequestProcessor.java:921)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:206)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1158)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
    at java.lang.Thread.run(Unknown Source)
    /*********************************************Codes******************************************************/
    my codes are as follows:
    struts-config.xml
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE struts-config PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
    "http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">
    <!--
    This is a blank Struts configuration file with an example
    welcome action/page and other commented sample elements.
    Tiles and the Struts Validator are configured using the factory defaults
    and are ready-to-use.
    NOTE: If you have a generator tool to create the corresponding Java classes
    for you, you could include the details in the "form-bean" declarations.
    Otherwise, you would only define the "form-bean" element itself, with the
    corresponding "name" and "type" attributes, as shown here.
    -->
    <struts-config>
    <form-beans>
    <form-bean name="myform" type="src.Myform">
    <form-property
    name="name"
    type="java.lang.String"/>
    </form-bean>
    </form-beans>
    <global-exceptions/>
    <global-forwards>
    <forward name="welcome" path="/Welcome.do"/>
    </global-forwards>
    <action-mappings>
    <action path="/myAction" type="src.MyAction" name="myform" scope="request" validate="true" input="/index.jsp">
    <forward name="wel" path="/wel.jsp"/>
    </action>
    <!--<action
    path="/AddressJavascriptValidation"
    type="roseindia.net.AddressAction"
    name="AddressForm"
    scope="request"
    validate="true"
    input="/pages/AddressJavascriptValidation.jsp">
    <forward name="success" path="/pages/success.jsp"/>
    </action>-->
    </action-mappings>
    <controller processorClass="org.apache.struts.tiles.TilesRequestProcessor"/>
    <message-resources parameter="resources/application"/>
    <plug-in className="org.apache.struts.tiles.TilesPlugin">
    <set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml"/>
    <set-property property="moduleAware" value="true"/>
    </plug-in>
    <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
    <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
    <set-property property="stopOnFirstError" value="false"/>
    </plug-in>
    </struts-config>
    validation.xml
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.0//EN" "http://jakarta.apache.org/commons/dtds/validator_1_0.dtd">
    <form-validation>
    <formset>
    <!-- <form name="form" >
    <field property="name" depends="required">
    <arg0 key="myform.name"/></field>
    </form>
    -->
    <form name="myform">
    <field property="name" depends="minlength">
    <arg0 key="myform.name"/>
    <arg1 key="${var:minlength}" name="minlength" resource="false"/>
    <var>
    <var-name>minlength</var-name>
    <var-value>2</var-value>
    </var>
    </field>
    </form>
    <!--<form name="AddressForm">
    <field property="name"
    depends="required">
    <arg key="AddressForm.name"/>
    </field>
    <field property="address"
    depends="required">
    <arg key="AddressForm.address"/>
    </field>
    <field property="emailAddress"
    depends="required">
    <arg key="AddressForm.emailAddress"/>
    </field>
    </form>-->
    </formset>
    </form-validation>
    validator-rules.xml
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.0//EN" "http://jakarta.apache.org/commons/dtds/validator_1_0.dtd">
    <!--
    This file contains the default Struts Validator pluggable validator
    definitions. It should be placed somewhere under /WEB-INF and
    referenced in the struts-config.xml under the plug-in element
    for the ValidatorPlugIn.
    <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
    <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,
    /WEB-INF/validation.xml"/>
    </plug-in>
    These are the default error messages associated with
    each validator defined in this file. They should be
    added to your projects ApplicationResources.properties
    file or you can associate new ones by modifying the
    pluggable validators msg attributes in this file.
    # Struts Validator Error Messages
    errors.required={0} is required.
    errors.minlength={0} can not be less than {1} characters.
    errors.maxlength={0} can not be greater than {1} characters.
    errors.invalid={0} is invalid.
    errors.byte={0} must be a byte.
    errors.short={0} must be a short.
    errors.integer={0} must be an integer.
    errors.long={0} must be a long.
    errors.float={0} must be a float.
    errors.double={0} must be a double.
    errors.date={0} is not a date.
    errors.range={0} is not in the range {1} through {2}.
    errors.creditcard={0} is an invalid credit card number.
    errors.email={0} is an invalid e-mail address.
    -->
    <form-validation>
    <global>
    <validator name="required"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateRequired"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionErrors,
    javax.servlet.http.HttpServletRequest"
    msg="errors.required">
    <javascript><![CDATA[
    function validateRequired(form) {
    var isValid = true;
    var focusField = null;
    var i = 0;
    var fields = new Array();
    oRequired = new required();
    for (x in oRequired) {
    var field = form[oRequired[x][0]];
    if (field.type == 'text' ||
    field.type == 'textarea' ||
    field.type == 'file' ||
    field.type == 'select-one' ||
    field.type == 'radio' ||
    field.type == 'password') {
    var value = '';
    // get field's value
    if (field.type == "select-one") {
    var si = field.selectedIndex;
    if (si >= 0) {
    value = field.options[si].value;
    } else {
    value = field.value;
    if (trim(value).length == 0) {
    if (i == 0) {
    focusField = field;
    fields[i++] = oRequired[x][1];
    isValid = false;
    if (fields.length > 0) {
    focusField.focus();
    alert(fields.join('\n'));
    return isValid;
    // Trim whitespace from left and right sides of s.
    function trim(s) {
    return s.replace( /^\s*/, "" ).replace( /\s*$/, "" );
    ]]>
    </javascript>
    </validator>
    <validator name="requiredif"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateRequiredIf"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionErrors,
    org.apache.commons.validator.Validator,
    javax.servlet.http.HttpServletRequest"
    msg="errors.required">
    </validator>
    <validator name="minlength"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateMinLength"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionErrors,
    javax.servlet.http.HttpServletRequest"
    depends=""
    msg="errors.minlength">
    <javascript><![CDATA[
    function validateMinLength(form) {
    var isValid = true;
    var focusField = null;
    var i = 0;
    var fields = new Array();
    oMinLength = new minlength();
    for (x in oMinLength) {
    var field = form[oMinLength[x][0]];
    if (field.type == 'text' ||
    field.type == 'textarea') {
    var iMin = parseInt(oMinLength[x][2]("minlength"));
    if ((trim(field.value).length > 0) && (field.value.length < iMin)) {
    if (i == 0) {
    focusField = field;
    fields[i++] = oMinLength[x][1];
    isValid = false;
    if (fields.length > 0) {
    focusField.focus();
    alert(fields.join('\n'));
    return isValid;
    }]]>
    </javascript>
    </validator>
    <validator name="maxlength"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateMaxLength"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionErrors,
    javax.servlet.http.HttpServletRequest"
    depends=""
    msg="errors.maxlength">
    <javascript><![CDATA[
    function validateMaxLength(form) {
    var isValid = true;
    var focusField = null;
    var i = 0;
    var fields = new Array();
    oMaxLength = new maxlength();
    for (x in oMaxLength) {
    var field = form[oMaxLength[x][0]];
    if (field.type == 'text' ||
    field.type == 'textarea') {
    var iMax = parseInt(oMaxLength[x][2]("maxlength"));
    if (field.value.length > iMax) {
    if (i == 0) {
    focusField = field;
    fields[i++] = oMaxLength[x][1];
    isValid = false;
    if (fields.length > 0) {
    focusField.focus();
    alert(fields.join('\n'));
    return isValid;
    }]]>
    </javascript>
    </validator>
    <validator name="mask"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateMask"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionErrors,
    javax.servlet.http.HttpServletRequest"
    depends=""
    msg="errors.invalid">
    <javascript><![CDATA[
    function validateMask(form) {
    var isValid = true;
    var focusField = null;
    var i = 0;
    var fields = new Array();
    oMasked = new mask();
    for (x in oMasked) {
    var field = form[oMasked[x][0]];
    if ((field.type == 'text' ||
    field.type == 'textarea') &&
    (field.value.length > 0)) {
    if (!matchPattern(field.value, oMasked[x][2]("mask"))) {
    if (i == 0) {
    focusField = field;
    fields[i++] = oMasked[x][1];
    isValid = false;
    if (fields.length > 0) {
    focusField.focus();
    alert(fields.join('\n'));
    return isValid;
    function matchPattern(value, mask) {
    return mask.exec(value);
    }]]>
    </javascript>
    </validator>
    <validator name="byte"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateByte"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionErrors,
    javax.servlet.http.HttpServletRequest"
    depends=""
    msg="errors.byte"
    jsFunctionName="ByteValidations">
    <javascript><![CDATA[
    function validateByte(form) {
    var bValid = true;
    var focusField = null;
    var i = 0;
    var fields = new Array();
    oByte = new ByteValidations();
    for (x in oByte) {
    var field = form[oByte[x][0]];
    if (field.type == 'text' ||
    field.type == 'textarea' ||
    field.type == 'select-one' ||
    field.type == 'radio') {
    var value = '';
    // get field's value
    if (field.type == "select-one") {
    var si = field.selectedIndex;
    if (si >= 0) {
    value = field.options[si].value;
    } else {
    value = field.value;
    if (value.length > 0) {
    if (!isAllDigits(value)) {
    bValid = false;
    if (i == 0) {
    focusField = field;
    fields[i++] = oByte[x][1];
    } else {
    var iValue = parseInt(value);
    if (isNaN(iValue) || !(iValue >= -128 && iValue <= 127)) {
    if (i == 0) {
    focusField = field;
    fields[i++] = oByte[x][1];
    bValid = false;
    if (fields.length > 0) {
    focusField.focus();
    alert(fields.join('\n'));
    return bValid;
    }]]>
    </javascript>
    </validator>
    <validator name="short"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateShort"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionErrors,
    javax.servlet.http.HttpServletRequest"
    depends=""
    msg="errors.short"
    jsFunctionName="ShortValidations">
    <javascript><![CDATA[
    function validateShort(form) {
    var bValid = true;
    var focusField = null;
    var i = 0;
    var fields = new Array();
    oShort = new ShortValidations();
    for (x in oShort) {
    var field = form[oShort[x][0]];
    if (field.type == 'text' ||
    field.type == 'textarea' ||
    field.type == 'select-one' ||
    field.type == 'radio') {
    var value = '';
    // get field's value
    if (field.type == "select-one") {
    var si = field.selectedIndex;
    if (si >= 0) {
    value = field.options[si].value;
    } else {
    value = field.value;
    if (value.length > 0) {
    if (!isAllDigits(value)) {
    bValid = false;
    if (i == 0) {
    focusField = field;
    fields[i++] = oShort[x][1];
    } else {
    var iValue = parseInt(value);
    if (isNaN(iValue) || !(iValue >= -32768 && iValue <= 32767)) {
    if (i == 0) {
    focusField = field;
    fields[i++] = oShort[x][1];
    bValid = false;
    if (fields.length > 0) {
    focusField.focus();
    alert(fields.join('\n'));
    return bValid;
    }]]>
    </javascript>
    </validator>
    <validator name="integer"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateInteger"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionErrors,
    javax.servlet.http.HttpServletRequest"
    depends=""
    msg="errors.integer"
    jsFunctionName="IntegerValidations">
    <javascript><![CDATA[
    function validateInteger(form) {
    var bValid = true;
    var focusField = null;
    var i = 0;
    var fields = new Array();
    oInteger = new IntegerValidations();
    for (x in oInteger) {
    var field = form[oInteger[x][0]];
    if (field.type == 'text' ||
    field.type == 'textarea' ||
    field.type == 'select-one' ||
    field.type == 'radio') {
    var value = '';
    // get field's value
    if (field.type == "select-one") {
    var si = field.selectedIndex;
    if (si >= 0) {
    value = field.options[si].value;
    } else {
    value = field.value;
    if (value.length > 0) {
    if (!isAllDigits(value)) {
    bValid = false;
    if (i == 0) {
    focusField = field;
    fields[i++] = oInteger[x][1];
    } else {
    var iValue = parseInt(value);
    if (isNaN(iValue) || !(iValue >= -2147483648 && iValue <= 2147483647)) {
    if (i == 0) {
    focusField = field;
    fields[i++] = oInteger[x][1];
    bValid = false;
    if (fields.length > 0) {
    focusField.focus();
    alert(fields.join('\n'));
    return bValid;
    function isAllDigits(argvalue) {
    argvalue = argvalue.toString();
    var validChars = "0123456789";
    var startFrom = 0;
    if (argvalue.substring(0, 2) == "0x") {
    validChars = "0123456789abcdefABCDEF";
    startFrom = 2;
    } else if (argvalue.charAt(0) == "0") {
    validChars = "01234567";
    startFrom = 1;
    } else if (argvalue.charAt(0) == "-") {
    startFrom = 1;
    for (var n = startFrom; n < argvalue.length; n++) {
    if (validChars.indexOf(argvalue.substring(n, n+1)) == -1) return false;
    return true;
    }]]>
    </javascript>
    </validator>
    <validator name="long"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateLong"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionErrors,
    javax.servlet.http.HttpServletRequest"
    depends=""
    msg="errors.long"/>
    <validator name="float"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateFloat"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionErrors,
    javax.servlet.http.HttpServletRequest"
    depends=""
    msg="errors.float"
    jsFunctionName="FloatValidations">
    <javascript><![CDATA[
    function validateFloat(form) {
    var bValid = true;
    var focusField = null;
    var i = 0;
    var fields = new Array();
    oFloat = new FloatValidations();
    for (x in oFloat) {
    var field = form[oFloat[x][0]];
    if (field.type == 'text' ||
    field.type == 'textarea' ||
    field.type == 'select-one' ||
    field.type == 'radio') {
    var value = '';
    // get field's value
    if (field.type == "select-one") {
    var si = field.selectedIndex;
    if (si >= 0) {
    value = field.options[si].value;
    } else {
    value = field.value;
    if (value.length > 0) {
    // remove '.' before checking digits
    var tempArray = value.split('.');
    var joinedString= tempArray.join('');
    if (!isAllDigits(joinedString)) {
    bValid = false;
    if (i == 0) {
    focusField = field;
    fields[i++] = oFloat[x][1];
    } else {
    var iValue = parseFloat(value);
    if (isNaN(iValue)) {
    if (i == 0) {
    focusField = field;
    fields[i++] = oFloat[x][1];
    bValid = false;
    if (fields.length > 0) {
    focusField.focus();
    alert(fields.join('\n'));
    return bValid;
    }]]>
    </javascript>
    </validator>
    <validator name="double"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateDouble"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionErrors,
    javax.servlet.http.HttpServletRequest"
    depends=""
    msg="errors.double"/>
    <validator name="date"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateDate"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionErrors,
    javax.servlet.http.HttpServletRequest"
    depends=""
    msg="errors.date"
    jsFunctionName="DateValidations">
    <javascript><![CDATA[
    function validateDate(form) {
    var bValid = true;
    var focusField = null;
    var i = 0;
    var fields = new Array();
    oDate = new DateValidations();
    for (x in oDate) {
    var value = form[oDate[x][0]].value;
    var datePattern = oDate[x][2]("datePatternStrict");
    if ((form[oDate[x][0]].type == 'text' ||
    form[oDate[x][0]].type == 'textarea') &&
    (value.length > 0) &&
    (datePattern.length > 0)) {
    var MONTH = "MM";
    var DAY = "dd";
    var YEAR = "yyyy";
    var orderMonth = datePattern.indexOf(MONTH);
    var orderDay = datePattern.indexOf(DAY);
    var orderYear = datePattern.indexOf(YEAR);
    if ((orderDay < orderYear && orderDay > orderMonth)) {
    var iDelim1 = orderMonth + MONTH.length;
    var iDelim2 = orderDay + DAY.length;
    var delim1 = datePattern.substring(iDelim1, iDelim1 + 1);
    var delim2 = datePattern.substring(iDelim2, iDelim2 + 1);
    if (iDelim1 == orderDay && iDelim2 == orderYear) {
    dateRegexp = new RegExp("^(\\d{2})(\\d{2})(\\d{4})$");
    } else if (iDelim1 == orderDay) {
    dateRegexp = new RegExp("^(\\d{2})(\\d{2})[" + delim2 + "](\\d{4})$");
    } else if (iDelim2 == orderYear) {
    dateRegexp = new RegExp("^(\\d{2})[" + delim1 + "](\\d{2})(\\d{4})$");
    } else {
    dateRegexp = new RegExp("^(\\d{2})[" + delim1 + "](\\d{2})[" + delim2 + "](\\d{4})$");
    var matched = dateRegexp.exec(value);
    if(matched != null) {
    if (!isValidDate(matched[2], matched[1], matched[3])) {
    if (i == 0) {
    focusField = form[oDate[x][0]];
    fields[i++] = oDate[x][1];
    bValid = false;
    } else {
    if (i == 0) {
    focusField = form[oDate[x][0]];
    fields[i++] = oDate[x][1];
    bValid = false;
    } else if ((orderMonth < orderYear && orderMonth > orderDay)) {
    var iDelim1 = orderDay + DAY.length;
    var iDelim2 = orderMonth + MONTH.length;
    var delim1 = datePattern.substring(iDelim1, iDelim1 + 1);
    var delim2 = datePattern.substring(iDelim2, iDelim2 + 1);
    if (iDelim1 == orderMonth && iDelim2 == orderYear) {
    dateRegexp = new RegExp("^(\\d{2})(\\d{2})(\\d{4})$");
    } else if (iDelim1 == orderMonth) {
    dateRegexp = new RegExp("^(\\d{2})(\\d{2})[" + delim2 + "](\\d{4})$");
    } else if (iDelim2 == orderYear) {
    dateRegexp = new RegExp("^(\\d{2})[" + delim1 + "](\\d{2})(\\d{4})$");
    } else {
    dateRegexp = new RegExp("^(\\d{2})[" + delim1 + "](\\d{2})[" + delim2 + "](\\d{4})$");

    Hello,
    thanks for your contribution. But how I already said we have seen that the first error message:
    The error is: javax.servlet.UnavailableException: Cannot load a validator resource from '/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml'
    But behind that message is an additional message that describes the real root cause of the problem:
    SEVERE: Cannot find resource "org/apache/commons/digester/xmlrules/digester-rules.dtd"
    org.apache.commons.digester.xmlrules.XmlLoadException: Cannot find resource
    "org/apache/commons/digester/xmlrules/digester-rules.dtd"
    Unfortunately we have no idea why the dtd file can not be loaded. The appropriate line of code is:
    getClass().getResourceAsStream("<link_to_resource")
    And this returns a NULL object. The NULL object causes the general exception and finishes the instantiation of Struts.
    Any additonal hints?
    Regards, Maik

  • Javax.servlet.UnavailableException: Cannot initialize RequestProcessor

    Hi all,
    we're facing some enormous memory problems while running our BC4J/Struts application within a ias 10g /linux environment (i.e. memory usage grows rapidly while heap size sinks).
    We're trying to identify where such high memory usage is produced. We also scanned our log files, from time to time we receive the following error:
    Jul 27, 2004 6:50:43 PM org.apache.struts.action.ActionServlet destroyModules
    SEVERE: javax.servlet.UnavailableException: Cannot initialize RequestProcessor of class oracle.jbo.html.struts11.BC4JRequestProcessor: java.lang.ClassNotFoundException: oracle.jbo.html.struts11.BC4JRequestProcessorThe class BC4JRequestprocessor belongs to the bc4jstruts.jar which is in the web-inf/lib path of our web application.
    Does anyone have an idea how to prevent this error?
    Does this error maybe affect our memory problem?
    tia,
    Stefan

    We've tied this problem down to be related to the IMAP portlet (which might mean I need to continue any of this in a more suitable category,) but does anyone know of any issues with the email portlet from the PDK that might be causing this?

  • Encountered javax.servlet.UnavailableException while WebLogic server is starting up

    When my WebLogic 7.0 server is starting up, i am seeing javax.servlet.UnavailableException
    in WebLogic log file, it says that server is temporarily suspended, but after
    that, the server seems to be started successfully. Furthermore, this doesn't happen
    in a consistent way. I would appreciate it if anyone can shed a light on this.
    Thanks,
    Charles
    Log information excerpted from weblogic log file:
    ####<Feb 03 2004 10:40:43 AM EST> <Notice> <WebLogicServer> <myhost> <adminserver>
    <main> <kernel identity> <> <000327> <Starting WebLogic Admin Server "adminserver"
    for domain "mydomain">
    ####<Feb 03, 2004 10:40:58 AM EST> <Notice> <Management> <myhost> <adminserver>
    <main> <kernel identity> <> <141052> <Application Poller started for development
    server.>
    ####<Feb 03, 2004 10:41:00 AM EST> <Notice> <WebLogicServer> <myhost> <adminserver>
    <ListenThread.Default> <kernel identity> <> <000355> <Thread "ListenThread.Default"
    listening on port 7001, ip address 10.100.1.1>
    ####<Feb 03, 2004 10:41:00 AM EST> <Notice> <Management> <myhost> <adminserver>
    <main> <kernel identity> <> <141030> <Starting discovery of Managed Server...
    This feature is on by default, you may turn this off by passing -Dweblogic.management.discover=false>
    ####<Feb 03, 2004 10:41:01 AM EST> <Error> <HTTP> <myhost> <adminserver> <ExecuteThread:
    '11' for queue: 'default'> <kernel identity> <> <101018> <[ServletContext(id=5539165,name=myapp,context-path=/myapp)]
    Servlet failed with ServletException>
    javax.servlet.UnavailableException: ServletContext(id=5539165,name=myapp,context-path=/myapp):
    The server adminserver is temporarily suspended
         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3096)
         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2588)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
    ####<Feb 03, 2004 10:41:01 AM EST> <Error> <HTTP> <myhost> <adminserver> <ExecuteThread:
    '11' for queue: 'default'> <kernel identity> <> <101018> <[ServletContext(id=5539165,name=myapp,context-path=/myapp)]
    Servlet failed with ServletException>
    javax.servlet.UnavailableException: ServletContext(id=5539165,name=myapp,context-path=/myapp):
    The server adminserver is temporarily suspended
         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3096)
         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2588)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
    ####<Feb 03, 2004 10:41:02 AM EST> <Notice> <WebLogicServer> <myhost> <adminserver>
    <main> <kernel identity> <> <000365> <Server state changed to RUNNING>
    ####<Feb 03, 2004 10:41:02 AM EST> <Notice> <WebLogicServer> <myhost> <adminserver>
    <main> <kernel identity> <> <000360> <Server started in RUNNING mode>

    Oops, i meant "most of questions posted here are not answered".
    "Charles" <[email protected]> wrote:
    >
    Is there anyone from BEA monitoring their news groups? It is strange
    that most
    of questions posted here are answered.
    "Charles" <[email protected]> wrote:
    When my WebLogic 7.0 server is starting up, i am seeing javax.servlet.UnavailableException
    in WebLogic log file, it says that server is temporarily suspended,but
    after
    that, the server seems to be started successfully. Furthermore, this
    doesn't happen
    in a consistent way. I would appreciate it if anyone can shed a light
    on this.
    Thanks,
    Charles
    Log information excerpted from weblogic log file:
    ####<Feb 03 2004 10:40:43 AM EST> <Notice> <WebLogicServer> <myhost>
    <adminserver>
    <main> <kernel identity> <> <000327> <Starting WebLogic Admin Server
    "adminserver"
    for domain "mydomain">
    ####<Feb 03, 2004 10:40:58 AM EST> <Notice> <Management> <myhost> <adminserver>
    <main> <kernel identity> <> <141052> <Application Poller started for
    development
    server.>
    ####<Feb 03, 2004 10:41:00 AM EST> <Notice> <WebLogicServer> <myhost>
    <adminserver>
    <ListenThread.Default> <kernel identity> <> <000355> <Thread "ListenThread.Default"
    listening on port 7001, ip address 10.100.1.1>
    ####<Feb 03, 2004 10:41:00 AM EST> <Notice> <Management> <myhost> <adminserver>
    <main> <kernel identity> <> <141030> <Starting discovery of ManagedServer...
    This feature is on by default, you may turn this off by passing -Dweblogic.management.discover=false>
    ####<Feb 03, 2004 10:41:01 AM EST> <Error> <HTTP> <myhost> <adminserver>
    <ExecuteThread:
    '11' for queue: 'default'> <kernel identity> <> <101018> <[ServletContext(id=5539165,name=myapp,context-path=/myapp)]
    Servlet failed with ServletException>
    javax.servlet.UnavailableException: ServletContext(id=5539165,name=myapp,context-path=/myapp):
    The server adminserver is temporarily suspended
         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3096)
         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2588)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
    ####<Feb 03, 2004 10:41:01 AM EST> <Error> <HTTP> <myhost> <adminserver>
    <ExecuteThread:
    '11' for queue: 'default'> <kernel identity> <> <101018> <[ServletContext(id=5539165,name=myapp,context-path=/myapp)]
    Servlet failed with ServletException>
    javax.servlet.UnavailableException: ServletContext(id=5539165,name=myapp,context-path=/myapp):
    The server adminserver is temporarily suspended
         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3096)
         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2588)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
    ####<Feb 03, 2004 10:41:02 AM EST> <Notice> <WebLogicServer> <myhost>
    <adminserver>
    <main> <kernel identity> <> <000365> <Server state changed to RUNNING>
    ####<Feb 03, 2004 10:41:02 AM EST> <Notice> <WebLogicServer> <myhost>
    <adminserver>
    <main> <kernel identity> <> <000360> <Server started in RUNNING mode>

  • Error preloading servlet - javax.servlet.UnavailableException

    Hello All,
    I'm getting below message while running application on Oracle Application Server 10g. I have struts.jar under WEB-INF/lib folder in EAR file. Really appreciate any suggestions. Thanks
    REPORTAPP: Error preloading servlet
    javax.servlet.UnavailableException
    at org.apache.struts.action.ActionServlet.init(ActionServlet.java:368)
    at javax.servlet.GenericServlet.init(GenericServlet.java:256)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.2.0) ].server.http.HttpApplication.loadServlet(HttpApplication.java:2361
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.2.0) ].server.http.HttpApplication.findServlet(HttpApplication.java:4810
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.2.0) ].server.http.HttpApplication.findServlet(HttpApplication.java:4734
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.2.0) ].server.http.HttpApplication.initPreloadServlets(HttpApplication
    .java:4922)

    Just an idea.....
    Have you bundled the Xerces XML parser .jar file in your project somewhere. I had similar errors once (cannot remember those stacktraces 100% :-) ), and I just removed the XML parser from my project and it worked fine.
    (There's already some XML stuff in OC4J, and I believe it's conflicting if you add another version of the same .jar files.)
    Cheers,
    ~Morten :-)

  • Javax.servlet.UnavailableException: org.apache.struts.tile.TilesRequestProc

    hi
    I attached the tiles. jar file to tomcat lib folder
    that jar file is having the source
    when I run the project the following error is coming
    SEVERE: Unable to initialize Struts ActionServlet due to an unexpected exception or error thrown, so marking the servlet as unavailable. Most likely, this is due to an incorrect or missing library dependency.
    javax.servlet.ServletException: org.apache.struts.tile.TilesRequestProcessor
         at org.apache.struts.tiles.TilesPlugin.initRequestProcessorClass(TilesPlugin.java:351)
         at org.apache.struts.tiles.TilesPlugin.init(TilesPlugin.java:133)
         at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:869)
         at org.apache.struts.action.ActionServlet.init(ActionServlet.java:336)
         at javax.servlet.GenericServlet.init(GenericServlet.java:211)
         at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1105)
         at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:932)
         at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3917)
         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4201)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
         at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
         at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
         at org.apache.catalina.core.StandardService.start(StandardService.java:450)
         at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
         at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)

    hi karthik
    SEVERE: Can't set TilesRequestProcessor: bad class name 'org.apache.struts.tile.TilesRequestProcessor'.
    Dec 6, 2007 3:08:15 PM org.apache.struts.action.ActionServlet init
    SEVERE: Unable to initialize Struts ActionServlet due to an unexpected exception or error thrown, so marking the servlet as unavailable. Most likely, this is due to an incorrect or missing library dependency.
    javax.servlet.ServletException: org.apache.struts.tile.TilesRequestProcessor
         at org.apache.struts.tiles.TilesPlugin.initRequestProcessorClass(TilesPlugin.java:351)
         at org.apache.struts.tiles.TilesPlugin.init(TilesPlugin.java:133)
         at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:869)
         at org.apache.struts.action.ActionServlet.init(ActionServlet.java:336)
         at javax.servlet.GenericServlet.init(GenericServlet.java:211)
         at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1105)
         at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:932)
         at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3917)
         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4201)
         at org.apache.catalina.core.StandardContext.reload(StandardContext.java:2990)
         at org.apache.catalina.loader.WebappLoader.backgroundProcess(WebappLoader.java:403)
         at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1277)
         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1569)
         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1558)
         at java.lang.Thread.run(Unknown Source)
    Dec 6, 2007 3:08:15 PM org.apache.catalina.core.ApplicationContext log
    INFO: Marking servlet action as unavailable
    Dec 6, 2007 3:08:15 PM org.apache.catalina.core.StandardContext loadOnStartup
    SEVERE: Servlet /Testingtiles threw load() exception
    javax.servlet.UnavailableException: org.apache.struts.tile.TilesRequestProcessor
         at org.apache.struts.action.ActionServlet.init(ActionServlet.java:368)
         at javax.servlet.GenericServlet.init(GenericServlet.java:211)
         at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1105)
         at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:932)
         at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3917)
         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4201)
         at org.apache.catalina.core.StandardContext.reload(StandardContext.java:2990)
         at org.apache.catalina.loader.WebappLoader.backgroundProcess(WebappLoader.java:403)
         at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1277)
         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1569)
         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1558)
         at java.lang.Thread.run(Unknown Source)
    Dec 6, 2007 3:08:34 PM org.apache.catalina.core.StandardWrapperValve invoke
    INFO: Servlet action is currently unavailable

  • UnavailableException for Struts RequestProcessor

    I posted a thread several months back with an issue deploying a 10.1.2 adf application to a 9.0.4.0.1 server and never had it resolved.
    When I look in the log file, I see a message that the Struts RequestProcessor is unavailable. The message looks like this:
    Jul 27, 2005 6:50:43 PM org.apache.struts.action.ActionServlet
    SEVERE: javax.servlet.UnavailableException: Cannot initialize RequestProcessor org.apache.struts.action.ActionServlet
    ClassNotFoundException
    I'm assuming this is happening on startup of the application when it reads the web.xml file and is attempting to load the actionservlet. The struts.jar file is in the WEB-INF/lib path.
    We tried moving it around, then examined an application.log file and it says it cannot be found in <long path here>web-inf/classes/org/apache/struts/action/ActionServlet.class, nor in <long path here>/WEB-INF/lib/, in a classpath defined in orion-web.xml nor in a global application path.
    We tried putting it in the oc4j folder for this app in the applib folder, and tried adding an entry in the orion-web.xml file <classpath path="path to jars"/>
    but that did not seem to work either.
    The application runs as slow as molasses in January, maybe slower on 9.0.4.0.1, but runs fine in 10.1.2. WE thought this might have something to do with it, but I have no idea how to resolve it at this point. We cannot move to 10.1.2 as 10 other apps run on this server and we're not planning any migration at this point.
    Please, please share your thoughts, talents, advice on this!!

    I found the error here from home in another thread:
    Servlet error: Error instantiating servlet 'action' (servlet class not found, make sure it exists at C:\oc4j\j2ee\home\applications\myappname/WEB-INF/classes/org/apache/struts/action/ActionServlet.class, in a jar in C:\oc4j\j2ee\home\applications\myappname/WEB-INF/lib/, in an orion-web.xml specified classpath or global server classpath)

  • Javax.servlet.UnavailableException using Struts2

    Hi,
    I am developing an Struts2 application (using tomcat 6.0.18) in netbeans 6.0, but unfortunately, it doesn`t run. It gives me the following error:
    ERROR: Servlet /webstruts throw exception de load() javax.servlet.UnavailableException: Initializing application data source org.apache.struts.action.DATA_SOURCE
    Paradoxically, I am not using any database in this application. But the error appears to be something related with this issue.
    Anybody knows how to solve this error? Thankis with anticipation.
    Regards

    Solved

  • [svn:bz-trunk] 7681: Fix bunch of failing config tests on BlazeDS/ trunk by removing javax.servlet. UnavailableException from the expected error string.

    Revision: 7681
    Author:   [email protected]
    Date:     2009-06-09 11:44:36 -0700 (Tue, 09 Jun 2009)
    Log Message:
    Fix bunch of failing config tests on BlazeDS/trunk by removing javax.servlet.UnavailableException from the expected error string.
    Modified Paths:
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/destination/IncorrectRootElement Test/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/AdaptiveServerT oClient/AdaptiveFrequencyTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/AdaptiveServerT oClient/FrequencyStepSizeTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/AdaptiveServerT oClient/MaxQueueSizeTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/DestinationWith NoChannelTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/DestinationWith NoIDTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/jms/InvalidAckn owledgeModeTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/jms/InvalidDeli veryModeTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/jms/InvalidDest inationTypeTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/jms/InvalidMess ageTypeTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/jms/NoConnectio nFactoryTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/jms/NoJNDINameT est/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/throttle/thrott leInbound/InvalidBufferPolicyTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/throttle/thrott leInbound/InvalidConflatePolicyTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/throttle/thrott leInbound/UnknownInboundPolicyTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/throttle/thrott leInbound/frequencies/McfGreaterthanMfTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/throttle/thrott leOutbound/InvalidBufferPolicyTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/throttle/thrott leOutbound/InvalidConflatePolicyTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/throttle/thrott leOutbound/InvalidErrorPolicyTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/throttle/thrott leOutbound/UnknownOutboundPolicyTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/throttle/thrott leOutbound/frequencies/McfGreaterthanMfTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/validation/nonE xistingValidatorTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/validation/same ExplicitTypeValidatorTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/validation/same TypeValidatorTest/error.txt
        blazeds/trunk/qa/apps/qa-regress/testsuites/config/tests/messagingService/validation/wron gTypeValidatorTest/error.txt

  • Deployment issue in Weblogic 9.2

    Hi,
    I get the below error while deploying my application in Weblogic 9.2.Guess, it has something to do with class path but am unable to fix it.Any help on this, would be great.
    Regards,
    Rahul
    ###<Oct 3, 2006 8:16:40 PM IST> <Error> <HTTP> <hpuxdhl> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1159886800944> <BEA-101216> <Servlet: "action" failed to preload on startup in Web application: "/fcm".
    javax.servlet.UnavailableException: Parsing error processing resource path
    at org.apache.struts.action.ActionServlet.handleConfigException(ActionServlet.java:1035)
    at org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServlet.java:1014)
    at org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:955)
    at org.apache.struts.action.ActionServlet.init(ActionServlet.java:470)
    at javax.servlet.GenericServlet.init(GenericServlet.java:256)
    at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:276)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:68)
    at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58)
    at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:48)
    at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:504)
    at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1698)
    at weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1675)
    at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1595)
    at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:2734)
    at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:892)
    at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:336)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
    at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
    at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:117)
    at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
    at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:26)
    at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:641)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:229)
    at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:154)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:80)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:565)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:136)
    at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:104)
    at weblogic.deploy.internal.targetserver.operations.StartOperation.doCommit(StartOperation.java:128)
    at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:320)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:815)
    at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1222)
    at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:433)
    at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:161)
    at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:181)

    hi,
    I'm facing the same problem.
    Did you find the solution ?
    Thank you

  • Problem with transfering unicode form data in MULTIPART/FORM-DATA

    HI experts,
    I have this web based multilingual application. Page 1(form6.jsp) is basic registeration form with 5 fields and one image upload to the server. Page 2(verify.jsp) is another jsp page for verification of UTF data entered in page 1.
    page 2 (verify.jsp) also uses a bean called (verify.java) for picking up values. page 3(insertEntry.jsp) is the page for inserting that data into the Database and uses a bean called (logicbean.java).
    Now, the problem im facing here is that if i use multipart/form-data, the unicode text filled in page1 is shown as garbage when its is transfered to page2 and displayed on page2. It is all gibberish. But if i do not use multipart/form-data, the unicode text transfered from page1 to page2 is displayed perfectly on page2.Im using devenagari(UTF) language for filling in details.
    // form6.jsp
    <%@ page language="java" pageEncoding="UTF-8"%>
    <%@ page import="java.util.*,java.text.*" %>
    <%@ page import="com.oreilly.servlet.*" %>
    <%
    request.setCharacterEncoding("UTF-8");
    %>
    <HTML>
    <HEAD>
    <TITLE>
    <%=session.getValue("main.title")%>
    </TITLE>
    </HEAD>
    <h1><center><%=session.getValue("main.head")%><Center>
    <BODY background="brown.bmp">
    <form name=form6 action="verify.jsp" method="post" enctype="multipart/form-data">
    <center>
    <font>
    <table border=1>
    <tr>
    <td colspan=2><center><img src="asok.bmp"></center>
    </tr>
    <tr>
    <td >
    <b>1.)<%=session.getValue("main.ec")%></b>
    </td>
    <td></td>
    </tr>
    <tr>
    <td align="right"><b><%=session.getValue("main.ecname")%></b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type="text" name="votername"></td>
    <td></td>
    </tr>
    <tr>
    <td align="right"> <b><%=session.getValue("main.ecsurname")%></b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type="text" name="votersurname"></td>
    <td></td>
    </tr>
    <tr>
    <td align="left"><b>2.)<%=session.getValue("main.rel")%></b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp
    <select name="relation" onchange="if(this.selectedIndex!=0){this.form.texthiddenrelation.value=this.options[this.selectedIndex].value}" size="1">
                                       <option>Choose</option>
    <option value="father">Father</option>
    <option value="mother">Mother</option>
    <option value="husband">Husband</option>
    </select>
    <input type="hidden" name="texthiddenrelation" />
    </td>
    </tr>
    <tr>
    <td align="right"><b><%=session.getValue("main.relname")%></b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type="text" name="parentname">
    <td></td>
    </tr>
    <tr>
    <td align="right"><b><%=session.getValue("main.relsurname")%>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp</b><input type="text" name="parentsurname">
    <td></td>
    </tr>
    <tr>
    <td align="right"><b>3.)<%=session.getValue("main.sex")%></b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp
    <select name="sex" onchange="if(this.selectedIndex!=0){this.form.texthiddensex.value=this.options[this.selectedIndex].value}" size="1">
                                            <option>Choose</option>
                                            <option value="male">Male</option>
    <option value="female">Female</option>
    <option value="other">Other</option>
    </select>
    <input type="hidden" name="texthiddensex" /> </td>
    <td align="right"><b><%=session.getValue("form6.image")%><input type ="file" name=pic1 onchange={this.form.pic.value=this.form.pic1.value}><input type= hidden name=pic> </b></td>
    </tr>
    <tr>
    <td colspan=2><b>4.)<%=session.getValue("main.age")%></b><input type="text" name="age">
    </td>
    </tr>
    <tr>
    <td><b>5.)<%=session.getValue("main.dob")%></b>
    <td><b><%=session.getValue("main.dobday")%></b> <select name="cmbday">
    <option value="1"> 1 </option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
    <option value="8">8</option>
    <option value="9">10</option>
    <option value="10">11</option>
    <option value="11">12</option>
    <option value="12">13</option>
    <option value="13">14</option>
    <option value="14">15</option>
    <option value="15">16</option>
    <option value="16">17</option>
    <option value="17">18</option>
    <option value="18">19</option>
    <option value="19">20</option>
    <option value="20">21</option>
    <option value="21">22</option>
    <option value="22">23</option>
    <option value="23">24</option>
    <option value="24">25</option>
    <option value="25">26</option>
    <option value="26">27</option>
    <option value="28">28</option>
    <option value="29">29</option>
    <option value="30">30</option>
    <option value="31">31</option>
    </select>
    <b><%=session.getValue("main.dobmonth")%></b><select name="cmbmonth">
    <option value="jan">JAN</option>
    <option value="feb">FEB</option>
    <option value="mar">MAR</option>
    <option value="apr">APR</option>
    <option value="may">MAY</option>
    <option value="jun">JUN</option>
    <option value="jul">JUL</option>
    <option value="aug">AUG</option>
    <option value="sep">SEPT</option>
    <option value="oct">OCT</option>
    <option value="nov">NOV</option>
    <option value="dec">DEC</option>
    </select>
    <b><%=session.getValue("main.dobyear")%></b> <select name="cmbyear" onchange="if(this.form.cmbday.selectedIndex!=0 && this.form.cmbmonth.selectedIndex!=0 && this.form.cmbyear.selectedIndex!=0){this.form.mergedage.value=this.form.cmbday.options[this.form.cmbday.selectedIndex].value +' '+this.form.cmbmonth.options[this.form.cmbmonth.selectedIndex].text +' '+ this.form.cmbyear.options[this.form.cmbmonth.selectedIndex].value}" size="1">
    <option value="1970">1970</option>
    <option value="1971">1971</option>
    <option value="1972">1972</option>
    <option value="1973">1973</option>
    <option value="1974">1974</option>
    <option value="1975">1975</option>
    <option value="1976">1976</option>
    <option value="1977">1977</option>
    <option value="1978">1978</option>
    <option value="1979">1979</option>
    <option value="1980">1980</option>
    <option value="1981">1981</option>
    <option value="1982">1982</option>
    <option value="1983">1983</option>
    <option value="1984">1984</option>
    <option value="1985">1985</option>
    <option value="1986">1986</option>
    <option value="1987">1987</option>
    <option value="1988">1988</option>
    <option value="1989">1989</option>
    <option value="1990">1990</option>
    <option>
    </select>
    <input type="hidden" name="mergedage">
    </tr>
    <tr>
    <td colspan=2><b>6.)<%=session.getValue("main.add")%></b>
    </tr>
    <tr>
    <td align="right"><b><%=session.getValue("main.addline1")%></b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type="text" name="address1" value=""></td>
    <td><b><%=session.getValue("main.addstate")%></b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type="text" name="state"></td>
    </tr>
    <tr>
    <td align="right"><b><%=session.getValue("main.addline2")%></b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type="text" name="address2" onChange="this.form.finaladdress.value=this.form.address1.value + ';' + this.value;"> <input type="hidden" name="finaladdress"> </td>
    <td><b><%=session.getValue("main.addcity")%>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp</b><input type="text" name="city"></td>
    </tr>
    <tr>
    <td align="right"> <b><%=session.getValue("main.addpin")%></b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type="text" name="pincode">
    <td></td>
    </tr>
    <tr>
    <td ><b>7.)<%=session.getValue("main.const")%></b> <input type="text" name="constituency">
    <td ><b>8.)<%=session.getValue("main.id")%></b> &nbsp&nbsp<input type="text" name="refno">
    </tr>
    <tr>
    <td colspan="2"><center><input type="reset" name="reset" value="<%=session.getValue("button.reset")%>">&nbsp&nbsp<input type=submit name=Submit value="<%=session.getValue("button.submit")%>"></center></td>
    </tr>
    <tr>
    <td>
    </td>
    </tr>
    </form>
    </font>
    </BODY>
    </HTML>
    // verify.jsp
    <%@ page language="java" pageEncoding="UTF-8"%>
    <jsp:useBean id="verify" class="pack.verify" scope="request"/>
    <%@ page import="com.oreilly.servlet.*" %>
    <%@ page import="java.util.*,java.text.*" %>
    <%!
    MultipartRequest mp;
    // ParameterParser pp;
    %>
    <!-- Perform the actions on the bean. -->
    <%
    //pp.setCharacterEncoding("utf-8");
    %>
    <%
    try
    mp = new MultipartRequest(request, "d:/Files");
    out.println("DONE");
    /* Set the request object.*/
    /* The request object is implicitly available in the JSP page.*/
    verify.setRequest(mp);
    /* Insert the employee data into the database.*/
    verify.verifyEntry();
    //verify.setscope();
    /* Run the query to retrieve the employee data from the database.*/
    //logicbean.runQuery();
    catch (Exception e)
    System.out.println(e.getMessage());
    %>
    <HTML>
    <HEAD>
    <LINK href="theme/Master.css" rel="stylesheet" type="text/css">
    <TITLE>
    </TITLE>
    </HEAD>
    <BODY background="brown.bmp">
    <form name=form6 action="insertEntry.jsp" method="POST">
    <center>
    <table border=3>
    <tr>
    <td colspan=2><center><img src="asok.bmp"></center>
    </tr>
    <tr>
    <td >
    <b>1.)<%=session.getValue("main.ec")%></b>
    </td>
    <td rowspan=3>
    <image src="<%=verify.getpic()%>" width="85" hieght="85">
    </td>
    </tr>
    <tr>
    <td > &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<b><%=session.getValue("main.ecname")%></b> <%=verify.getvotername()%>&nbsp&nbsp<input type="hidden" value= "<%=verify.getvotername()%>" name="votername"></td>
    </tr>
    <tr >
    <td> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<b><%=session.getValue("main.ecsurname")%></b><%=verify.getvotersurname()%>
    <input type="hidden" value= "<%=verify.getvotersurname()%>" name="votersurname"></td>
    </tr>
    <tr>
    <td ><b>2.)<%=session.getValue("main.rel")%></b><input type="hidden" value= "<%=verify.getvoterrelation()%>" name="texthiddenrelation"></td>
    <td><%=verify.getvoterrelation()%></td>
    </tr>
    <tr>
    <td >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<b><%=session.getValue("main.relname")%></b>&nbsp&nbsp&nbsp <input type="hidden" value= "<%=verify.getparentname()%>" name="parentname"></td>
    <td><%=verify.getparentname()%></td>
    </tr>
    <tr>
    <td >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<b><%=session.getValue("main.relsurname")%></b><input type="hidden" value= "<%=verify.getparentsurname()%>" name="parentsurname"></td>
    <td><%=verify.getparentsurname()%></td>
    </tr>
    <tr>
    <td><b>3.)<%=session.getValue("main.sex")%></b><input type="hidden" value= "<%=verify.getsex()%>" name="texthiddensex"></td>
    <td><%=verify.getsex()%></td>
    </tr>
    <tr>
    <td ><b>4.)<%=session.getValue("main.age")%></B><input type="hidden" value= "<%=verify.getage()%>" name="age"></td>
    <td><%=verify.getage()%></td>
    </tr>
    <tr>
    <td><b>5.)<%=session.getValue("main.dob")%></b> <input type="hidden" value= "<%=verify.getdob()%>" name="mergedage"></td>
    <td> <%=verify.getdob()%></td>
    </tr>
    <tr>
    <td colspan=2><b>
    6.)<b><%=session.getValue("main.add")%></b></td>
    </tr>
    <tr>
    <td> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<b><%=session.getValue("verify.add")%></b><input type="hidden" value= "<%=verify.getadderess()%>" name="finaladdress"> </td>
    <td><%=verify.getadderess()%></td>
    </tr>
    <tr>
    <td >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<b><%=session.getValue("main.addpin")%></b><input type="hidden" value= "<%=verify.getpin()%>" name="pincode"></td>
    <td><%=verify.getpin()%></td>
    </tr>
    <tr>
    <td>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<b><%=session.getValue("main.addstate")%></b><input type="hidden" value= "<%=verify.getstate()%>" name="state"></td>
    <td><%=verify.getstate()%></td>
    </tr>
    <tr>
    <td><b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<%=session.getValue("main.addcity")%></b><input type="hidden" value= "<%=verify.getcity()%>" name="city"></td>
    <td><%=verify.getcity()%></td>
    </tr>
    <tr>
    <td><b>7.)<%=session.getValue("main.const")%></b> <input type="hidden" value= "<%=verify.getconst()%>" name="constituency"></td>
    <td><%=verify.getconst()%></td>
    </tr>
    <tr>
    <td><b>8.)<%=session.getValue("main.id")%></b> <input type="hidden" value= "<%=verify.getrefno()%>" name="refno"></td>
    <td><%=verify.getrefno()%></td>
    </tr>
    <tr>
    <td colspan="2"><center><INPUT TYPE="button" VALUE="<%=session.getValue("ie.back")%>" onClick="history.go(-1)">
    <input type=submit name=Submit value="<%=session.getValue("button.submit")%>"></center><input type="hidden" value= "<%=verify.getpic()%>" name="pic"></td>
    </tr>
    </form>
    </BODY>
    </HTML>
    //verify.java
    package pack;
    import java.lang.*;
    import java.sql.*;
    import java.util.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import com.oreilly.servlet.*;
    import com.oreilly.servlet.ParameterParser.*;
    * @author Administrator
    * To change this generated comment edit the template variable "typecomment":
    * Window>Preferences>Java>Templates.
    * To enable and disable the creation of type comments go to
    * Window>Preferences>Java>Code Generation.
    public class verify {
    String votername = "";
    String votersurname = "";
    String texthiddenrelation="";
    String parentname = "";
    String parentsurname = "";
    String gender = "";
    String texthiddensex="";
    String age = "";
    String dob = "";
    String mergedage="";
    String address = "";
    String finaladdress="";
    String pincode = "";
    String state = "";
    String city = "";
    String constituency = "";
    String refno = "";
    MultipartRequest request = null;
    Connection dbConn = null;
    ParameterParser pp;
    private String voternameParam;
    * Set the request object. This is used for getting parameters.
    public void setRequest(MultipartRequest request)
    this.request = request;
    public void verifyEntry()
    throws Exception
    /* Connect to the database.*/
    //pp.setCharacterEncoding("utf-8");
    //String nameParam = request.getParameter("name");
    MultipartRequest mp;
    System.out.println("connected to db2 through insertemployee");
    /* Get all the parameters from the calling HTML form.*/
    String voternameParam = request.getParameter("votername");
    System.out.println("the votername is " + request.getParameter("votername"));
    System.out.println(voternameParam);
    String votersurnameParam = request.getParameter("votersurname");
    System.out.println("the votersurname is " + request.getParameter("votersurname"));
    String hiddenrelationParam = request.getParameter("texthiddenrelation");
    System.out.println("the relation is " + request.getParameter("texthiddenrelation"));
    String parentnameParam = request.getParameter("parentname");
    System.out.println("the parentname is " + request.getParameter("parentname"));
    String parentsurnameParam = request.getParameter("parentsurname");
    System.out.println("the parentsurname is " + request.getParameter("parentsurname"));
    String ageParam = request.getParameter("age");
    System.out.println("the age is " + request.getParameter("age"));
    String mergedageParam = request.getParameter("mergedage");
    System.out.println("the mergedage is " + request.getParameter("mergedage"));
    String hiddensexParam = request.getParameter("texthiddensex");
    System.out.println("the hiddensex is " + request.getParameter("texthiddensex"));
    //String dobParam = request.getParameter("dob");
    //System.out.println("the dob is " + request.getParameter("dob"));
    String finaladdressParam = request.getParameter("finaladdress");
    System.out.println("the finaladdress is " + request.getParameter("finaladdress"));
    String pincodeParam = request.getParameter("pincode");
    System.out.println("the pincode is " + request.getParameter("pincode"));
    String stateParam = request.getParameter("state");
    System.out.println("the state is " + request.getParameter("state"));
    String cityParam = request.getParameter("city");
    System.out.println("the city is " + request.getParameter("city"));
    String constituencyParam = request.getParameter("constituency");
    System.out.println("the constituency is " + request.getParameter("constituency"));
    String refnoParam = request.getParameter("refno");
    System.out.println("the refno is " + request.getParameter("refno"));
    System.out.println("encoding = " + System.getProperty("file.encoding"));
    public String getvotername()
    return request.getParameter("votername");
    public String getvotersurname()
    return request.getParameter("votersurname");
    public String getvoterrelation()
    return request.getParameter("texthiddenrelation");
    public String getparentname()
    return request.getParameter("parentname");
    public String getparentsurname()
    return request.getParameter("parentsurname");
    public String getage()
    return request.getParameter("age");
    public String getsex()
    return request.getParameter("texthiddensex");
    public String getadderess()
    return request.getParameter("finaladdress");
    public String getpin()
    return request.getParameter("pincode");
    public String getstate()
    return request.getParameter("state");
    public String getcity()
    return request.getParameter("city");
    public String getconst()
    return request.getParameter("constituency");
    public String getrefno()
    return request.getParameter("refno");
    public String getdob()
    return request.getParameter("mergedage");
    public String getpic()
    //String a=request.getParameter("pic");
    //a=a.substring(a.lastIndexOf("/")+1);
    //System.out.print("Java path is "+a);     
    //Enumeration enum=request.getFileNames();
    //while(enum.hasMoreElements())
    //     String abc=(String)enum.nextElement();
    //     System.out.print("Java the path is "+abc);     
    return request.getParameter("pic");
    String votername1;
    //public void setScope()
    //request.setAttribute("votername1" ,voternameParam );
    //insertEntry.jsp
    <jsp:useBean id="logicbean" class="pack.logicbean" scope="request"/>
    <%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
    <%@ page import="java.util.*,java.text.*" %>
    <%@ page import="com.oreilly.servlet.*" %>
    <%
    request.setCharacterEncoding("UTF-8");
    %>
    <!-- Perform the actions on the bean. -->
    <%
    request.setCharacterEncoding("UTF-8");
    %>
    <%
    try
    /* Set the request object.*/
    /* The request object is implicitly available in the JSP page.*/
    logicbean.setRequest(request);
    //MultiPartRequest mp=MultiPartRequest(request,"E:\Files");
    /* Insert the employee data into the database.*/
    logicbean.insertEntry();
    /* Run the query to retrieve the employee data from the database.*/
    //logicbean.runQueryInsert();
    catch (Exception e)
    System.out.println(e.getMessage());
    %>
    <HTML>
    <HEAD>
    <TITLE>
    Insert Record
    </TITLE>
    </HEAD>
    <BODY background="brown.bmp">
    <center><H2><%=session.getValue("ie.label")%>
    </H2>
    <font face = "Devanagari MT for IBM" size = +2>
    <b><%=session.getValue("ie.sd")%>|<%=session.getValue("ie.home")%></b>
    </font>
    </center>
    </BODY>
    </HTML>
    I have narrowed down the problem to the point where i understand that the "request.getParameter()" function for multipart is not able to understand or read UTF data properly. The out.println prints garbage from this function on the console. im using WAS
    plz help
    thanx in advance
    caffaine

    hi,
    To solve your problem Servlet Filters
    FILTER PROGRAM
    ===============
    package filters;
    import java.io.IOException;
    import javax.servlet.Filter;
    import javax.servlet.FilterChain;
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.UnavailableException;
    public class SetCharacterEncodingFilter implements Filter {
    // ----------------------------------------------------- Instance Variables
    * The default character encoding to set for requests that pass through
    * this filter.
    protected String encoding = null;
    * The filter configuration object we are associated with. If this value
    * is null, this filter instance is not currently configured.
    protected FilterConfig filterConfig = null;
    * Should a character encoding specified by the client be ignored?
    protected boolean ignore = true;
    // --------------------------------------------------------- Public Methods
    * Take this filter out of service.
    public void destroy() {
    this.encoding = null;
    this.filterConfig = null;
    * Select and set (if specified) the character encoding to be used to
    * interpret request parameters for this request.
    * @param request The servlet request we are processing
    * @param result The servlet response we are creating
    * @param chain The filter chain we are processing
    * @exception IOException if an input/output error occurs
    * @exception ServletException if a servlet error occurs
    public void doFilter(ServletRequest request, ServletResponse response,
    FilterChain chain)
         throws IOException, ServletException {
    // Conditionally select and set the character encoding to be used
    if (ignore || (request.getCharacterEncoding() == null)) {
    String encoding = selectEncoding(request);
    if (encoding != null)
    request.setCharacterEncoding(encoding);
         // Pass control on to the next filter
    chain.doFilter(request, response);
    * Place this filter into service.
    * @param filterConfig The filter configuration object
    public void init(FilterConfig filterConfig) throws ServletException {
         this.filterConfig = filterConfig;
    this.encoding = filterConfig.getInitParameter("encoding");
    String value = filterConfig.getInitParameter("ignore");
    if (value == null)
    this.ignore = true;
    else if (value.equalsIgnoreCase("true"))
    this.ignore = true;
    else if (value.equalsIgnoreCase("yes"))
    this.ignore = true;
    else
    this.ignore = false;
    // ------------------------------------------------------ Protected Methods
    * Select an appropriate character encoding to be used, based on the
    * characteristics of the current request and/or filter initialization
    * parameters. If no character encoding should be set, return
    * <code>null</code>.
    * <p>
    * The default implementation unconditionally returns the value configured
    * by the <strong>encoding</strong> initialization parameter for this
    * filter.
    * @param request The servlet request we are processing
    protected String selectEncoding(ServletRequest request) {
    return (this.encoding);
    web-xml entry
    +++++++++++
    <filter>     
         <filter-name>Set Character Encoding</filter-name>
    <filter-class>filters.SetCharacterEncodingFilter</filter-class>
              <init-param>
    <param-name>encoding</param-name>
    <param-value>UTF-8</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>Set Character Encoding</filter-name>
    <url-pattern>*.jsp</url-pattern>
    </filter-mapping>

  • [ OAS 10.1.2.0.2 ] Convert J2EE 1.4 webapp to J2EE 1.3

    Hi,
    I have a project nicely running under tomcat 5.x and OC4J standalone 10.1.3 ...
    Both rely on J2EE 1.4 accroding to what i understood ...
    But production environnement is OAS 10.1.2.0.2 ... relying on J2EE 1.3 :(
    Deploying the war don't work of course.
    So i've made lots of search to find a way ... i have made a few steps forward but i think i need help now :s ...
    Correct me if i'm wrong, to deploy J2EE 1.3 web app :
    - java classes can be compiled with jdk 1.4.2_x but not 5.0,
    - servlet api 2.3 and jsp 1.2 are needed,
    - jstl can't be higher than 1.0.x.
    So i refactored my code to make it compile with jdk 1.4.2_13.
    Regarding servlet api and jsp, i suppose webapp is using the jars provided with OC4J.
    Do i need to do anything else ?
    I also made little customization of my web.xml :
    <?xml version="1.0" encoding="UTF-8"?>
    <!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>
        <!-- uncomment the following if you're using the open-session-in-view pattern
             note: that you'll need to update the filter-class value if you've changed
             the defaults for the package and/or filter name
        <filter>
            <filter-name>OpenSessionInViewFilter</filter-name>
            <filter-class>org.andromda.spring.presentation.AndroMDAOpenSessionInViewFilter</filter-class>
            <init-param>
                <param-name>singleSession</param-name>
                <param-value>false</param-value>
            </init-param>
        </filter>
        -->
        <filter>
            <filter-name>ResponseOverrideFilter</filter-name>
            <filter-class>org.displaytag.filter.ResponseOverrideFilter</filter-class>
        </filter>
        <!-- uncomment the following if you're using the open-session-in-view pattern
        <filter-mapping>
            <filter-name>OpenSessionInViewFilter</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
        -->
        <filter-mapping>
            <filter-name>ResponseOverrideFilter</filter-name>
            <url-pattern>*.do</url-pattern>
        </filter-mapping>
        <filter-mapping>
            <filter-name>ResponseOverrideFilter</filter-name>
            <url-pattern>*.jsp</url-pattern>
        </filter-mapping>
        <servlet>
            <servlet-name>action</servlet-name>
            <servlet-class>org.andromda.presentation.bpm4struts.ActionServlet</servlet-class>
            <init-param>
                <param-name>config</param-name>
                <param-value>/WEB-INF/struts-config.xml</param-value>
            </init-param>
            <init-param>
                <param-name>debug</param-name>
                <param-value>3</param-value>
            </init-param>
            <init-param>
                <param-name>detail</param-name>
                <param-value>3</param-value>
            </init-param>
            <init-param>
                <param-name>validate</param-name>
                <param-value>true</param-value>
            </init-param>
            <init-param>
                <param-name>listings</param-name>
                <param-value>false</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <!-- precompilation merge-point -->
        <servlet-mapping>
            <servlet-name>action</servlet-name>
            <url-pattern>*.do</url-pattern>
        </servlet-mapping>
        <!-- session-config merge-point -->
        <welcome-file-list>
            <welcome-file>index.jsp</welcome-file>
        </welcome-file-list>
        <error-page>
            <error-code>400</error-code>
            <location><![CDATA[/error-page.jsp?code=400]]></location>
        </error-page>
        <error-page>
            <error-code>403</error-code>
            <location><![CDATA[/error-page.jsp?code=403]]></location>
        </error-page>
        <error-page>
            <error-code>404</error-code>
            <location><![CDATA[/error-page.jsp?code=404&resource=true]]></location>
        </error-page>
        <error-page>
            <error-code>500</error-code>
            <location><![CDATA[/error-page.jsp?code=500&exception=true]]></location>
        </error-page>
        <error-page>
            <exception-type>java.lang.Throwable</exception-type>
            <location><![CDATA[/error-page.jsp?code=exception&exception=true]]></location>
        </error-page>
        <!-- taglib merge-point -->
         <!-- JSTL -->
         <taglib>
              <taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri>
              <taglib-location>/WEB-INF/lib/standard.jar</taglib-location>
         </taglib>
             <taglib>
                 <taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
                 <taglib-location>/WEB-INF/lib/standard.jar</taglib-location>
             </taglib>
             <taglib>
                 <taglib-uri>http://java.sun.com/jstl/xml</taglib-uri>
                 <taglib-location>/WEB-INF/lib/standard.jar</taglib-location>
             </taglib>
         <!-- STRUTS -->
         <taglib>
              <taglib-uri>/WEB-INF/tld/struts-bean-1.1.tld</taglib-uri>
              <taglib-location>/WEB-INF/tld/struts-bean-1.1.tld</taglib-location>
         </taglib>
             <taglib>
                 <taglib-uri>/WEB-INF/tld/struts-html-1.1.tld</taglib-uri>
                 <taglib-location>/WEB-INF/tld/struts-html-1.1.tld</taglib-location>
             </taglib>
             <taglib>
                 <taglib-uri>/WEB-INF/tld/struts-tiles-1.1.tld</taglib-uri>
                 <taglib-location>/WEB-INF/tld/struts-tiles-1.1.tld</taglib-location>
             </taglib>
             <taglib>
                 <taglib-uri>/WEB-INF/tld/struts-logic-1.1.tld</taglib-uri>
                 <taglib-location>/WEB-INF/tld/struts-logic-1.1.tld</taglib-location>
             </taglib>
    </web-app> Each time i start my OC4J container, i get this error :
    07/02/06 11:37:05 gesprod: Error preloading servlet
    javax.servlet.UnavailableException
         at org.apache.struts.action.ActionServlet.init(ActionServlet.java:368)
         at javax.servlet.GenericServlet.init(GenericServlet.java:258)
         at org.andromda.presentation.bpm4struts.ActionServlet.init(ActionServlet.java:19)
         at com.evermind.server.http.HttpApplication.loadServlet(HttpApplication.java:2354)
         at com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4795)
         at com.evermind.server.http.HttpApplication.initPreloadServlets(HttpApplication.java:4889)
         at com.evermind.server.http.HttpApplication.initDynamic(HttpApplication.java:1015)
         at com.evermind.server.http.HttpApplication.<init>(HttpApplication.java:549)
         at com.evermind.server.Application.getHttpApplication(Application.java:890)
         at com.evermind.server.http.HttpServer.getHttpApplication(HttpServer.java:707)
         at com.evermind.server.http.HttpSite.initApplications(HttpSite.java:625)
         at com.evermind.server.http.HttpSite.setConfig(HttpSite.java:278)
         at com.evermind.server.http.HttpServer.setSites(HttpServer.java:278)
         at com.evermind.server.http.HttpServer.setConfig(HttpServer.java:179)
         at com.evermind.server.ApplicationServer.initializeHttp(ApplicationServer.java:2394)
         at com.evermind.server.ApplicationServer.setConfig(ApplicationServer.java:1551)
         at com.evermind.server.ApplicationServerLauncher.run(ApplicationServerLauncher.java:92)
         at java.lang.Thread.run(Thread.java:534)If you could provide me some hints, it would be very kind of you.
    Best regards,
    Geoffrey Jachimiak

    Hi,
    Some good news, JAAS was easily configured using web console.
    I can navigate through my first forms.
    I still got some errors, i think it is related to the way jsp and taglibs are mixed.
    It may be different from jsp 2.0 ... i've read some docs about EL expressions ...
    I'll deepen this :)
    Here is the trace in application.log
    07/02/06 14:26:39 gesprod: Servlet error
    java.lang.IllegalArgumentException: can't parse argument number param.code
        at java.text.MessageFormat.makeFormat(MessageFormat.java:1323)
        at java.text.MessageFormat.applyPattern(MessageFormat.java:447)
        at java.text.MessageFormat.<init>(MessageFormat.java:347)
        at org.apache.struts.util.MessageResources.getMessage(MessageResources.java:287)
        at org.apache.struts.taglib.TagUtils.message(TagUtils.java:1032)
        at org.apache.struts.taglib.bean.MessageTag.doStartTag(MessageTag.java:224)
        at _error_2d_page._jspService(_error_2d_page.java:77)
        at com.orionserver[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
        at oracle.jsp.runtimev2.JspPageTable.compileAndServe(JspPageTable.java:569)
        at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:305)
        at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
        at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:824)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:222)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.GetParametersRequestDispatcher.forward(GetParametersRequestDispatcher.java:257)
        at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
        at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:263)
        at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
        at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:318)
        at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
        at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
        at org.andromda.presentation.bpm4struts.ActionServlet.doPost(ActionServlet.java:48)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:824)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:222)
        at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
        at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:263)
        at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
        at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:318)
        at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
        at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
        at org.andromda.presentation.bpm4struts.ActionServlet.doPost(ActionServlet.java:48)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
        at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:663)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.AJPRequestHandler.run(AJPRequestHandler.java:224)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.AJPRequestHandler.run(AJPRequestHandler.java:133)
        at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
        at java.lang.Thread.run(Thread.java:534)Best regards,
    Geoffrey Jachimiak

  • How to catch and display a link content in another portlet page?

    Can you tell me how to display a URL content into next page after an user click s on this link? I am developing a JSR 168 portlet under a Portal. I have 3 pages so far in my portlet. view.jsp, view2.jsp and IpByHourPage.jsp. view2.jsp displays a lis of IP address. When an user clicks on an IP in view2.jsp, it goes to IpByHourPage.jsp. How to catch the IP address such as 123.23.89.21 that an user just click displayed in IpByHourPage.jsp. I don't know why I got null value returned.
    Also, I don't know how to do a "go back to previous page". I want to go back to view2.jsp from IpbyHourPage.jsp
    Here is my code
    in view2.jsp
    <portlet:renderURL var="aURL">
    <portlet:param name="goto" value="IpByHourPage"/>
    </portlet:renderURL>
    <a href="<%=aURL.toString() %> "><%=MyIP%></a>
    in IpByHourPage.jsp
    <%
    String MyIPHour = request.getParameter("goto");
    %>
    <h1>IP Report by Hour ( <%=MyIPHour%> )</h1>
    <portlet:renderURL var="Ret_IPByHour">
    <portlet:param name="Ret_IPHourPage" value="Ret_IPByHourPage"/>
    </portlet:renderURL>
    <center> <a href="<%=Ret_IPByHour.toString() %> "><b>Choose Another IP</b></a></center>
    in my .java file
    protected void doView(RenderRequest request, RenderResponse response)
    throws PortletException, IOException, UnavailableException {
    response.setContentType("text/html");
    String MyBegDate = request.getParameter("BegDate");
    String MyEndDate = request.getParameter("EndDate");
    String MyNetworks = request.getParameter("networks");
    String MyYourName = request.getParameter("yourname");
    PortletURL renderURL = response.createRenderURL();
    renderURL.setPortletMode(PortletMode.VIEW);
    request.setAttribute("renderURL", renderURL.toString() )
    String GotoRenderAction = request.getParameter("goto");
    String MyIPHourAction = request.getParameter("Ret_IPHourPage");
    if ( (MyIPHourAction!=null) && MyIPHourAction.equals("Ret_IPByHourPage") )
    PortletRequestDispatcher kk = getPortletContext().getRequestDispatcher("/view2.jsp");
    kk.include(request, response);
    if (MyIPHourAction != null && MyIPHourAction.equals("Ret_IPByHourPage"))
    PortletRequestDispatcher mm = getPortletContext().getRequestDispatcher("/view2.jsp");
    mm.include(request, response);
    if (GotoRenderAction != null && GotoRenderAction.equals("IpByHourPage"))
    request.setAttribute("BegDate", "MyBegDate");
    request.setAttribute("EndDate", "MyEndDate");
    System.out.println("BegDate" + MyBegDate);
    System.out.println("Endate" + MyEndDate);
    PortletRequestDispatcher mm = getPortletContext().getRequestDispatcher("/IpByHourPage.jsp");
    mm.include(request, response);
    if(MyEndDate!= null )
    PortletRequestDispatcher prd = getPortletContext().getRequestDispatcher("/view2.jsp");
    prd.include(request, response);
    else if (MyEndDate==null && GotoRenderAction == null)
    PortletRequestDispatcher prd = getPortletContext().getRequestDispatcher("/view.jsp");
    prd.include(request, response);
    The problem for above code is the clicked single IP can not be displayed in IpByHourPage.jsp. and I cannot go back to view2.jsp from IpByHourPage.jsp. when I click "Choose Another IP"
    I find out that the MyBegDate and MyEndDate values are all null when I click Choose Another IP link. I got the following error message
    Caused by: javax.servlet.ServletException: Unparseable date: "null null"
         at org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:858)
         at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
         at org.apache.jsp.view2_jsp._jspService(view2_jsp.java:651)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    How to fix above problems. Thanks

    I think the problems are related to portletsession. But I don't know how to use it. How to put portletsession into doview method or my jsp pages. Can anyone tell me in my code? Thanks a lot.

  • Issue while deploying the app :Deregister the mbean because of uncaught ini

    HI ,
    I am getting below error when the application starts on WAS. The app is running fine in local machine
    Deregister the mbean because of uncaught init() exception thrown by servlet action: javax.servlet.UnavailableException: Parsing error processing resource path
    I have tried multiple things like checking the jars and struts config.
    Appreciate any assistance
    [1/9/13 11:52:47:021 MST] 0000002f ApplicationMg A WSVR0204I: Application: rrsinvEAR Application build level: Unknown
    [1/9/13 11:52:47:481 MST] 0000002f WebGroup A SRVE0169I: Loading Web Module: rrsinv.
    [1/9/13 11:52:49:104 MST] 0000002f ServletWrappe E Deregister the mbean because of uncaught init() exception thrown by servlet action: javax.servlet.UnavailableException: Parsing error processing resource path
         at org.apache.struts.action.ActionServlet.handleConfigException(ActionServlet.java:1035)
         at org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServlet.java:1014)
         at org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:955)
         at org.apache.struts.action.ActionServlet.init(ActionServlet.java:470)
         at javax.servlet.GenericServlet.init(GenericServlet.java:256)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:185)
         at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.init(ServletWrapper.java:316)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.initialize(ServletWrapper.java:1119)
         at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.initialize(ServletWrapper.java:149)
         at com.ibm.wsspi.webcontainer.extension.WebExtensionProcessor.createServletWrapper(WebExtensionProcessor.java:99)
         at com.ibm.ws.webcontainer.webapp.WebApp.getServletWrapper(WebApp.java:742)
         at com.ibm.ws.webcontainer.webapp.WebApp.initializeTargetMappings(WebApp.java:422)
         at com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinish(WebApp.java:275)
         at com.ibm.ws.wswebcontainer.webapp.WebApp.initialize(WebApp.java:272)
         at com.ibm.ws.wswebcontainer.webapp.WebGroup.addWebApplication(WebGroup.java:88)
         at com.ibm.ws.wswebcontainer.VirtualHost.addWebApplication(VirtualHost.java:157)
         at com.ibm.ws.wswebcontainer.WebContainer.addWebApp(WebContainer.java:655)
         at com.ibm.ws.wswebcontainer.WebContainer.addWebApplication(WebContainer.java:608)
         at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:333)
         at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:549)
         at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1295)
         at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1129)
         at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:567)
         at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:814)
         at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:948)
         at com.ibm.ws.runtime.component.ApplicationMgrImpl$1.run(ApplicationMgrImpl.java:1478)
         at com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManagerImpl.java:3811)
         at com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextManagerImpl.java:3893)
         at com.ibm.ws.security.core.SecurityContext.runAsSystem(SecurityContext.java:245)
         at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:1483)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
         at java.lang.reflect.Method.invoke(Method.java:615)
         at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:62)
         at sun.reflect.GeneratedMethodAccessor68.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
         at java.lang.reflect.Method.invoke(Method.java:615)
         at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:265)
         at javax.management.modelmbean.RequiredModelMBean.invokeMethod(RequiredModelMBean.java:1089)
         at javax.management.modelmbean.RequiredModelMBean.invoke(RequiredModelMBean.java:971)
         at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:231)
         at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:238)
         at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:833)
         at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:802)
         at com.ibm.ws.management.AdminServiceImpl$1.run(AdminServiceImpl.java:1057)
         at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
         at com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.java:950)
         at com.ibm.ws.management.commands.AdminServiceCommands$InvokeCmd.execute(AdminServiceCommands.java:251)
         at com.ibm.ws.console.core.mbean.MBeanHelper.invoke(MBeanHelper.java:239)
         at com.ibm.ws.console.appdeployment.ApplicationDeploymentCollectionAction.execute(ApplicationDeploymentCollectionAction.java:536)
         at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1486)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:528)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:966)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:907)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:118)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
         at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:701)
         at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:646)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:475)
         at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:463)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:308)
         at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1070)
         at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:273)
         at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
         at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:319)
         at com.ibm.isclite.container.controller.InformationController.processForwardConfig(InformationController.java:159)
         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1486)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:528)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:966)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:907)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:145)
         at com.ibm.ws.console.core.servlet.WSCUrlFilter.setUpCommandAssistence(WSCUrlFilter.java:792)
         at com.ibm.ws.console.core.servlet.WSCUrlFilter.continueStoringTaskState(WSCUrlFilter.java:363)
         at com.ibm.ws.console.core.servlet.WSCUrlFilter.doFilter(WSCUrlFilter.java:229)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
         at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:701)
         at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:646)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:475)
         at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:463)
         at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:92)
         at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:744)
         at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1433)
         at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:93)
         at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465)
         at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:394)
         at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
         at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:152)
         at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:213)
         at com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions(AbstractAsyncFuture.java:195)
         at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
         at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:194)
         at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:782)
         at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:863)
         at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1510)
    [1/9/13 11:52:49:204 MST] 0000002f WebExtensionP W Servlet action is currently unavailable: Parsing error processing resource path
    [1/9/13 11:52:49:204 MST] 0000002f VirtualHost I SRVE0250I: Web Module rrsinv has been bound to default_host[*:9081,*:80,*:9444,*:5060,*:5061,*:443].
    [1/9/13 11:52:49:234 MST] 0000002f ApplicationMg A WSVR0221I: Application started: rrsinvEAR
    Edited by: 980864 on Jan 9, 2013 10:48 AM
    Edited by: 980864 on Jan 9, 2013 11:17 AM

    In the future please post Servlet related questions at the Servlet forum.
    manoj_s1 wrote:
    [7/31/08 14:54:53:437 IST] 00000037 ServletWrappe E Deregister the mbean because of uncaught init() exception thrown by servlet cb: javax.servlet.UnavailableException
         at org.apache.struts.action.ActionServlet.init(ActionServlet.java:402)The servlet class which is declared with the servlet-name 'cb' has thrown an unchecked exception in its init() method. Debug and fix it.

  • Please look at this problem and give me solution

    hi all,
    iam getting this problem when i run th server
    javax.servlet.UnavailableException: Missing configuration resource for path /WEB-INF/struts-config.xml
    so, i am unable to run jsp, servlets using struts in tomcat.
    pls solve this problem
    --> i have a servlet file namd Form.java
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.ServletOutputStream;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
    public class Form extends Action {
    public ActionForward execute(ActionMapping mapping,
    ActionForm form,
    HttpServletRequest request,
    HttpServletResponse response)
    throws IOException, ServletException {
    ServletOutputStream sos=response.getOutputStream();
    String fname=request.getParameter("firstname");
    String lname=request.getParameter("lastname");
    String dob=request.getParameter("dob");
    String uid=request.getParameter("uid");
    String pwd=request.getParameter("pwd");
    sos.println("First Name = " + fname +" "+lname+"<br>");
    sos.println("DOB = " + dob);
    sos.println("Username = " + uid);
    sos.println("password = " + pwd);
    String target = new String("success");
    return (mapping.findForward(target));
    -->jsp file named form.jsp
    <html>
    <body>
    exe on httpservlet
    <form action="http://localhost:8080/satish/Form">
    enter firstname <input type= "text" name="firstname"><br>
    enter lastname <input type="text" name="lastname"><br>
    enter DateofBirth <input type="text" name="dob"><br>
    enter userid <input type="text" name="uid"><br>
    enter password <input type="text" name="pwd"><br>
    <input type="submit" value="register">
    </form>
    </body>
    </html>
    and i have web.xml in F:\projects\tomcat\webapps\satish\WEB-INF
    with below contents
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!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>
    <display-name>struts example</display-name>
    <description>
    Mycode
    </description>
    <!--GENERATED_JSPS-->
    <!-- JSPC servlet mappings start -->
    <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class> org.apache.struts.action.ActionServlet </servlet-class>
    <init-parameter>
    <name>application</name>
    <value>ApplicationResources</value>
    </init-parameter>
    <init-param>
    <param-name>config</param-name>
    <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
    </servlet>
    <servlet-mapping>
    <servlet-name>action </servlet-name>
    <url-pattern>/satish/Form</url-pattern>
    </servlet-mapping>
    <!-- JSPC servlet mappings end -->
    </web-app>
    and struts-config.xml file in F:\projects\tomcat\webapps\satish
    with below contents
    <!DOCTYPE struts-config PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
    "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd" >
    <struts-config>
    <action-mappings>
    <action path="/form" type="Form" input="/form.jsp" >
    </action>
    </action-mappings>
    </struts-config>
    and run the tomcat server
    typed http://localhost/satish/form.jsp
    given the input and clicked submit button and i got
    this
    HTTP Status 404 - /satish/Form
    type Status report
    message /satish/Form
    description The requested resource (/satish/Form) is not available.
    Apache Tomcat/5.0.5

    double post:
    http://forum.java.sun.com/thread.jspa?threadID=684573&tstart=0

Maybe you are looking for