2

これが私のものstruts.xmlです:

<package name="ajax" extends="json-default" >
    <action name="loadcity"  method="loadcity" class="roseindia.action.user.RegisterUser" >
        <result  type="json" />
    </action>
</package>

電話するloadcity.actionと、次のエラーが表示されます

No result defined for action roseindia.action.user.RegisterUser and result input

これが私のアクションメソッドです:

public String loadcity()
{ 
    country=request.getParameter("country");
  
    cityList=  dao.loadcity(country);
    return ActionSupport.SUCCESS;
}
4

3 に答える 3

2

まず第一に、srtuts.xmlファイルはアクション実行の応答でレンダリングする必要がある結果タイプを完全に定義していません。resultタグは、Struts2 MVC フレームワークでビューの役割を果たします。アクションは、ビジネス ロジックの実行を担当します。ビジネス ロジックを実行した後の次のステップは、タグを使用してビューを表示することです。ここでできることは1つ

<package name="ajax" extends="json-default" >
    <action name="loadcity"  method="loadcity" class="roseindia.action.user.RegisterUser" >
        <result name="input" type="json" />
    </action>
</package>
于 2013-02-28T12:49:13.257 に答える
1

INPUTアクションにエラーがある場合、workflowインターセプターによって結果が返されます。これらのエラーは、アクションが実行される前に、スタックからのインターセプターによって発生する可能性があります。たとえば、スタックにvalidationインターセプターがあるために検証が実行されると、検証エラーになる可能性があります。

INPUTアクション構成に結果を追加する必要があります。Ajax リクエストを作成し、JSON レスポンスを期待する場合はINPUT、 type の結果を返す"json"ことができ、エラーとメッセージを追加できます。ステータス コードを調整することもできます。

于 2013-02-27T18:23:39.577 に答える
0

これはあなたが返すものであるため、XMLノードには の値をresult持つ属性が必要です。name"input"

したがって、struts.xml は次のようになります。

<package name="ajax" extends="json-default" >
    <action name="loadcity"  method="loadcity" class="roseindia.action.user.RegisterUser" >
        <result name="input" type="json" />
    </action>
</package>

編集:

別のエラーは次のとおりです。

検証または型変換の例外が発生しているため、「入力」の結果を探します。

検証/型変換の例外を修正します。

ソース: struts 2 json プラグインがエラーをスローし、結果の型が定義されていません

于 2013-02-27T18:16:45.670 に答える