I think I have made all kinds of mistakes in the
Struts history.

I was working on VALIDATION.  However, when I leave
all text fields blank and submit the form for testing,
I got HTTP Status 500 -

java.lang.IllegalArgumentException: Path
.frame.content does not start with a "/" character

I think the problem is in my struts-config.xml file. 
I do not see that I put a "/" in front of any tile
expressions; in particular, .frame.content

(My struts-config.xml can be found in the attachment)

The Tomcat logs file can also be found in the
attachment.  

In the browser window, I got:

java.lang.IllegalArgumentException: Path
.frame.content does not start with a "/" character

org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1062)

org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:274)

org.apache.struts.action.RequestProcessor.internalModuleRelativeForward(RequestProcessor.java:1012)

org.apache.struts.tiles.TilesRequestProcessor.internalModuleRelativeForward(TilesRequestProcessor.java:345)

org.apache.struts.action.RequestProcessor.processValidate(RequestProcessor.java:980)

org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:255)

org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)

org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)

javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


                
_______________________________
Do you Yahoo!?
Express yourself with Y! Messenger! Free. Download now. 
http://messenger.yahoo.com
<?xml version="1.0" encoding="ISO-8859-1" ?>

<!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>

<!-- ==================================== Data Source Configuration -->
<!--
  <data-sources>
    <data-source>
      <set-property property="maxCount"
                       value="4"/>
      <set-property property="minCount"
                       value="2"/>
      <set-property property="description"
                       value="Artimus:MySQL Data Source Configuration"/>
      <set-property property="driverClass"
                       value="com.mysql.jdbc.Driver"/>
      <set-property property="url"
                       value="jdbc:mysql://localhost:3306/artimus"/>
      <set-property property="autoCommit"
                       value="true"/>
      <set-property property="user"
                       value="javauser"/>
      <set-property property="password"
                       value="javadude"/>
    </data-source>
  </data-sources>

-->
<!-- ======================================== Form Bean Definitions -->

  <form-beans>

     <!-- Menu Form Bean -->

     <form-bean
        name="messageForm"
        type="org.apache.struts.validator.DynaValidatorForm">
          <form-property
            name="msgtype"
            type="java.lang.String"/>
          <form-property
            name="sender"
            type="java.lang.String"/>
          <form-property
            name="receiver"
            type="java.lang.String"/>
          <form-property
            name="messageTopic"
            type="java.lang.String"/>
          <form-property
            name="priority"
            type="java.lang.String"/>
          <form-property
            name="distribution"
            type="java.lang.String"/>
          <form-property
            name="messageBody"
            type="java.lang.String"/>
      </form-bean>

     <form-bean
        name="editTitleForm"
        type="org.apache.struts.validator.DynaValidatorForm">
          <form-property
            name="document"
            type="java.lang.String"/>
          <form-property
            name="title"
            type="java.lang.String"/>
     </form-bean>

     <form-bean
        name="editPageForm"
        type="org.apache.struts.validator.DynaValidatorForm">
          <form-property
            name="document"
            type="java.lang.String"/>
          <form-property
            name="title"
            type="java.lang.String"/>
          <form-property
            name="body"
            type="java.lang.String"/>
     </form-bean>

     <form-bean
        name="addLinkForm"
        type="org.apache.struts.validator.DynaValidatorForm">
          <form-property
            name="document"
            type="java.lang.String"/>
          <form-property
            name="linkname"
            type="java.lang.String"/>
          <form-property
            name="linklocation"
            type="java.lang.String"/>
     </form-bean>

     <form-bean
        name="addFileForm"
        type="org.apache.struts.validator.DynaValidatorForm">
          <form-property
            name="document"
            type="java.lang.String"/>
          <form-property
            name="linkname"
            type="java.lang.String"/>
          <form-property
            name="filename"
            type="java.lang.String"/>
     </form-bean>

  </form-beans>


<!-- =================================== Global Forward Definitions -->

  <global-forwards>

     <forward
        name="welcome"
        path="/do/Home"/>

     <forward
        name="cancel"
        path="/do/Home"
        redirect="true"/>

     <forward
        name="done"
        path="/do/Home"/>

     <forward
        name="exit"
        redirect="true"
        path="http://jakarta.apache.org/"/>

     <forward
        name="failure"
        path="/do/Home"/>

     <forward
        name="logon"
        path="/do/admin/Menu"/>

  </global-forwards>

<!-- =================================== Action Mapping Definitions -->

  <action-mappings>

    <action
        path="/Home"
        parameter=".frame.Home"
        type="org.apache.struts.actions.ForwardAction"/>

    <action
        path="/admin/Menu"
        forward="/do/Menu"/>

    <action
        path="/Register"
        parameter=".frame.Enrollment"
        type="org.apache.struts.actions.ForwardAction"/>

    <action
        path="/ContentMgmt"
        type="org.dhsinfo.content.SelectPage">
       <forward
            name="success"
            path=".frame.Content"/>
    </action>

    <action
        path="/content/UpdateTitle"
        type="org.dhsinfo.content.doSomething1"
        name="editTitleForm"
        scope="request"
        validate="true"
        input=".frame.content">
       <forward
           name="success"
           path=".title.Confirmation"/>
    </action>

    <action
        path="/content/UpdatePage"
        type="org.dhsinfo.content.doSomething2"
        name="editPageForm"
        scope="request"
        validate="true"
        input=".frame.Content">
        <forward
            name="success"
            path=".document.Confirmation"/>
    </action>

    <action
        path="/content/AddLinks"
        type="org.dhsinfo.content.doSomething3"
        name="addLinkForm"
        scope="request"
        validate="true"
        input=".frame.content">
      <forward
           name="success"
           path=".link.Confirmation"/>
    </action>

    <action
        path="/content/AddFiles"
        type="org.dhsinfo.content.doSomething4"
        name="addFileForm"
        scope="request"
        validate="true"
        input=".frame.content">
       <forward
            name="success"
            path=".file.Confirmation"/>
    </action>

    <action
        path="/MailMessage"
        parameter=".message.Form"
        name="messageForm"
        type="org.apache.struts.actions.ForwardAction"/>

    <action
        path="/message/SendMessage"
        type="org.dhsinfo.message.SendMessage"
        name="messageForm"
        scope="request"
        validate="false"
        input=".message.Form">
       <forward
            name="success"
            path=".message.Confirmation"/>
    </action>

  </action-mappings>

  <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="definitions-debug" value="1" />
    <set-property property="definitions-parser-details" value="0" />
    <set-property property="definitions-parser-validate" 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"/>
    </plug-in>

</struts-config>
2004-09-22 17:42:59 
StandardContext[/balancer]org.apache.webapp.balancer.BalancerFilter: init(): 
ruleChain: [org.apache.webapp.balancer.RuleChain: 
[org.apache.webapp.balancer.rules.URLStringMatchRule: Target string: News / Redirect 
URL: http://www.cnn.com], [org.apache.webapp.balancer.rules.RequestParameterRule: 
Target param name: paramName / Target param value: paramValue / Redirect URL: 
http://www.yahoo.com], [org.apache.webapp.balancer.rules.AcceptEverythingRule: 
Redirect URL: http://jakarta.apache.org]]
2004-09-22 17:43:00 StandardContext[/artimus_1_0_b4]action: Loading application 
resources from resource resources.application
2004-09-22 17:43:00 StandardContext[/artimus_1_0_b4]action: Initializing configuration 
from resource path /WEB-INF/struts-config.xml
2004-09-22 17:43:00 StandardContext[/artimus_1_0_b4]action: Initializing application 
data source org.apache.struts.action.DATA_SOURCE
2004-09-22 17:43:00 StandardContext[/artimus_1_0_b4]action: Exception initializing 
application data source org.apache.struts.action.DATA_SOURCE
java.sql.SQLException: open: java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
        at org.apache.struts.util.GenericDataSource.open(GenericDataSource.java:662)
        at 
org.apache.struts.action.ActionServlet.initDataSources(ActionServlet.java:1078)
        at org.apache.struts.action.ActionServlet.init(ActionServlet.java:472)
        at 
org.apache.struts.tiles.ActionComponentServlet.init(ActionComponentServlet.java:52)
        at javax.servlet.GenericServlet.init(GenericServlet.java:211)
        at 
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1029)
        at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:862)
        at 
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4013)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4357)
        at 
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
        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.StandardHostDeployer.install(StandardHostDeployer.java:277)
        at org.apache.catalina.core.StandardHost.install(StandardHost.java:832)
        at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:617)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:431)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:968)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:349)
        at 
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
        at org.apache.catalina.core.StandardService.start(StandardService.java:480)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:556)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:284)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:422)

2004-09-22 17:43:00 StandardContext[/artimus_1_0_b4]Servlet /artimus_1_0_b4 threw 
load() exception
javax.servlet.ServletException: Exception initializing application data source 
org.apache.struts.action.DATA_SOURCE
        at 
org.apache.struts.action.ActionServlet.initDataSources(ActionServlet.java:1081)
        at org.apache.struts.action.ActionServlet.init(ActionServlet.java:472)
        at 
org.apache.struts.tiles.ActionComponentServlet.init(ActionComponentServlet.java:52)
        at javax.servlet.GenericServlet.init(GenericServlet.java:211)
        at 
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1029)
        at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:862)
        at 
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4013)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4357)
        at 
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
        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.StandardHostDeployer.install(StandardHostDeployer.java:277)
        at org.apache.catalina.core.StandardHost.install(StandardHost.java:832)
        at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:617)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:431)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:968)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:349)
        at 
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
        at org.apache.catalina.core.StandardService.start(StandardService.java:480)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:556)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:284)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:422)
----- Root Cause -----
java.sql.SQLException: open: java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
        at org.apache.struts.util.GenericDataSource.open(GenericDataSource.java:662)
        at 
org.apache.struts.action.ActionServlet.initDataSources(ActionServlet.java:1078)
        at org.apache.struts.action.ActionServlet.init(ActionServlet.java:472)
        at 
org.apache.struts.tiles.ActionComponentServlet.init(ActionComponentServlet.java:52)
        at javax.servlet.GenericServlet.init(GenericServlet.java:211)
        at 
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1029)
        at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:862)
        at 
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4013)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4357)
        at 
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
        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.StandardHostDeployer.install(StandardHostDeployer.java:277)
        at org.apache.catalina.core.StandardHost.install(StandardHost.java:832)
        at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:617)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:431)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:968)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:349)
        at 
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
        at org.apache.catalina.core.StandardService.start(StandardService.java:480)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:556)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:284)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:422)

2004-09-22 17:43:00 StandardContext[/artimus_1_0_b4]validator: Loading validation file 
from '/WEB-INF/validation.xml'
2004-09-22 17:43:00 StandardContext[/logon]action: Loading application resources from 
resource resources.application
2004-09-22 17:43:00 StandardContext[/logon]action: Initializing configuration from 
resource path /WEB-INF/struts-config.xml
2004-09-22 17:43:01 StandardContext[/logon]action: Process servletName=action, 
urlPattern=*.do
2004-09-22 17:43:01 StandardContext[/logon]action: Mapping for servlet 'action' = 
'*.do'
2004-09-22 17:43:02 StandardContext[/jsp-examples]ContextListener: contextInitialized()
2004-09-22 17:43:02 StandardContext[/jsp-examples]SessionListener: contextInitialized()
2004-09-22 17:43:03 StandardContext[/servlets-examples]ContextListener: 
contextInitialized()
2004-09-22 17:43:03 StandardContext[/servlets-examples]SessionListener: 
contextInitialized()
2004-09-22 17:43:22 StandardWrapperValve[action]: Servlet.service() for servlet action 
threw exception
java.lang.IllegalArgumentException: Path .frame.content does not start with a "/" 
character
        at 
org.apache.catalina.core.ApplicationContext.getRequestDispatcher(ApplicationContext.java:378)
        at 
org.apache.catalina.core.ApplicationContextFacade.getRequestDispatcher(ApplicationContextFacade.java:196)
        at 
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1062)
        at 
org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:274)
        at 
org.apache.struts.action.RequestProcessor.internalModuleRelativeForward(RequestProcessor.java:1012)
        at 
org.apache.struts.tiles.TilesRequestProcessor.internalModuleRelativeForward(TilesRequestProcessor.java:345)
        at 
org.apache.struts.action.RequestProcessor.processValidate(RequestProcessor.java:980)
        at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:255)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
        at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
        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.StandardContextValve.invokeInternal(StandardContextValve.java:198)
        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.StandardHostValve.invoke(StandardHostValve.java:137)
        at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
        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.StandardEngineValve.invoke(StandardEngineValve.java:109)
        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.ContainerBase.invoke(ContainerBase.java:929)
        at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
        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:683)
        at java.lang.Thread.run(Thread.java:534)

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to