Struts documentation

where can i download documentation for 'struts'.
Which is better 'struts' or 'javaserver faces'?

You can download Struts from http://jakarta.apache.org/struts
Struts and JSF are pretty much complementary technologies: in the MVC design, Struts focuses mainly on the 'C' while JSF's focus is on the 'V' .

Similar Messages

  • Error while running the struts page

    Hi ,
    I am trying to access a jsp page written with struts. I am using tomcat4.0.1.My jsp page is in <webapps/strutsapp1/>directory where strutsapp1 is my web application. When i go to that page like -
    http://localhost:8080/strutsapp1/index.jsp i get the following error
    Apache Tomcat/4.0.1 - HTTP Status 404 - /strutsapp1/index.jsp
    type Status report
    message /strutsapp1/index.jsp
    description The requested resource (/strutsapp1/index.jsp) is not available.
    kindly suggest.
    Regards,
    nikhil

    Hi,
    I restarted the application after putting my webapp.
    The following are the lines from the logs.It looks to me there is
    org.xml.sax.SAXParseException error.?What is the solution to that?
    2002-12-04 13:50:42 WebappLoader[manager]: Deploying class repositories to work directory C:\jakarta-tomcat-4.0.1\work\localhost\manager
    2002-12-04 13:50:42 StandardManager[manager]: Seeding random number generator class java.security.SecureRandom
    2002-12-04 13:50:42 StandardManager[manager]: Seeding of random number generator has been completed
    2002-12-04 13:50:42 ContextConfig[manager]: Configured an authenticator for method BASIC
    2002-12-04 13:50:42 StandardWrapper[manager:default]: Loading container servlet default
    2002-12-04 13:50:42 default: init
    2002-12-04 13:50:42 StandardWrapper[manager:invoker]: Loading container servlet invoker
    2002-12-04 13:50:42 invoker: init
    2002-12-04 13:50:42 jsp: init
    2002-12-04 13:50:42 StandardHost[localhost]: Installing web application at context path /cabo from URL file:C:\jakarta-tomcat-4.0.1\webapps\cabo
    2002-12-04 13:50:42 WebappLoader[cabo]: Deploying class repositories to work directory C:\jakarta-tomcat-4.0.1\work\localhost\cabo
    2002-12-04 13:50:42 StandardManager[cabo]: Seeding random number generator class java.security.SecureRandom
    2002-12-04 13:50:42 StandardManager[cabo]: Seeding of random number generator has been completed
    2002-12-04 13:50:42 StandardWrapper[cabo:default]: Loading container servlet default
    2002-12-04 13:50:42 default: init
    2002-12-04 13:50:42 StandardWrapper[cabo:invoker]: Loading container servlet invoker
    2002-12-04 13:50:42 invoker: init
    2002-12-04 13:50:42 jsp: init
    2002-12-04 13:50:43 StandardHost[localhost]: Installing web application at context path from URL file:C:\jakarta-tomcat-4.0.1\webapps\ROOT
    2002-12-04 13:50:43 WebappLoader[]: Deploying class repositories to work directory C:\jakarta-tomcat-4.0.1\work\localhost\_
    2002-12-04 13:50:43 StandardManager[]: Seeding random number generator class java.security.SecureRandom
    2002-12-04 13:50:43 StandardManager[]: Seeding of random number generator has been completed
    2002-12-04 13:50:43 StandardWrapper[:default]: Loading container servlet default
    2002-12-04 13:50:43 default: init
    2002-12-04 13:50:43 StandardWrapper[:invoker]: Loading container servlet invoker
    2002-12-04 13:50:43 invoker: init
    2002-12-04 13:50:43 jsp: init
    2002-12-04 13:50:43 StandardHost[localhost]: Installing web application at context path /struts-documentation from URL file:C:\jakarta-tomcat-4.0.1\webapps\struts-documentation
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploying class repositories to work directory C:\jakarta-tomcat-4.0.1\work\localhost\struts-documentation
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/commons-beanutils.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\commons-beanutils.jar
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/commons-collections.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\commons-collections.jar
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/commons-dbcp.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\commons-dbcp.jar
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/commons-digester.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\commons-digester.jar
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/commons-fileupload.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\commons-fileupload.jar
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/commons-lang.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\commons-lang.jar
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/commons-logging.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\commons-logging.jar
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/commons-pool.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\commons-pool.jar
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/commons-resources.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\commons-resources.jar
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/commons-services.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\commons-services.jar
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/commons-validator.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\commons-validator.jar
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/jakarta-oro.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\jakarta-oro.jar
    2002-12-04 13:50:43 WebappLoader[struts-documentation]: Deploy JAR /WEB-INF/lib/struts.jar to C:\jakarta-tomcat-4.0.1\webapps\struts-documentation\WEB-INF\lib\struts.jar
    2002-12-04 13:50:43 StandardManager[struts-documentation]: Seeding random number generator class java.security.SecureRandom
    2002-12-04 13:50:43 StandardManager[struts-documentation]: Seeding of random number generator has been completed
    2002-12-04 13:50:43 StandardWrapper[struts-documentation:default]: Loading container servlet default
    2002-12-04 13:50:43 default: init
    2002-12-04 13:50:43 StandardWrapper[struts-documentation:invoker]: Loading container servlet invoker
    2002-12-04 13:50:43 invoker: init
    2002-12-04 13:50:44 jsp: init
    2002-12-04 13:50:44 StandardHost[localhost]: Installing web application at context path /strutsapp1 from URL file:C:\jakarta-tomcat-4.0.1\webapps\strutsapp1
    2002-12-04 13:50:44 WebappLoader[strutsapp1]: Deploying class repositories to work directory C:\jakarta-tomcat-4.0.1\work\localhost\strutsapp1
    2002-12-04 13:50:44 WebappLoader[strutsapp1]: Deploy JAR /WEB-INF/lib/commons-beanutils.jar to C:\jakarta-tomcat-4.0.1\webapps\strutsapp1\WEB-INF\lib\commons-beanutils.jar
    2002-12-04 13:50:44 WebappLoader[strutsapp1]: Deploy JAR /WEB-INF/lib/commons-collections.jar to C:\jakarta-tomcat-4.0.1\webapps\strutsapp1\WEB-INF\lib\commons-collections.jar
    2002-12-04 13:50:44 WebappLoader[strutsapp1]: Deploy JAR /WEB-INF/lib/commons-dbcp.jar to C:\jakarta-tomcat-4.0.1\webapps\strutsapp1\WEB-INF\lib\commons-dbcp.jar
    2002-12-04 13:50:44 WebappLoader[strutsapp1]: Deploy JAR /WEB-INF/lib/commons-digester.jar to C:\jakarta-tomcat-4.0.1\webapps\strutsapp1\WEB-INF\lib\commons-digester.jar
    2002-12-04 13:50:44 WebappLoader[strutsapp1]: Deploy JAR /WEB-INF/lib/commons-logging.jar to C:\jakarta-tomcat-4.0.1\webapps\strutsapp1\WEB-INF\lib\commons-logging.jar
    2002-12-04 13:50:44 WebappLoader[strutsapp1]: Deploy JAR /WEB-INF/lib/commons-pool.jar to C:\jakarta-tomcat-4.0.1\webapps\strutsapp1\WEB-INF\lib\commons-pool.jar
    2002-12-04 13:50:44 WebappLoader[strutsapp1]: Deploy JAR /WEB-INF/lib/commons-services.jar to C:\jakarta-tomcat-4.0.1\webapps\strutsapp1\WEB-INF\lib\commons-services.jar
    2002-12-04 13:50:44 WebappLoader[strutsapp1]: Deploy JAR /WEB-INF/lib/commons-validator.jar to C:\jakarta-tomcat-4.0.1\webapps\strutsapp1\WEB-INF\lib\commons-validator.jar
    2002-12-04 13:50:44 WebappLoader[strutsapp1]: Deploy JAR /WEB-INF/lib/struts.jar to C:\jakarta-tomcat-4.0.1\webapps\strutsapp1\WEB-INF\lib\struts.jar
    2002-12-04 13:50:44 WebappLoader[strutsapp1]: Deploy JAR /WEB-INF/lib/xerces.jar to C:\jakarta-tomcat-4.0.1\webapps\strutsapp1\WEB-INF\lib\xerces.jar
    2002-12-04 13:50:44 StandardManager[strutsapp1]: Seeding random number generator class java.security.SecureRandom
    2002-12-04 13:50:44 StandardManager[strutsapp1]: Seeding of random number generator has been completed
    2002-12-04 13:50:44 ContextConfig[strutsapp1] Parse error in application web.xml
    org.xml.sax.SAXParseException: The content of element type "web-app" must match "(icon?,display-name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,servlet-mapping*,session-config?,mime-mapping*,welcome-file-list?,error-page*,taglib*,resource-env-ref*,resource-ref*,security-constraint*,login-config?,security-role*,env-entry*,ejb-ref*,ejb-local-ref*)".
         at org.apache.xerces.framework.XMLParser.reportError(XMLParser.java:1196)
         at org.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator.java, Compiled Code)
         at org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java, Compiled Code)
         at org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java, Compiled Code)
         at org.apache.xerces.framework.XMLParser.parse(XMLParser.java, Compiled Code)
         at org.xml.sax.helpers.XMLReaderAdapter.parse(XMLReaderAdapter.java:223)
         at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
         at javax.xml.parsers.SAXParser.parse(SAXParser.java:143)
         at org.apache.catalina.util.xml.XmlMapper.readXml(XmlMapper.java:275)
         at org.apache.catalina.startup.ContextConfig.applicationConfig(ContextConfig.java:256)
         at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java, Compiled Code)
         at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:224)
         at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java, Compiled Code)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java, Compiled Code)
         at org.apache.catalina.core.StandardContext.start(StandardContext.java:3334)
         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java, Compiled Code)
         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:454)
         at org.apache.catalina.core.StandardHost.install(StandardHost.java:712)
         at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java, Compiled Code)
         at org.apache.catalina.startup.HostConfig.start(HostConfig.java:777)
         at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:463)
         at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java, Compiled Code)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java, Compiled Code)
         at org.apache.catalina.core.StandardHost.start(StandardHost.java:612)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java, Compiled Code)
         at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:307)
         at org.apache.catalina.core.StandardService.start(StandardService.java, Compiled Code)
         at org.apache.catalina.core.StandardServer.start(StandardServer.java, Compiled Code)
         at org.apache.catalina.startup.Catalina.start(Catalina.java:776)
         at org.apache.catalina.startup.Catalina.execute(Catalina.java:681)
         at org.apache.catalina.startup.Catalina.process(Catalina.java:179)
         at java.lang.reflect.Method.invoke(Native Method)
         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java, Compiled Code)
    2002-12-04 13:50:44 ContextConfig[strutsapp1]: Occurred at line 28 column 11
    2002-12-04 13:50:44 ContextConfig[strutsapp1]: Marking this application unavailable due to previous error(s)
    2002-12-04 13:50:44 StandardContext[strutsapp1]: Error initializing naming context for context /strutsapp1
    2002-12-04 13:50:44 StandardContext[strutsapp1]: Context startup failed due to previous errors
    2002-12-04 13:50:44 StandardContext[strutsapp1]: Error initializing naming context for context /strutsapp1
    2002-12-04 13:50:44 StandardHost[localhost]: Installing web application at context path /tomcat-docs from URL file:C:\jakarta-tomcat-4.0.1\webapps\tomcat-docs
    2002-12-04 13:50:44 WebappLoader[tomcat-docs]: Deploying class repositories to work directory C:\jakarta-tomcat-4.0.1\work\localhost\tomcat-docs
    2002-12-04 13:50:44 StandardManager[tomcat-docs]: Seeding random number generator class java.security.SecureRandom
    2002-12-04 13:50:44 StandardManager[tomcat-docs]: Seeding of random number generator has been completed
    2002-12-04 13:50:44 StandardWrapper[tomcat-docs:default]: Loading container servlet default
    2002-12-04 13:50:44 default: init
    2002-12-04 13:50:44 StandardWrapper[tomcat-docs:invoker]: Loading container servlet invoker
    2002-12-04 13:50:44 invoker: init
    2002-12-04 13:50:44 jsp: init
    2002-12-04 13:50:44 StandardHost[localhost]: Installing web application at context path /tomcatreport from URL file:C:\jakarta-tomcat-4.0.1\webapps\tomcatreport
    2002-12-04 13:50:44 WebappLoader[tomcatreport]: Deploying class repositories to work directory C:\jakarta-tomcat-4.0.1\work\localhost\tomcatreport
    2002-12-04 13:50:44 WebappLoader[tomcatreport]: Deploy JAR /WEB-INF/lib/classes111.jar to C:\jakarta-tomcat-4.0.1\webapps\tomcatreport\WEB-INF\lib\classes111.jar
    2002-12-04 13:50:44 WebappLoader[tomcatreport]: Deploy JAR /WEB-INF/lib/classes12.jar to C:\jakarta-tomcat-4.0.1\webapps\tomcatreport\WEB-INF\lib\classes12.jar
    2002-12-04 13:50:45 StandardManager[tomcatreport]: Seeding random number generator class java.security.SecureRandom
    2002-12-04 13:50:45 StandardManager[tomcatreport]: Seeding of random number generator has been completed
    2002-12-04 13:50:45 ContextConfig[tomcatreport]: Missing application web.xml, using defaults only
    2002-12-04 13:50:45 StandardWrapper[tomcatreport:default]: Loading container servlet default
    2002-12-04 13:50:45 default: init
    2002-12-04 13:50:45 StandardWrapper[tomcatreport:invoker]: Loading container servlet invoker
    2002-12-04 13:50:45 invoker: init
    2002-12-04 13:50:45 jsp: init
    2002-12-04 13:50:45 Internal Error: File /WEB-INF/web.xml not found
    Regards,
    nikhil

  • Can we use ejb in struts framework?

    can we use ejb in struts framework?I need the reasons for both yes or no answers.

    This question is not appropriate for this forum, which deals with the J2EE SDK. Have you looked at the Struts documentation? Have you performed a Google search? If you had, you would have found the answer....
    -Ian Evans

  • What is the use of tiles in struts?

    Hello guys,
    can you explain me what is the use of tiles in struts?
    Regards,
    Bhavesh

    can you explain me what is the use of tiles
    in struts?Maybe the Struts documentation or someone in the Jakarta mailing list can.

  • Struts - HTML:link tag with dynamic page attribute?

    I am trying to use the html:link but the page value is dynamic (resulting from the bean within the iterate tag). The code below doesn't work - error. Is there a way to use all Struts tags and make this happen. Any ideas?
            <logic:iterate id="myMenuForm" property="menuItem" scope="session" name="menuForm" >          <html:link page="<bean:write name="myMenuForm" property="menuDisplayName"/>">                  <bean:write name="myMenuForm" property="menuDisplayName"/>          </html:link>        </logic:iterate> Thanks,
    mlv

    Thanks for all your help. Based on all you your comments, it is now working
    and I thought I would provide some details about how I got it working.
    There are not that many examples within the Struts documentation.
    id = unique name for the object that can be referenced within the iterate
    tag.
    name = is the Bean, in this case it's the ActionForm, that contains the List
    object that will be iterated. In my case, I have a ActionForm that contains
    a List property that contains all the menu item rows from the databse.
    property = is the property name within the ActionForm that is the List
    object. Links to the getter method
    Within the <bean:write> tag you use the id name to get a handle on the final
    object from the iterate tag and the property is one of the property values
    within the bean that is contained within the List.
    So in this case I have a ActionForm bean that contains a List property that
    contains a collection of beans.
    FormAction - bean
    property menuItems of type List contains:
    - row 1 = bean (with a property of menuDisplayName)
    - row 2 = bean (with a property of menuDisplayName)
    - row 3 = bean (with a property of menuDisplayName)
    Here's the JSP code for the tag.
            <logic:iterate id="myMenuForm" name="menuForm" property="menuItem" >
              <html:link page="www.yahoo.com"/>
                      <bean:write name="myMenuForm" property="menuDisplayName"/>
              </html:link>
            </logic:iterate>Now I would like to make the <html:link> page attribute value dynamic from
    the iterate bean. Therefore, you can make the url for the link dynamic If
    you know how to do that, please feel free to provide some help.

  • Error deploying Struts 1.1 on weblogic 6.1 sp2

    Hello,
    I am trying to deploy the struts-documentation.war that comes with struts 1.1
    on weblogic 6.1 sp2.
    I already have xerces.jar , xalan.jar and crimson.jar in WEB-INF/lib. I have also
    tired giving the files in the weblogic classpath.
    It does not deploy the application and it gives the following error:
    ####<Jul 13, 2004 2:26:44 PM IST> <Debug> <HTTP> <phinwo-w00206>
    <myserver> <ExecuteThread: '1' for queue: '__weblogic_admin_html_queue'>
    <system> <> <101158> <Exception thrown while loading struts-documentation:
    java.lang.StringIndexOutOfBoundsException: String index out of range: -1>
    java.lang.StringIndexOutOfBoundsException: String index out of range: -1
    at java.lang.String.substring(String.java:1525)
    at
    weblogic.utils.jars.ManifestEntry.stream(ManifestEntry.java:166)
    at weblogic.utils.jars.Manifest.stream(Manifest.java:78)
    at
    weblogic.servlet.internal.WebAppHelper.resolveManifestName(WebAppHelper.java:398)
    at
    weblogic.servlet.internal.WebAppHelper.extractClassFiles(WebAppHelper.java:177)
    at
    weblogic.servlet.internal.WebAppServletContext.extractClassFiles(WebAppServletContext.java:3405)
    at
    weblogic.servlet.internal.WebAppServletContext.setDocroot(WebAppServletContext.java:3376)
    at
    weblogic.servlet.internal.WebAppServletContext.init(WebAppServletContext.java:862)
    at
    weblogic.servlet.internal.WebAppServletContext.<init>(WebAppServletContext.java:815)
    at
    weblogic.servlet.internal.HttpServer.loadWebApp(HttpServer.java:428)
    at weblogic.j2ee.WebAppComponent.deploy(WebAppComponent.java:74)
    at weblogic.j2ee.Application.addComponent(Application.java:163)
    at weblogic.j2ee.J2EEService.addDeployment(J2EEService.java:117)
    at
    weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:329)
    at
    weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:144)
    at
    weblogic.management.mbeans.custom.WebServer.addWebDeployment(WebServer.java:76)
    at java.lang.reflect.Method.invoke(Native Method)
    at
    weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
    at
    weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at
    weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at
    com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at
    com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at
    weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    at
    weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy29.addWebDeployment(Unknown Source)
    at
    weblogic.management.configuration.WebServerMBean_CachingStub.addWebDeployment(WebServerMBean_CachingStub.java:1121)
    at
    weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:315)
    at
    weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:144)
    at java.lang.reflect.Method.invoke(Native Method)
    at
    weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
    at
    weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at
    weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at
    com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at
    com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at
    weblogic.management.internal.ConfigurationMBeanImpl.updateConfigMBeans(ConfigurationMBeanImpl.java:491)
    at
    weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:361)
    at
    com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at
    com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at
    weblogic.management.internal.DynamicMBeanImpl.addDeployment(DynamicMBeanImpl.java:984)
    at
    weblogic.management.internal.DynamicMBeanImpl.addDeployment(DynamicMBeanImpl.java:971)
    at
    weblogic.management.internal.DynamicMBeanImpl.add(DynamicMBeanImpl.java:956)
    at
    weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:648)
    at
    weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at
    weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at
    com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at
    com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at
    weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    at
    weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy64.addTarget(Unknown Source)
    at
    weblogic.management.mbeans.custom.ApplicationManager.autoDeploy(ApplicationManager.java:867)
    at
    weblogic.management.mbeans.custom.ApplicationManager.addApplication(ApplicationManager.java:966)
    at
    weblogic.management.mbeans.custom.ApplicationManager.addApplication(ApplicationManager.java:886)
    at
    weblogic.management.mbeans.custom.ApplicationManager.poll(ApplicationManager.java:802)
    at
    weblogic.management.mbeans.custom.ApplicationManager.poll(ApplicationManager.java:733)
    at
    weblogic.management.mbeans.custom.ApplicationManager.update(ApplicationManager.java:206)
    at java.lang.reflect.Method.invoke(Native Method)
    at
    weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
    at
    weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at
    weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at
    com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at
    com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at
    weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    at
    weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy5.update(Unknown Source)
    at
    weblogic.management.console.webapp._domain.__upload_app._jspService(__upload_app.java:149)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
    at
    weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:265)
    at
    weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:200)
    at
    weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:241)
    at
    weblogic.servlet.jsp.PageContextImpl.forward(PageContextImpl.java:112)
    at
    weblogic.management.console.actions.ForwardAction.perform(ForwardAction.java:35)
    at
    weblogic.management.console.actions.internal.ActionServlet.doAction(ActionServlet.java:171)
    at
    weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServlet.java:85)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at
    weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:265)
    at
    weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:200)
    at
    weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:2495)
    at
    weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2204)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    ####<Jul 13, 2004 2:26:44 PM IST> <Error> <J2EE> <phinwo-w00206>
    <myserver> <ExecuteThread: '1' for queue: '__weblogic_admin_html_queue'>
    <system> <> <160001> <Error deploying application struts-documentation:
    Could not load struts-documentation>
    ####<Jul 13, 2004 2:26:44 PM IST> <Error> <Management> <phinwo-w00206>
    <myserver> <ExecuteThread: '1' for queue: '__weblogic_admin_html_queue'>
    <system> <> <141042> <Error deploying application
    .\config\mydomain\applications\struts-documentation.war:
    java.lang.reflect.UndeclaredThrowableException>
    Any help in this regard will be highly appreciated.

    I'm also running Weblogic 6.1 SP2 and getting a very similar error during startup when trying to deploy JSTL (Apache's version 1.0.6 from here http://jakarta.apache.org/taglibs/) in an exploded application that starts up fine if I remove the JSTL jars from WEB-INF/lib.
    The exact stack trace in my case is this:
    java.lang.StringIndexOutOfBoundsException: String index out of range: -1
    at java.lang.String.substring(String.java:1525)
    at weblogic.utils.jars.ManifestEntry.stream(ManifestEntry.java:166)
    at weblogic.utils.jars.Manifest.stream(Manifest.java:78)
    at weblogic.servlet.internal.WebAppHelper.resolveManifestName(WebAppHelper.java:398)
    at weblogic.servlet.internal.WebAppHelper.extractClassFiles(WebAppHelper.java:234)
    at weblogic.servlet.internal.WebAppServletContext.extractClassFiles(WebAppServletContext.java:3407)
    at weblogic.servlet.internal.WebAppServletContext.setDocroot(WebAppServletContext.java:3376)
    at weblogic.servlet.internal.WebAppServletContext.init(WebAppServletContext.java:862)
    at weblogic.servlet.internal.WebAppServletContext.<init>(WebAppServletContext.java:815)
    at weblogic.servlet.internal.HttpServer.loadWebApp(HttpServer.java:428)
    at weblogic.j2ee.WebAppComponent.deploy(WebAppComponent.java:74)
    at weblogic.j2ee.Application.addComponent(Application.java:163)
    at weblogic.j2ee.J2EEService.addDeployment(J2EEService.java:117)
    at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:329)
    at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:144)
    at weblogic.management.mbeans.custom.WebServer.addWebDeployment(WebServer.java:76)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
    at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy31.addWebDeployment(Unknown Source)
    at weblogic.management.configuration.WebServerMBean_CachingStub.addWebDeployment(WebServerMBean_CachingStub.java:1121)
    at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:315)
    at weblogic.management.mbeans.custom.DeploymentTarget.addDeployments(DeploymentTarget.java:279)
    at weblogic.management.mbeans.custom.DeploymentTarget.updateServerDeployments(DeploymentTarget.java:233)
    at weblogic.management.mbeans.custom.DeploymentTarget.updateDeployments(DeploymentTarget.java:193)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
    at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy30.updateDeployments(Unknown Source)
    at weblogic.management.configuration.ServerMBean_CachingStub.updateDeployments(ServerMBean_CachingStub.java:2761)
    at weblogic.management.mbeans.custom.ApplicationManager.startConfigManager(ApplicationManager.java:370)
    at weblogic.management.mbeans.custom.ApplicationManager.start(ApplicationManager.java:160)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
    at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy41.start(Unknown Source)
    at weblogic.management.configuration.ApplicationManagerMBean_CachingStub.start(ApplicationManagerMBean_CachingStub.java:480)
    at weblogic.management.Admin.startApplicationManager(Admin.java:1180)
    at weblogic.management.Admin.finish(Admin.java:590)
    at weblogic.t3.srvr.T3Srvr.start(T3Srvr.java:518)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:203)
    at weblogic.Server.main(Server.java:35)

  • MVC with Struts?

    If you are going to implement the MVC pattern in a webapp, what is the best framework to use?
    I've done a tutorial with Struts. Is that a good framework?
    Is there any disadvantages by using such frameworks?

    If you are going to implement the MVC pattern in a
    webapp, what is the best framework to use? None if you can do without it. The best solution is always the simplest. But you'd have to provide some requirements to get a better answer. Let me just say I've seen many projects that simply read/write small amounts of data from the database and display it on a web page, yet the architect will throw in struts, hibernate, etc. and almost all of the time (IMO) it's overkill.
    I've done a tutorial with Struts. Is that a good
    framework?Some people love it. Some people hate it. IMO it has many, many problems and I don't care for it one bit. However, it's very popular and lots of people use it, so it's not a bad skillset to have.
    Is there any disadvantages by using such frameworks?There are tons of disadvantages:
    1. The API is external (i.e. out of your control) so when it breaks you can't do anything but hack the source.
    2. Performance can be a problem, since you've got an extra layer of software to run through, but usually isn't. Struts for example isn't going to bog you down.
    3. It costs time (i.e. $$$) to train and come up to speed on how to use these frameworks. If you already know Java and have a small project you could likely complete it in the time it'd take you to learn struts.
    4. Compatibility. When the latest version of struts comes out for example, you might want to upgrade to get the latest features, but you might find it breaks the old API and now you have to fix a bunch of code because it's not backwards compatible. That's probably rare, but it's happened to me more than once with struts.
    5. Struts documentation (IMO) is horrible (maybe it's better today? i haven't used it in awhile) and it's not fun to learn.
    6. Struts error messages are ridiculous and it's often very difficult to figure out what went wrong. Whereas in core Java I find the error messages to be very helpful in telling me what I did wrong.
    The list goes on and on and on. Frameworks are bad news for many projects and then again they are saviors for others.

  • CONTAINER FOR STRUTS

    what container/server I need for run struts applications ?
    which is best development tool for struts application development ?

    what container/server I need for run struts
    applications ?Servlet container or complete appserver. Did you ever
    consider to read the Struts documentation?Good idea. One suggestion would be Sun's application server. (I'm completely bias as that is what I use, but I believe JBOSS also works, as well as a myriad of others).
    >
    which is best development tool for strutsapplication
    development ?
    The one that you are familiar with/like. I use several tools for it. I have eclipse, notepad, ant, as well as a few other programs.
    >
    There is no special tool for that for all I know.
    Oh, and just in case you might not hve noticed: this
    is not a Struts forum.While I do agree with this, it's at least related to java - at least as much as setting your path is (which i consider to be more of an admin thing) or which is the best editor. They are all somewhat related to java either very directly or indirectly.

  • Proble with Struts Taglib "logic:iterate"

    I m designing an simple application, it uses to input some data and then display them.
    For example,I want to input studentID,studentName into the database,but i want to input more than one student data each time.
    This is my FormBean souce:
    package system.form;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.action.ActionErrors;
    import org.apache.struts.action.ActionMessage;
    import javax.servlet.http.HttpServletRequest;
    public class StudentForm {
        private String[] studentID;
        private String[] studentName;
        public String[] getStudentID() {
             return studentID;
        public String[] getStudentName() {
             return studentName;
        public void set(String[] field) {
             studentID = field;
        public void set(String[] field) {
             studentName = field;
    }This is my form:
    <html:form method="post" action="/add">
        StudentID: <html:text property="studentID"/>
        StudentName:<html:text property="studentName"/>
        <br/>
        StudentID: <html:text property="studentID"/>
        StudentName:<html:text property="studentName"/>
        <br/>
        <html:submit value="add"/>
    </html:form>The problem is: my StudentForm is in SESSION scope.So after i have input some data,i return to the input page, the text filed will display the data i inputed last time.
    But when i do it, i saw the data in the field are like this:
    [Ljava.lang.String;@595420
    [Ljava.lang.String;@a218a5
    [Ljava.lang.String;@2f54
    Not the data i input,I think the problem is that my attribute in the StudentForm is array string, not string. So there is any problem when display.
    What can i do to resolve it?
    Also,there is another problem.
    In my input page. I must iterate the input field like:
    StudentID: <html:text property="studentID"/>
        StudentName:<html:text property="studentName"/>
        <br/>
        StudentID: <html:text property="studentID"/>
        StudentName:<html:text property="studentName"/>
        <br/>
        ....So when i want to input 10 records each time, i must iterate the html above 10 times,and then 20 records needs iterating 20 times, it's bald and it makes the page hard to read and maintain.
    So i want to use Struts's Tag <logic:iterate> to manipulate it.
    But i don't know how to use it.
    Can anybody give me a hand? Thank u.

    First of all, the studentID and the studentName are related. If you keep them as two separate String arrays, it will be very hard to use logic:iterate to display them together.
    I would suggest that you first create a VO class which contains only studentID and studentName and have getter-setter methods for them. (This is logically good as you are modelling a student using a separate class) And, in your form, declare a studentVO[ ] and have getter-setter methods. You may need to change them and add new ones as they will have to be indexed. This can be looked up in the Struts documentation page.
    Finally in your jsp, iterate over the studentVO[ ] bean and give the respective getter property of studentID and studentName in VO with indexed = "true"....
    <logic:iterate id = "studentVO" name = "<formbean name>" property = "studentVO">
    <html:text name="studentVO" property = "studentID" indexed = "true"/>
    <html:text name="studentVO" property = "studentName" indexed = "true"/>
    etc..
    </logic:iterate>
    (Note that you may have to give the type attribute in your logic:iterate so that it may be cast into the right VO object)
    Hope this helps.

  • Struts - example of iterate using a hashtable (key,value)

    I am trying to create a dynamic menu system and each menu group
    is storied within a single hashmap with the name of the menu as the key (e.g. "mainmenu", "adminmenu"). I am having problems understanding the documentation on how to pass the key to select the
    right entry within the hashmap. I have read the following but find
    it confusing. Could someone provide a detailed example?
    http://jakarta.apache.org/struts/struts-logic.html#iterate

    Here's some code to show you what I am doing.
    I will start out with how I am creating the List and the HashMap
        menuList = new ArrayList();
        sqlStatement = "select * from menu where admin = 'Y' ";
        // gets the menu items from the database and builds the menuList
        this.buildMenu( (DBResultSet)db.executeSQL( sqlStatement, args ) );
        // puts the menuList into a HashMap with a key of adminmenu
        //  NOTE: the menuList is actually a collection (list) of beans
        menuMap.setItem ("adminmenu", menuList );
        ...Here's my bean that stores I use to store the HashMap (menuMap).
    import java.util.*;
    public class MenuBO extends BaseBusinessObject
      private HashMap menuMap;
      public MenuBO()
        menuMap = new HashMap();
      public void setItem ( String menuType, List menuList )
        menuMap.put ( menuType, menuList);
      public List getItem( String menuType )
        return  (List)this.menuMap.get( menuType ) ;
      public HashMap getMenuMap ()
        return menuMap;
      public void removeItem ( String menuType)
        menuMap.remove( menuType);
    }And here's my iterate which is not working. I want to single out the value that has a key of "adminmenu" and process that list of menu elements. This is easy to do with scriptlets but I am spending many hours trying to figure out Struts documentation - they need some real world examples if they want Struts to catch on...
    <jsp:useBean id="menuMap" scope="session"
              class="com.benchdogs.webapp.beans.MenuBO"/>
            <logic:iterate id="mapEntry" name="menuMap" property="menuMap">
                <bean:write name="mapEntry" property="key"/>
            </logic:iterate>This example loops through the hashmap and displays the keys. I want to be able to process a specific value based on the key. The value is a List so I would need to do another iterate statement within the master iterate.

  • Please Explain Struts Module

    Hai all
    i have a big doubt in Struts
    what is meant by Modules ??!!!
    i have a webapp mystruts where the dir structure is like
    \mystruts
    images
    pages
    tiles
    WEB-INF
    classes
    lib
    struts-config.xml
    say i want admin module . what it means am i creating any extra folder strutct to do so or am just creating just another struts config xml file ?? liek
    \mystruts
    images
    adminpages
    admintiles
    pages
    tiles
    WEB-INF
    classes
    lib
    struts-config.xml
    struts-config-admin.xml
    is this ok ??? am i right
    please help me its urgetn

    Probably, like me, most of us never used that aspect of struts. I wasn't aware of it, actually, and would presume if this is a real thing, then there should be something in the Struts documentation... so what's that say?

  • Problems with Apache Commons Validator

    Hello there,
    I got a quiet big problem using the a.m. validation framework. When defining a validation rule for a property like this:
    <formset>
    <form name="testForm">
    <field property="firstName" depends="isEmail">
    <arg0 key="testForm.firstname"/>
    </field>
    </form>
    </formset>
    and instanciating my validator as follows:
    Validator validator = new Validator(resources, "testForm");
    validator.setParameter(Validator.BEAN_PARAM, name);
    everything works fine! I get a correct ValidatorResult object with a correct validation value.
    But as soons as I define a second Validation on the same property like this:
    <formset>
    <form name="testForm">
    <field property="firstName" depends="isEmail,isBlankOrNull">
    <arg0 key="testForm.firstname"/>
    </field>
    </form>
    </formset>
    Nothing works anymore. When iterating over the ValidatorResults object I only get one ValidatorResult object for "isEmail" with a wrong validation value. There should be two working ValidatorResult objects for "isEmail" and "isBlankOrNull"?!?!
    Are two validation method in the depends-Attribute not allowed (although it is defined in the standard)?
    You can assume, that the used validator class is conform to the given org.apache.commons.TestValidator!
    For any help, thx in advance!
    Greets
    CN

    Hey Aaron,
    Could you post your code for your <field>...</field>?
    Here is an example from: http://www.jsn-server3.com/struts-documentation/userGuide/dev_validator.html
    <field
        property="firstName" indexedListProperty="dependents"
        depends="requiredif">
      <arg0 key="dependentlistForm.firstName.label"/>
      <var>
        <var-name>field[0]</var-name>
        <var-value>lastName</var-value>
      </var>
      <var>
        <var-name>field-indexed[0]</var-name>
        <var-value>true</var-value>
      </var>
      <var>
        <var-name>field-test[0]</var-name>
        <var-value>NOTNULL</var-value>
      </var>
    </field>
    <field
        property="dob"
        indexedListProperty="dependents"
        depends="requiredif,date">
      <arg0 key="dependentlistForm.dob.label"/>
      <var>
        <var-name>field[0]</var-name>
        <var-value>lastName</var-value>
      </var>
      <var>
        <var-name>field-indexed[0]</var-name>
        <var-value>true</var-value>
      </var>
      <var>
        <var-name>field-test[0]</var-name>
        <var-value>NOTNULL</var-value>
      </var>
    </field>
    <field
        property="coverageType"
        indexedListProperty="dependents"
        depends="requiredif">
      <arg0 key="dependentlistForm.coverageType.label"/>
      <var>
        <var-name>field[0]</var-name>
        <var-value>lastName</var-value>
      </var>
      <var>
        <var-name>field-indexed[0]</var-name>
        <var-value>true</var-value>
      </var>
      <var>
        <var-name>field-test[0]</var-name>
        <var-value>NOTNULL</var-value>
      </var>
      <var>
        <var-name>field[1]</var-name>
        <var-value>insureDependents</var-value>
      </var>
      <var>
        <var-name>field-test[1]</var-name>
        <var-value>EQUAL</var-value>
      </var>
      <var>
        <var-name>field-value[1]</var-name>
        <var-value>true</var-value>
      </var>
      <var>
        <var-name>field-join</var-name>
        <var-value>AND</var-value>
      </var>
    </field>
    </form>" Which is read as follows: The firstName field is only required if the lastName field is non-null. Since field-indexed is true, it means that lastName must be a property of the same indexed field as firstName. Same thing for dob, except that we validate for date if not blank.
    The coverageType is only required if the lastName for the same indexed bean is not null, and also if the non-indexed field insureDependents is true.
    You can have an arbitrary number of fields by using the [n] syntax, the only restriction is that they must all be AND or OR, you can't mix. "
    Hope that helps,
    Nate

  • How to set s:text name=""/ in Struts2?

    Hi
    I want to do the equivalent of Struts 1's
    <fmt:message key="${someVariable}"/>using Struts2:
    <s:text name="somethingDynamicHere"/>I have searched high and low for the answer... anyone know how to do this please??
    Nick

    NickM999 wrote:
    Hi
    I want to do the equivalent of Struts 1's
    <fmt:message key="${someVariable}"/>
    That's not Struts 1, that's JSTL.
    using Struts2:
    <s:text name="somethingDynamicHere"/>I have searched high and low for the answer... anyone know how to do this please??Try reading the Struts documentation. I know nothing about Struts, but I would be surprised if their documentation appears to be poor. From other Apache products with which I am used with, the documentation is generally good. Start at their homepage over there at Apache.org. They have a forum and mailinglist as well for the case no one responds here.

  • XMLP on Tomcat 5.5 Login Error

    Hello everybody,
    I performed a manual installation of XMLP 5.6.2 on tomcat 5.5.17 today.
    I followed the oracle guide: http://www.oracle.com/technology/software/products/publishing/install.html
    When I to login (login page gets displayed o.k.) with admin/admin from the url http://myserver.com:8080/xmlpserver I get the below exception:
    org.apache.jasper.JasperException: oracle.cabo.ui.UnsynchronizedBufferedWriter
         org.apache.jasper.servlet.JspServletWrapper.handleJspException(jasper5-compiler-5.5.17.jar.so)
         org.apache.jasper.servlet.JspServletWrapper.service(jasper5-compiler-5.5.17.jar.so)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(jasper5-compiler-5.5.17.jar.so)
         org.apache.jasper.servlet.JspServlet.service(jasper5-compiler-5.5.17.jar.so)
         javax.servlet.http.HttpServlet.service(tomcat5-servlet-2.4-api-5.5.17.jar.so)
         oracle.apps.xdo.servlet.XDOServlet.doGet(XDOServlet.java:174)
         javax.servlet.http.HttpServlet.service(tomcat5-servlet-2.4-api-5.5.17.jar.so)
         javax.servlet.http.HttpServlet.service(tomcat5-servlet-2.4-api-5.5.17.jar.so)
         oracle.apps.xdo.servlet.security.SecurityFilter.doFilter(SecurityFilter.java:52)
    root cause
    javax.servlet.ServletException: oracle.cabo.ui.UnsynchronizedBufferedWriter
         org.apache.jasper.runtime.PageContextImpl.doHandlePageException(jasper5-runtime-5.5.17.jar.so)
         org.apache.jasper.runtime.PageContextImpl.handlePageException(jasper5-runtime-5.5.17.jar.so)
         org.apache.jsp.error_jsp._jspService(error_jsp.java:144)
         org.apache.jasper.runtime.HttpJspBase.service(jasper5-runtime-5.5.17.jar.so)
         javax.servlet.http.HttpServlet.service(tomcat5-servlet-2.4-api-5.5.17.jar.so)
         org.apache.jasper.servlet.JspServletWrapper.service(jasper5-compiler-5.5.17.jar.so)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(jasper5-compiler-5.5.17.jar.so)
         org.apache.jasper.servlet.JspServlet.service(jasper5-compiler-5.5.17.jar.so)
         javax.servlet.http.HttpServlet.service(tomcat5-servlet-2.4-api-5.5.17.jar.so)
         oracle.apps.xdo.servlet.XDOServlet.doGet(XDOServlet.java:174)
         javax.servlet.http.HttpServlet.service(tomcat5-servlet-2.4-api-5.5.17.jar.so)
         javax.servlet.http.HttpServlet.service(tomcat5-servlet-2.4-api-5.5.17.jar.so)
         oracle.apps.xdo.servlet.security.SecurityFilter.doFilter(SecurityFilter.java:52)
    root cause
    java.lang.NoClassDefFoundError: oracle.cabo.ui.UnsynchronizedBufferedWriter
         java.lang.Class.initializeClass(libgcj.so.7rh)
         oracle.cabo.ui.ServletRenderingContext._getPrintWriter(Unknown Source)
         oracle.cabo.ui.ServletRenderingContext.prepareResponse(Unknown Source)
         org.apache.jsp.error_jsp._jspService(error_jsp.java:66)
         org.apache.jasper.runtime.HttpJspBase.service(jasper5-runtime-5.5.17.jar.so)
         javax.servlet.http.HttpServlet.service(tomcat5-servlet-2.4-api-5.5.17.jar.so)
         org.apache.jasper.servlet.JspServletWrapper.service(jasper5-compiler-5.5.17.jar.so)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(jasper5-compiler-5.5.17.jar.so)
         org.apache.jasper.servlet.JspServlet.service(jasper5-compiler-5.5.17.jar.so)
         javax.servlet.http.HttpServlet.service(tomcat5-servlet-2.4-api-5.5.17.jar.so)
         oracle.apps.xdo.servlet.XDOServlet.doGet(XDOServlet.java:174)
         javax.servlet.http.HttpServlet.service(tomcat5-servlet-2.4-api-5.5.17.jar.so)
         javax.servlet.http.HttpServlet.service(tomcat5-servlet-2.4-api-5.5.17.jar.so)
         oracle.apps.xdo.servlet.security.SecurityFilter.doFilter(SecurityFilter.java:52)
    Can anybody advise on this, please. Thanks in advance.

    Hi BenO,
    I have updated my .bash_profile, $JAVA_HOME and JRE_HOME are set correctly now. I also have the path to the /XMLP directory in $PATH.
    However, I still get a NoClassDefFoundError oracle.cabo.ui.UnsynchronizedBufferWriter exception
    Tomcat logs log fine to me:
    [root@syntegris31 ~]# cat /var/log/tomcat5/catalina.out
    Created MBeanServer with ID: fi1n8y:f0nwjmg8.0:syntegris31:1
    18. Apr 07 16:50:47 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
    INFO: The Apache Tomcat Native library which allows optimal performance in produ ction environments was not found on the java.library.path: /usr/lib/gcj-4.1.1
    18. Apr 07 16:50:47 org.apache.coyote.http11.Http11BaseProtocol init
    INFO: Initializing Coyote HTTP/1.1 on http-8080
    18. Apr 07 16:50:47 org.apache.catalina.startup.Catalina load
    INFO: Initialization processed in 1013 ms
    18. Apr 07 16:50:48 org.apache.catalina.core.StandardService start
    INFO: Starting service Catalina
    18. Apr 07 16:50:48 org.apache.catalina.core.StandardEngine start
    INFO: Starting Servlet Engine: Apache Tomcat/5.5.17
    18. Apr 07 16:50:48 org.apache.catalina.core.StandardHost start
    INFO: XML validation disabled
    18. Apr 07 16:50:48 org.apache.catalina.startup.HostConfig deployDescriptor
    WARNING: A docBase /var/lib/tomcat5/webapps/struts-tiles-documentation inside th e host appBase has been specified, and will be ignored
    18. Apr 07 16:50:49 org.apache.struts.tiles.TilesPlugin initDefinitionsFactory
    INFO: Tiles definition factory loaded for module ''.
    18. Apr 07 16:50:49 org.apache.struts.tiles.TilesPlugin initDefinitionsFactory
    INFO: Tiles definition factory loaded for module '/examples'.
    18. Apr 07 16:50:49 org.apache.struts.tiles.TilesPlugin initDefinitionsFactory
    INFO: Tiles definition factory loaded for module '/tutorial'.
    18. Apr 07 16:50:49 org.apache.struts.tiles.TilesPlugin initDefinitionsFactory
    INFO: Tiles definition factory loaded for module '/test'.
    18. Apr 07 16:50:51 org.apache.catalina.startup.HostConfig deployDescriptor
    WARNING: A docBase /var/lib/tomcat5/webapps/struts-example inside the host appBa se has been specified, and will be ignored
    18. Apr 07 16:50:51 org.apache.catalina.core.ApplicationContext log
    INFO: action: []: Verifying ModuleConfig for this module
    18. Apr 07 16:50:51 org.apache.catalina.core.ApplicationContext log
    INFO: action: []: Verification of ModuleConfig has been completed
    18. Apr 07 16:50:52 org.apache.struts.webapp.example.memory.MemoryDatabasePlugIn init
    INFO: Initializing memory database plug in from '/WEB-INF/database.xml'
    18. Apr 07 16:50:52 org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validator-rules.xml'
    18. Apr 07 16:50:52 org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validation.xml'
    18. Apr 07 16:50:53 org.apache.catalina.startup.HostConfig deployDescriptor
    WARNING: A docBase /var/lib/tomcat5/webapps/struts-examples inside the host appB ase has been specified, and will be ignored
    18. Apr 07 16:50:54 org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validator-rules.xml'
    18. Apr 07 16:50:54 org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validator/validation.xml'
    18. Apr 07 16:50:55 org.apache.catalina.startup.HostConfig deployDescriptor
    WARNING: A docBase /var/lib/tomcat5/webapps/struts-documentation inside the host appBase has been specified, and will be ignored
    18. Apr 07 16:50:55 org.apache.catalina.startup.HostConfig deployDescriptor
    WARNING: A docBase /var/lib/tomcat5/webapps/struts-blank inside the host appBase has been specified, and will be ignored
    18. Apr 07 16:50:56 org.apache.struts.tiles.TilesPlugin initDefinitionsFactory
    INFO: Tiles definition factory loaded for module ''.
    18. Apr 07 16:50:56 org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validator-rules.xml'
    18. Apr 07 16:50:56 org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validation.xml'
    18. Apr 07 16:50:57 org.apache.catalina.startup.HostConfig deployWAR
    [u]INFO: Deploying web application archive xmlpserver.war
    - Job execution threads will use class loader of thread: main
    - Quartz Scheduler v.1.5.1 created.
    - RAMJobStore initialized.
    - Quartz scheduler 'DefaultQuartzScheduler' initialized from default resource fi le in Quartz package: 'quartz.properties'
    - Quartz scheduler version: 1.5.1
    18. Apr 07 16:50:58 oracle.xdo.server.scheduling.impl.quartz.QuartzSchedulingSer viceImpl init
    INFO: Scheduler is paused. Starting up...
    - Scheduler DefaultQuartzScheduler_$_NON_CLUSTERED started.
    - QuartzInitializer: Quartz Initializer Servlet loaded, initializing Scheduler.. .
    - Scheduler DefaultQuartzScheduler_$_NON_CLUSTERED started.
    - QuartzInitializer: Scheduler has been started...
    - QuartzInitializer: Storing the Quartz Scheduler Factory in the servlet context at key: org.quartz.impl.StdSchedulerFactory.KEY
    18. Apr 07 16:51:00 org.apache.catalina.core.ApplicationContext log
    INFO: 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.bal                                              ancer.rules.RequestParameterRule: Target param name: paramName / Target param va                                              lue: paramValue / Redirect URL: http://www.yahoo.com], [org.apache.webapp.balanc                                              er.rules.AcceptEverythingRule: Redirect URL: http://jakarta.apache.org]]
    18. Apr 07 16:51:01 org.apache.catalina.core.ApplicationContext log
    INFO: ContextListener: contextInitialized()
    18. Apr 07 16:51:01 org.apache.catalina.core.ApplicationContext log
    INFO: SessionListener: contextInitialized()
    18. Apr 07 16:51:01 org.apache.catalina.core.ApplicationContext log
    INFO: ContextListener: contextInitialized()
    18. Apr 07 16:51:01 org.apache.catalina.core.ApplicationContext log
    INFO: SessionListener: contextInitialized()
    18. Apr 07 16:51:02 org.apache.coyote.http11.Http11BaseProtocol start
    INFO: Starting Coyote HTTP/1.1 on http-8080
    18. Apr 07 16:51:02 org.apache.jk.common.ChannelSocket init
    INFO: JK: ajp13 listening on /0.0.0.0:8009
    18. Apr 07 16:51:02 org.apache.jk.server.JkMain start
    INFO: Jk running ID=0 time=0/76 config=null
    18. Apr 07 16:51:02 org.apache.catalina.storeconfig.StoreLoader load
    INFO: Find registry server-registry.xml at classpath resource
    18. Apr 07 16:51:02 org.apache.catalina.startup.Catalina start
    INFO: Server startup in 14992 ms
    --- end log --
    The underlined section is very similar to my (running) windows test installation of xml publisher.
    How can I check where the application is expecting the missing class?
    Thanks so much again ;)

  • Struts2 Basic doubts..

    Hi, Im new to Struts2.... I have some few doubts below...
    a) In Struts2, how does application finds struts.xml?? (we dnt define struts.xml in web.xml file unlike in Struts1 which we define struts-config.xml in web.xml file, so how its going to see that struts.xml file)
    b) why dont we write "*extends ActionSupport*" for our "*Action*" class.. I have seeen many examples without extending with any other predefined Action class.. How does it find execute() method or populate() method in our Action class if we dnt extend any other predefined action class or implement Action interface methods ??
    c) In what cases we use "*extends Action Support*"
    Waiting for quick reply...
    Harishwar

    Harishwar_Madhya wrote:
    Hi, Im new to Struts2.... I have some few doubts below...
    You have questions not doubts. And my strong advice is to take a Struts2 tutorial rather than posting here. However....
    a) In Struts2, how does application finds struts.xml?? (we dnt define struts.xml in web.xml file unlike in Struts1 which we define struts-config.xml in web.xml file, so how its going to see that struts.xml file)
    [Convention over configuration|http://en.wikipedia.org/wiki/Convention_over_configuration] is generally preferred nowadays. As long as the convention is documented. For Struts 2, if you place a file with the proper name in the proper directory, it will be located by the framework.
    b) why dont we write "*extends ActionSupport*" for our "*Action*" class.. I have seeen many examples without extending with any other predefined Action class.. How does it find execute() method or populate() method in our Action class if we dnt extend any other predefined action class or implement Action interface methods ??
    Because there is no explicit reason to inherit from anything. Most frameworks now simply use annotations. You can only inherit once from a super-class, so all things being equal, if you can avoid inheritance, it frees up your design.
    c) In what cases we use "*extends Action Support*"
    Consult the Struts documentation.
    Waiting for quick reply...
    HarishwarBest of luck.
    - Saish

Maybe you are looking for