2012-02-17 8 views
1

私は私のIDEとしてEclipseを使用して、休止状態でORMに取り組んでいます。私はビルドシステムとしてMavenを使用しています。 Strutsを学ぶことを機に、私はこんにちは世界を動かそうとしていました。しかし、私は問題が何であるかわからないんだけど、それが私に与え続けて:ここで例外struts2を開始しているstruts2 java.lang.ClassNotFoundException:org.apache.struts2.dispatcher.FilterDispatcher

SEVERE: Exception starting filter struts2 
java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.FilterDispatcher 

は、フォルダ構造がどのようなものであるかである:

Project folder structure

のpom.xml:ペーストビンhere

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" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
    id="WebApp_ID" version="2.5"> 
    <display-name>wah</display-name> 

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

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

    <welcome-file-list> 
     <welcome-file>index.html</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> 
    <constant name="struts.devMode" value="true" /> 

    <package name="default" namespace="/" extends="struts-default"> 
     <action name="Menu"> 
      <result>/menu.jsp</result> 
     </action> 
    </package> 

</struts> 

Menu.jspは、単純なハロー世界のテキストを持っています。

なぜ誰かが私に助けてもらえますか?ClassNotFoundExceptionエラー。どうすれば修正できますか? ディレクトリ構造は、Struts 2プロジェクトのセットアップにはどのようなものがありますか?

EDIT:

ソースコードは、.zipファイルhereでエクスポート。

おかげ

+0

Ctrl-Tを押して、「FilterDispatcher」と入力します。それは結果を示していますか? – m0skit0

+1

あなたのクラスパスにstruts2コアのjarファイルがありますか? –

+0

@ m0skit0はい、そうです。 – brainydexter

答えて

0

これは私のアプリケーションのフォルダ構造とenter image description here

を参照してください細かい作業であり、これはのpom.xmlある

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.tek</groupId> 
    <artifactId>marf</artifactId> 
    <version>0.0</version> 
    <packaging>war</packaging> 

    <name>Struts 2 Blank Webapp</name> 

    <properties> 
     <struts2.version>2.3.1.2</struts2.version> 
    </properties> 

    <dependencies> 

     <dependency> 
      <groupId>org.apache.struts</groupId> 
      <artifactId>struts2-core</artifactId> 
      <version>2.3.1.2</version> 
      <exclusions> 
        <exclusion> 
         <artifactId>tools</artifactId> 
         <groupId>com.sun</groupId> 
        </exclusion> 
       </exclusions> 
     </dependency> 

     <dependency> 
      <groupId>org.apache.struts</groupId> 
      <artifactId>struts2-config-browser-plugin</artifactId> 
      <version>2.3.1.2</version> 
     </dependency> 

     <dependency> 
      <groupId>org.apache.struts</groupId> 
      <artifactId>struts2-junit-plugin</artifactId> 
      <version>2.3.1.2</version> 
      <scope>test</scope> 
     </dependency> 

     <dependency> 
      <groupId>commons-logging</groupId> 
      <artifactId>commons-logging</artifactId> 
      <version>1.1.1</version> 
     </dependency> 

     <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>4.5</version> 
      <scope>test</scope> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-mock</artifactId> 
      <version>2.0.8</version> 
      <scope>test</scope> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-core</artifactId> 
      <version>2.5</version> 
      <scope>test</scope> 
     </dependency> 

     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>servlet-api</artifactId> 
      <version>2.4</version> 
      <scope>provided</scope> 
     </dependency> 

     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>jsp-api</artifactId> 
      <version>2.0</version> 
      <scope>provided</scope> 
     </dependency> 

    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <!-- <groupId>org.mortbay.jetty</groupId> 
       <artifactId>maven-jetty-plugin</artifactId> 
       <version>6.1.21</version> --> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>2.0.2</version> 

       <configuration> 
        <scanIntervalSeconds>10</scanIntervalSeconds> 
        <scanTargets> 
         <scanTarget>src/main/webapp/WEB-INF</scanTarget> 
         <scanTarget>src/main/webapp/WEB-INF/web.xml</scanTarget> 
         <scanTarget>src/main/resources/struts.xml</scanTarget> 
         <scanTarget>src/main/resources/example.xml</scanTarget> 

        </scanTargets> 
        <source>1.6</source> 
        <target>1.6</target> 
        <compilerArgument>-Xlint</compilerArgument> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

、これは、web.xml

<?xml version="1.0" encoding="UTF-8"?> 
<web-app id="struts_blank" version="2.4" 
     xmlns="http://java.sun.com/xml/ns/j2ee" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> 
    <display-name>Struts Blank</display-name> 

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

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

    <welcome-file-list> 
    <welcome-file>index.html</welcome-file> 
    </welcome-file-list> 
</web-app> 

ですソースhere

+0

ああ、フォルダ構造にpom.xmlを追加するのは間違いでしたが、marfというメインアプリの内部にあります。 – subodh

+0

pom.xmlのscanTargetタグは何ですか? – brainydexter

+0

はオプションです。定期的にスキャンするファイルとディレクトリの一覧です。 – subodh