2

Spring と Struts を一緒に使用しても、コンソールにエラー メッセージは表示されませんが、次のメッセージのみが表示されます。

HTTP ステータス 404 - サーブレット アクションは利用できません

ブラウザで。

ログには何の手がかりもありません。

4

1 に答える 1

2

何らかの理由で Struts のアクション サーブレットが起動に失敗すると、上記のようなエラーが発生する可能性があります。

私の場合、Springs spring-struts 統合を使用したスト​​ラット - 必要な Spring jar (特に spring-struts) が Web アプリケーションのクラスパスにありませんでした。

次のMaven依存関係が機能しました:

    <properties>
    <spring.maven.artifact.version>
        3.0.3.RELEASE
    </spring.maven.artifact.version>

    <spring.security.maven.artifact.version>
        3.0.3.RELEASE
    </spring.security.maven.artifact.version>

</properties>
        <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>${spring.maven.artifact.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-asm</artifactId>
        <version>${spring.maven.artifact.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-expression</artifactId>
        <version>${spring.maven.artifact.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>${spring.maven.artifact.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-struts</artifactId>
        <version>${spring.maven.artifact.version}</version>
        <exclusions>
            <exclusion>
              <groupId>struts</groupId>
              <artifactId>struts</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-core</artifactId>
        <version>${spring.security.maven.artifact.version}</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-web</artifactId>
        <version>${spring.maven.artifact.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-config</artifactId>
        <version>${spring.maven.artifact.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-taglibs</artifactId>
        <version>${spring.maven.artifact.version}</version>
    </dependency>
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>com.springsource.org.apache.commons.codec</artifactId>
        <version>1.4.0</version>
    </dependency>

    <!-- Struts 1.3 framework -->
    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts-core</artifactId>
      <version>1.3.10</version>
    </dependency>

    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts-taglib</artifactId>
      <version>1.3.10</version>
    </dependency>

    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts-el</artifactId>
      <version>1.3.10</version>
    </dependency>

    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts-extras</artifactId>
      <version>1.3.10</version>
    </dependency>

    <!-- be sure to include extra struts modules, as needed,
         especially for used struts-plugins -->
    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts-tiles</artifactId>
      <version>1.3.10</version>
    </dependency>

注: spring-security を使用しない場合は、spring-security 関連の依存関係を削除できる可能性が非常に高く、1.2.9 の代わりに最新の struts バージョンを含めるには、spring-struts の除外も必要でした。

于 2010-08-10T06:30:00.517 に答える