5

残りを Struts 2.3.24 と統合するための簡単なコードを作成しました。

Struts XML があります。

<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
                        "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
    <constant name="struts.mapper.class"                      value="rest" />
    <!--  Overwrite Convention -->
    <constant name="struts.convention.action.suffix"          value="Controller"/>
    <constant name="struts.convention.action.mapAllMatches"   value="true"/>
    <constant name="struts.convention.default.parent.package" value="com.pag.rest.service"/>
    <constant name="struts.convention.package.locators"       value="service"/>
</struts> 

そして、私のコントローラークラスは次のとおりです。

package com.pag.rest.service;
public class RequestController {

    // GET 
    public String index() {
        return "SUCCESS";
    }

    // GET 
    public String show() {
        return "SUCCESS";
    }

    // POST
    public String create() {
        return "Create - SUCCESS";
    }

    // PUT 
    public String update() {
        return "SUCCESS";
    }

    // DELETE 
    public String destroy() {
        return "SUCCESS";
    }
}

サービスにアクセスしようとすると、アクションがマップされていないという例外があり、見つからないと表示されます。

コードを機能させるために他に何をする必要があるか教えてください。

4

1 に答える 1

0

親パッケージはrest-default. 次の定数を構成ファイルに追加しますstruts.xml

<constant name="struts.convention.default.parent.package" value="rest-default"/>

削除する

<constant name="struts.convention.package.locators" value="service"/>

そして、パッケージ名を に変更しますcom.pag.rest.actionsactionsフォルダーの下のコントローラーが検索されます。

于 2016-03-15T21:42:06.157 に答える