2017-07-22 2 views
1

Je suis en train de créer une application web dynamique struts mais l'erreur suivante est affichée dans le navigateur weberreur HTTP 404 introuvable dans struts2.0. mais la console ne montre aucune erreur

The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.

général, cette erreur se poseraient en raison de bibliothèques manquantes ou des pages et je les diagnostiquerait en regardant la console. Mais cette fois, la console ne montre aucun type d'erreur.

est ici la sortie de la console:

Jul 22, 2017 1:31:32 PM org.apache.tomcat.util.digester.SetPropertiesRule begin 
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:Game Of Thrones Quiz' did not find a matching property. 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: Server version:  Apache Tomcat/9.0.0.M22 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: Server built:   Jun 21 2017 09:44:18 UTC 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: Server number:   9.0.0.0 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: OS Name:    Windows 10 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: OS Version:   10.0 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: Architecture:   amd64 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: Java Home:    C:\Program Files\Java\jre1.8.0_131 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: JVM Version:   1.8.0_131-b11 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: JVM Vendor:   Oracle Corporation 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: CATALINA_BASE:   C:\Users\user\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: CATALINA_HOME:   C:\Program Files\Apache Software Foundation\Tomcat 9.0 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: Command line argument: -Dcatalina.base=C:\Users\user\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: Command line argument: -Dcatalina.home=C:\Program Files\Apache Software Foundation\Tomcat 9.0 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: Command line argument: -Dwtp.deploy=C:\Users\user\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: Command line argument: -Djava.endorsed.dirs=C:\Program Files\Apache Software Foundation\Tomcat 9.0\endorsed 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.VersionLoggerListener log 
INFO: Command line argument: -Dfile.encoding=Cp1252 
Jul 22, 2017 1:31:32 PM org.apache.catalina.core.AprLifecycleListener lifecycleEvent 
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [C:\Program Files\Java\jre1.8.0_131\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files/Java/jre1.8.0_131/bin/server;C:/Program Files/Java/jre1.8.0_131/bin;C:/Program Files/Java/jre1.8.0_131/lib/amd64;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64\compiler;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Windows\system32\config\systemprofile\.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm\;C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Program Files (x86)\Windows Live\Shared;C:\Program Files (x86)\GtkSharp\2.12\bin;C:\Modeltech_xe\win32xoem;C:\Program Files (x86)\Jar2Exe Wizard\;C:\Users\user\jee-neon\eclipse;;.] 
Jul 22, 2017 1:31:32 PM org.apache.coyote.AbstractProtocol init 
INFO: Initializing ProtocolHandler ["http-nio-8080"] 
Jul 22, 2017 1:31:32 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector 
INFO: Using a shared selector for servlet write/read 
Jul 22, 2017 1:31:32 PM org.apache.coyote.AbstractProtocol init 
INFO: Initializing ProtocolHandler ["ajp-nio-8009"] 
Jul 22, 2017 1:31:32 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector 
INFO: Using a shared selector for servlet write/read 
Jul 22, 2017 1:31:32 PM org.apache.catalina.startup.Catalina load 
INFO: Initialization processed in 761 ms 
Jul 22, 2017 1:31:32 PM org.apache.catalina.core.StandardService startInternal 
INFO: Starting service [Catalina] 
Jul 22, 2017 1:31:32 PM org.apache.catalina.core.StandardEngine startInternal 
INFO: Starting Servlet Engine: Apache Tomcat/9.0.0.M22 
Jul 22, 2017 1:31:34 PM org.apache.jasper.servlet.TldScanner scanJars 
INFO: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time. 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Parsing configuration file [struts-default.xml] 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Unable to locate configuration files of the name struts-plugin.xml, skipping 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Parsing configuration file [struts-plugin.xml] 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Parsing configuration file [struts.xml] 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.ObjectFactory) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.factory.ActionFactory) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.factory.ResultFactory) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.factory.ConverterFactory) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.factory.InterceptorFactory) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.factory.ValidatorFactory) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.factory.UnknownHandlerFactory) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.FileManagerFactory) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.impl.XWorkConverter) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.impl.CollectionConverter) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.impl.ArrayConverter) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.impl.DateConverter) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.impl.NumberConverter) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.impl.StringConverter) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.ConversionPropertiesProcessor) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.ConversionFileProcessor) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.ConversionAnnotationProcessor) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.TypeConverterCreator) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.TypeConverterHolder) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.TextProvider) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.LocaleProvider) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.ActionProxyFactory) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.ObjectTypeDeterminer) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (org.apache.struts2.dispatcher.mapper.ActionMapper) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (jakarta) for (org.apache.struts2.dispatcher.multipart.MultiPartRequest) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (org.apache.struts2.views.freemarker.FreemarkerManager) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (org.apache.struts2.components.UrlRenderer) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.validator.ActionValidatorManager) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.util.ValueStackFactory) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.util.reflection.ReflectionProvider) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.util.reflection.ReflectionContextFactory) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.util.PatternMatcher) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (org.apache.struts2.dispatcher.StaticContentLoader) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.UnknownHandlerManager) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (org.apache.struts2.views.util.UrlHelper) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.util.TextParser) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (org.apache.struts2.dispatcher.DispatcherErrorHandler) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.security.ExcludedPatternsChecker) 
Jul 22, 2017 1:31:34 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info 
INFO: Choosing bean (struts) for (com.opensymphony.xwork2.security.AcceptedPatternsChecker) 
Jul 22, 2017 1:31:35 PM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["http-nio-8080"] 
Jul 22, 2017 1:31:35 PM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["ajp-nio-8009"] 
Jul 22, 2017 1:31:35 PM org.apache.catalina.startup.Catalina start 
INFO: Server startup in 2639 ms 

web.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> 
    <display-name>Game Of Thrones Quiz</display-name> 

    <filter> 
    <filter-name>struts2</filter-name> 
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> 
    </filter> 

    <filter-mapping> 
    <filter-name>struts2</filter-name> 
    <url-pattern>/*</url-pattern> 
    </filter-mapping> 

    <welcome-file-list> 
    <welcome-file>Home.jsp</welcome-file> 
    </welcome-file-list> 
</web-app> 

struts.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE struts PUBLIC 
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" 
    "http://struts.apache.org/dtds/struts-2.0.dtd"> 

<struts> 
    <package name="Quiz1" extends="struts-default"> 
     <action name="submitQuiz" class="com.gameofthrones.quizResult"> 
      <result name="success">Stark.jsp</result> 
     </action> 
    </package> 
</struts> 

Bibliothèques:

enter image description here

Erreur:

enter image description here

J'ai essayé les solutions données sur des questions similaires, mais sans résultat.

Répondre

1

Vous devez pas pages JSP accès directement, plus ils sont plus stockés dans WEB-INF et ne sont pas accessibles par le navigateur.

La solution consiste à créer un dossier nommé WEB-INF/content et à y placer des fichiers, puis d'utiliser un convention plugin pour créer des mappages d'action et configurer les résultats. Ce nom de dossier est utilisé par convention où Struts recherche des ressources pour les résultats.

Le plugin convention permet pages d'accès sous WEB-INF directement, mais vous pouvez éviter cela en Deny direct access to JSP files in Struts2 with Naming Convention plugin.


Une autre point est que:

Convention plugin creates configuration from all JSPs there. So if you have do-something.jsp under result path you can use /do-something in the browser to return this actionless result.

+0

Mais cette résoudre le problème? Parce que j'ai déjà fait quelques applications web de la même manière et qu'elles fonctionnent sans erreur. Signifie qu'ils sont accessibles dans le navigateur même s'ils sont stockés dans le dossier WEB-INF. – Anurag

+0

oui, il va le résoudre complètement, je ne sais pas ce que vous avez fait avant, mais j'ai aidé beaucoup de gens à résoudre ce problème avant. –

+0

Donc, j'ai fait comme vous l'avez dit. Maintenant, quelques nouvelles erreurs ont surgi. Comme java.lang.reflect.InvocationTargetException java.lang.RuntimeException: java.lang.reflect.InvocationTargetException J'ai essayé de les supprimer mais je n'ai pas pu. – Anurag