0

Spring MVC を使用した Web アプリケーションがあります。

web.xml

<servlet>
    <servlet-name>spring</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>spring</servlet-name>
    <url-pattern>*.do</url-pattern>
    <url-pattern>/companies/*</url-pattern>
</servlet-mapping>

スプリング コントローラの方法:

class RealmInfoController{

    @ResponseBody
    @RequestMapping(value = {"/companies/{companyId}/realms/{realmName}"})
    public RealmInfo realmInfo(@PathVariable long companyId, @PathVariable String realmName)

ハンドラーの一致:

http://localhost:6122/context/companies/15877/realms/firstRealm

サーバーがこの URL を取得すると、Spring サーブレットが呼び出されます。ただし、コントローラーのメソッドと一致することはできません。

しかし、リクエスト マッピングを「/{companyId}/realms/{realmName}」に変更すると、コントローラ メソッドと一致します。しかし、'/company' なしで URL マッピングを定義するのは良くありません。サーブレットで指定された URL パターンを含む一致を探すように、何らかの方法で Spring に指示できますか?

ありがとう。

4

1 に答える 1

1

リクエスト マッピングで「会社」を使用する場合は、ディスパッチャー サーブレットをルートにマップする必要があります。

<url-pattern>/*</url-pattern>
于 2013-02-13T15:42:47.937 に答える